[python] M2Crypto를 사용하여 전자 서명된 데이터를 검증하는 방법은 어떻게 되나요?
먼저, 공개키와 서명된 데이터를 이용하여 검증을 수행합니다. 다음은 M2Crypto를 사용한 전자 서명 데이터의 검증 예제입니다.
from M2Crypto import EVP, RSA, BIO
# 공개키 및 서명된 데이터
pub_key = open('public_key.pem').read()
signed_data = open('signed_data.dat').read()
# 서명된 데이터의 해시 값을 구합니다
data_hash = # 데이터의 해시 값을 계산하는 코드
# 공개키 및 서명된 데이터를 이용하여 검증 수행
rsa_pubkey = RSA.load_pub_key_bio(BIO.MemoryBuffer(pub_key))
pubkey = EVP.PKey()
pubkey.assign_rsa(rsa_pubkey)
# 데이터 검증
verified = pubkey.verify(data_hash, signed_data, 'sha256')
if verified:
print('서명된 데이터가 유효합니다.')
else:
print('서명된 데이터가 유효하지 않습니다.')
이 예제는 M2Crypto를 사용하여 전자 서명된 데이터를 검증하는 간단한 방법을 보여줍니다. 더 자세한 정보는 M2Crypto의 공식 문서를 참고하시기 바랍니다.
[참고 문헌]
- M2Crypto 공식 문서: https://gitlab.com/m2crypto/m2crypto/-/wikis/Documentation