我正在开发一个激活应用程序,我需要收集BIOS序列号以识别PC,应用程序将BIOS序列号与其他数据结合起来,这些数据将被加密,我需要的数据不要超过加密的块大小防止建立另一个块,这意味着更长的激活字符串。我需要确保BIOS序列号的长度不会超过某个值,如果它更少,我可以添加一些数据,但如果超过我无法修剪它,因为我需要确保没有激活密钥适用于两台电脑。
我的问题很简单:BIOS序列号的最大长度是多少?以及如何获得这些标准?
附:修剪使我们成为一个很大的问题,因为有些连续出版物的长度超过了要求的值,因此存在一个运行多台PC的密钥。
问候,
所有这些标准都在SMBIOS tables
和AFAIK中定义,BIOS序列号没有最大或固定长度,这只是一个空终止字符串。
使用这样的BIOS信息总是至关重要的,因为有许多实现。即使您找到了这方面的标准,也无法保证每个供应商都能正确实施。我会对数据执行哈希函数(SHA256,MD5,无论如何)。因此,您将始终具有与输入长度无关的相同输出长度。因为输出的熵永远不会大于输入的熵。但这不是一个重点。