BitVector 中的模数是什么?我没有在网上找到任何东西来解释它的作用。我尝试将其设置为更大的数字,这样它就不会影响我在 GF $2^256$ 中的计算
class AXU():
def __init__(self, sec_param):
self.sec_param = sec_param
def getHash(self, t):
modulus = BitVector.BitVector(bitstring='100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000') #choose something larger than 2^256
a, b = random.randrange(self.sec_param) , random.randrange(self.sec_param)
a_vector, b_vector = BitVector.BitVector(intVal=a), BitVector.BitVector(intVal=b)
t_vector = BitVector.BitVector(textstring=t)
return a_vector.gf_multiply_modular(t_vector, modulus, self.sec_param) ^ b_vector
在文档中,模数是
modulus = BitVector.BitVector( bitstring='100011011') # AES modulus, from the documentation on BitVector
其中十进制的位串是 286。