我有一个包含2048位BigInteger编号的密钥。 我想把它分成固定数量为64位的字,然后计算所有这些字的异或; 有没有人可以帮我实现这个java? 这是我必须实施的方法:
public static BigInteger parityWordChecksum(BigInteger key) {
//result is a 64 bit integer
return result;
}
答案 0 :(得分:1)
LongBuffer buffer = ByteBuffer.wrap(myBigInteger.toByteArray()).asLongBuffer();
long xor = 0;
while (buffer.hasRemaining()) {
xor ^= buffer.get();
}
return BigInteger.valueOf(xor);