Ethernet MAC address as activation code for an appliance?让我们假设您在现场部署了网络连接的设备(小型PC)。您希望允许这些设备在开机后回电,然后由最终用户识别并激活。 我们当前的计划涉及用户在我们网站的激活页面中输入MAC地址。稍后,我们的软件(在包装盒上运行)将从接口读取地址,并将其以"回拨电话"数据包的形式发送。如果匹配,则服务器将响应客户信息并激活该框。 我们喜欢这种方法,因为它易于访问,并且通常印在外部标签上(FCC要求?)。 有什么需要注意的问题吗? (使用的硬件尺寸很小,因此所有NIC等都是嵌入式的,很难更改。客户通常不会以任何方式直接访问OS)。 我知道Microsoft使用PCI设备ID,内存大小等为Windows激活做了一些疯狂的模糊散列功能。但这似乎对我们的需求来说是过大了。 - @Neall基本上,致电我们的服务器,就此讨论而言,您可以叫我们制造商。 Neall是正确的,我们只是将地址用作常量。我们将读取它并在另一个数据包(例如HTTP POST)中传输它,而不依赖于以某种方式从以太网帧中获取它。 在这种情况下,我不认为MAC地址的众所周知的欺骗性成为问题。我认为调整只是想将它们用于初始识别。该设备可以读取自己的MAC地址,并且安装程序可以(只要它印在标签上)可以读取相同的编号,并且知道:"好-这是我放在位置A的盒子。" 调整-这些框是在调用制造商的服务器,还是在使用它们的公司/人员的服务器中调用(或者在这种情况下是相同的东西)? 我认为您在这里所做的事情没有任何魔力-无法将您所做的描述为: "在生产中,我们在每个设备中刻录了一个唯一的数字,该数字既可以由最终用户读取(在标签上),也可以由内部处理器访问。我们的用户必须将该数字及其用户输入到我们的网站中信用卡详细信息,随后该框将与该网站联系,以允许其操作" "巧合的是,我们也将此数字用作网络数据包的MAC地址,因为无论如何我们都必须在生产过程中对其进行唯一分配,因此它节省了我们重复这一工作的时间" 我想说两个明显的危害是: 人们随身携带您的设备,并将此地址更改为其他人已经激活的地址。这种情况是否可能发生,取决于他们窃取的东西有多辛苦和有多昂贵之间的某种关系。您可能想考虑他们获取固件升级文件并从中获取代码的难易程度。 有人使用防火墙/路由器规则和一些自定义软件的组合来生成服务器,该服务器复制"身份验证服务器"的操作并向设备授予继续操作的权限。作为协议的一部分,您可以通过将散列/ PKE进行某种组合来使此操作更加困难。 与以往一样,一些乏味,昂贵的一次性黑客攻击基本上是无关紧要的,您不希望发生类中断,该类中断可以通过Internet分发给所有窃贼。 MAC地址与手册/贴纸上印刷的序列号一样唯一。 Microsoft进行哈希处理以防止MAC地址欺骗,并允许更多的隐私。 使用唯一的MAC方法,您只需位于同一子网中即可轻松将设备与客户匹配。哈希通过不透明地使用所使用的标准并且无法对单个零件进行反向工程来防止这种情况。 (请参阅密码哈希) 从安全的angular来看,我知道可以欺骗MAC,尽管我不能完全确定它有多困难或需要什么。 否则,如果客户不能轻松访问硬件或操作系统,则这样做应该是相当安全的……可能最好贴上警告标语,说弄乱任何东西都会破坏与服务器的通信。 |