1

我正在开发一个激活应用程序,我需要收集 BIOS 序列号来识别 PC,应用程序将 BIOS 序列号与其他数据结合起来,将被加密,我需要我的数据不超过加密的块大小防止构建另一个块,这意味着更长的激活字符串。我需要确保BIOS序列号的长度不会超过某个值,如果小于,我可以添加一些数据,但如果超过了我不能修剪它,因为我需要确保没有激活密钥适用于两台电脑。

我的问题很简单:BIOS 序列号的最大长度是多少?以及如何获得这些标准?

PS 做修剪给我们带来了很大的问题,因为有些序列比请求的值太长,所以存在一个运行多台 PC 的密钥。

问候,

4

2 回答 2

3

使用这样的 BIOS 信息总是至关重要的,因为有很多实现。即使你找到了一个标准,也不能保证每个供应商都能正确实施。我会对数据执行哈希函数(SHA256、MD5 等)。因此,您将始终具有与输入长度无关的相同输出长度。当然,输出的熵永远不会大于输入的熵。但这不是重点。

于 2012-11-05T14:09:31.300 回答
2

所有这些标准都在SMBIOS tablesAFAIK 中定义,BIOS 序列号没有最大或固定长度,这只是一个以空字符结尾的字符串。

在此处输入图像描述

于 2012-11-05T16:35:56.357 回答