0

暗号スキームでの操作にはビットを使用する必要がありますが、変数と関数を BitVector(bitstring/int/textstrings="") に変換すると、結果は非常に長いビットベクトルになり、数千単位の長さになります。さて、これにより、これらの 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 ビットです!

4

2 に答える 2

1

This is shameless self-advertising but I made https://pypi.python.org/pypi/BytesOp exactly for this.

You could use it like this

from BytesOp import op_xor
msg=b"asdf"
h1=b"1234"
msgxored=op_xor(msg,h1)
print(msgxored,op_xor(msgxored,h1))
于 2016-08-24T12:56:55.077 に答える
0

あなたの質問には多くの情報がありません。それにもかかわらず、ドキュメントには、BitVector のサイズを設定できると記載されています。

bv = BitVector( intVal = 0, size = 8 )

それが役立つことを願っています!

于 2016-08-24T11:55:44.300 に答える