Python M2CryptoのRSAを使用して、外部サイトから提供された公開鍵を使用してメッセージをエンコードしようとしています。基本的に、私は次のようなことをしています。
from M2Crypto import RSA
import os
rsa = RSA.load_pub_key(os.path.join(BASE_PATH, 'external_site.pem'))
rsa_result = rsa.public_encrypt(message, 3).encode('base64')
暗号化時にパディングを使用しないと、次のエラーが発生します。
RSAError: data too small for key size
メッセージの長さ(RSA暗号化のモジュラス)に上限がある理由は理解できますが、下限がある理由はわかりません。誰かがこれを説明したり、それを理解するために正しい方向に私を向けたりできますか?