Проблемы с производительностью BitVector
Мне нужно использовать биты для операций в криптографической схеме, однако, когда я преобразую переменные и функции в BitVector(bitstring/int/texttrings=""), результатом является очень длинный битовый вектор, иногда имеющий длину в тысячи. Теперь, это замедляет мое шифрование и операции на этих BitVectors много. Как я могу преодолеть это?:(
Пример того, как я использую BitVector:
msg = BitVector.BitVector(textstring=message) ^ h1
msgxored = msg ^ h1
Edit1: например, self.bc.encrypt(msgxored, key)
всего ~300 бит, но encr1 = BitVector.BitVector(textstring = self.bc.encrypt(msgxored, key))
~3000 бит!
2 ответа
Это бесстыдная самореклама, но я сделал https://pypi.python.org/pypi/BytesOp именно для этого.
Вы можете использовать это так
from BytesOp import op_xor
msg=b"asdf"
h1=b"1234"
msgxored=op_xor(msg,h1)
print(msgxored,op_xor(msgxored,h1))
Ваш вопрос не имеет много информации. Тем не менее, в документации сказано, что вы можете установить размер вашего BitVector.
bv = BitVector( intVal = 0, size = 8 )
Надеюсь, это поможет!