opennsslコマンドで暗号化したファイルをpythonで復号したい

openssl enc -e aes-256-cbc -base64 -v iv値 -k 暗号鍵 ファイル -md sha256
上記コマンドで暗号化されたcsvファイルを、pythonコードで復号したいです

import base64 from Crypto.Cipher import AES # 暗号化されたファイルを読み込み、Base64デコードする with open('encrypted.csv', 'rb') as f: encrypted_data = base64.b64decode(f.read()) # 暗号鍵とIVをセットアップ key = bytes.fromhex(キー) iv = bytes.fromhex(iv値) # 復号化 cipher = AES.new(key, AES.MODE_CBC, iv) decrypted_data = cipher.decrypt(encrypted_data) # PKCS#7パディングを除去 pad = decrypted_data[-1] decrypted_data = decrypted_data[:-pad] # 復号化されたデータを保存 with open('decrypted.csv', 'wb') as d: d.write(decrypted_data)

このようなコードで復号すると、復号化されたファイルの中身が空になります
気になる点としては

気になる点としては、encrypted_dataの長さが112であること(本来16の倍数であるべき?)、
padの値が116であること(0~16であるべき)
です
openssl enc -dコマンドで正しく復号できることは確認済みです。

なにかお気づきの点があれば教えていただきたいです

コメントを投稿

0 コメント