如何在 bitlocker 密钥中构建校验位?我只是无法从以下来源解决: https : //blogs.msdn.microsoft.com/si_team/2006/08/10/bitlocker-recovery-password-details/ http://jessekornblum.com/publications /di09.pdf 章节。5.4
我应该生成随机的 5 位数字并添加一个额外的计算数字吗?但是如何使它仍然可以被 11 整除?
这是我现在建立我的小组的方式:
byte[] randomBytes = new byte[128];
rnd.nextBytes(randomBytes);
BitSet bitSet= BitSet.valueOf(randomBytes);
String key="";
String group="";
for (int i = 0; i < 8; i++) {
BitSet groupBitSet = bitSet.get(i*16,16*(i+1)-1);
group=String.format("%06d",groupBitSet.toLongArray()[0]*11);
key=key+group;
if (i<7) { key=key+'-';}
}
return key;
当然,每组的最后一位数字不符合规格....
你能解释一下实现这一目标的权利吗?
谢谢