[python] M2Crypto를 사용하여 RSA 공개키로 서명된 데이터를 검증하는 방법은 어떻게 되나요?
먼저, 공개키와 서명된 데이터를 로드하고 데이터를 검증하는 단계로 구성됩니다.
from M2Crypto import EVP, RSA
# 공개키와 서명된 데이터 로드
pub_key = RSA.load_pub_key('public.pem')
signed_data = open('signed_data.txt').read()
# 데이터 검증
pub_key.reset_context(md='sha1')
pub_key.verify_init()
pub_key.verify_update(signed_data)
result = pub_key.verify_final(signed_data)
if result == 1:
print('서명된 데이터가 유효합니다.')
else:
print('서명된 데이터가 유효하지 않습니다.')
위의 코드는 M2Crypto 라이브러리를 사용하여 RSA 공개키로 서명된 데이터를 검증하는 방법을 보여줍니다. 공개키와 서명된 데이터를 로드하고, verify_init
, verify_update
, verify_final
메서드를 사용하여 데이터를 검증합니다.
참고 문헌:
- M2Crypto 공식 문서: https://gitlab.com/m2crypto/m2crypto/-/wikis/M2Crypto_EVP
- M2Crypto GitHub 저장소: https://github.com/m2crypto/m2crypto