3

一部の機密データについては、ディスクに AES 暗号化して保存することにしました。PyCryptoを使用して暗号化を実装しました。

さらに、データは重要であり、保存された暗号化されたデータは私の唯一のコピーになります (バックアップは別として)。そのため、PyCrypto が使用できなくなった可能性を考慮して、PyCrypto を使用せずにデータを取得する方法を探しました。私に(どんな理由であれ)。

mcryptがオプションになると思いました。

これは、いくつかの暗号文を作成するための私のテスト ケースです。

import Crypto.Cipher.AES
import sys

pwd  = 'qwertzuiopasdfgh'
mode = Crypto.Cipher.AES.MODE_CBC
aes  = Crypto.Cipher.AES.new( pwd, mode )
text = 'asdfghjklyxcvbnm'
sys.stdout.write( aes.encrypt( text ) )

出力をファイルにリダイレクトし、out.nc復号化を試みました

mcrypt -d -b -k qwertzuiopasdfgh -a rijndael-128 -m CBC out.nc

残念ながら、結果のファイルのoutサイズはゼロバイトです。

これを機能させるための mcrypt のオプションの組み合わせがあることを願っています…</p>

4

2 に答える 2

1

問題は、CBC モードの IV を提供していないという事実にあると思います。IV がないと、mCrypt と PyCrypto は異なるデフォルト IV を使用して異なる方法で処理する可能性があります。いくつかの実装 (たとえば phpseclib) の使用と、デフォルトで 16 ヌル バイトの IV を見てきました。mcrypt はこれを行わない場合があります。

于 2011-12-09T12:55:12.987 に答える
-1

PyCryptoなしで回復できることが重要なのはなぜですか?古いOSと古いリリースのPyCryptoでVMを起動し、データをエクスポートして、別のアルゴリズムと実装で再暗号化するだけです。

于 2010-03-24T23:05:03.013 に答える