我在开发一个本地软件授权模块,需要生成和校验机器码。目前我计划采用对称加密+Hash的方式,但担心碰撞和伪造问题。 为了测试验证算法的可靠性,我生成了以下一批模拟机器码(仅用于算法测试,不涉及任何实际产品)。这些码长度不一,前缀有F91B32C、F90B32C等,末尾还带有ANTa等标识。 我想请教几个技术问题: 1. 对于这种变长码,如何高效提取有效信息? 2. 校验位放在哪个位置更安全? 3. 有没有推荐的轻量级防篡改算法?(如HMAC-SHA256是否够用) 以下是用于测试的样本数据(共35条),均为随机生成,无实际意义:
ANTaV1.0ANTaJ3
ANTcV1.0ANTcJ3
ANTbV1.0ANTbJ3
ANTdV1.0ANTdJ3
F91B32C406527180
F91B32C727418076
F90B32C9953608929
F90B32C7494819239
F90B32C9180486345
F90B32C2300528165
F90B32C7116675918
F90B32C4998404472
F90B32C8172287412
F90B32C14824394146
F90B32C6975957672
F90B32C3403361463
F90B32C7702977396
F90B32C3533678486
F90B32C14761006843
F90B32C13908494819
F90B32C9902574866
F90B32C12740768840
F90B32C13382156198
F90B32C12364484781
F90B32C12734057467
F90B32C7078392004
F90B32C3156447380
F90B32C6041301716
F90B32C7741169980
F90B32C4655799976
F90B32C7517525454
F90B32C4739056782
F90B32C7478240912
F90B32C851075304
F90B32C10581231215
F90B32C11851406887