
openssl_public_decrypt 함수는 RSA 공개키를 사용하여 암호화된 데이터를 복호화하는 함수입니다.
openssl_public_decrypt 함수의 사용법은 다음과 같습니다.
1. RSA 공개키를 생성합니다.
2. 암호화된 데이터를 openssl_public_decrypt 함수에 전달합니다.
3. 함수는 암호화된 데이터를 복호화하여 원본 데이터를 반환합니다.
openssl_public_decrypt 함수의 인수는 다음과 같습니다.
- key: RSA 공개키
- data: 암호화된 데이터
- data_out: 복호화된 데이터를 저장할 변수
- data_out_len: data_out 변수의 크기
- padding: 패딩 옵션 (OPENSSL_PKCS1_PADDING, OPENSSL_PKCS7_PADDING 등)
예를 들어, RSA 공개키를 생성하고 암호화된 데이터를 복호화하는 코드는 다음과 같습니다.
#hostingforum.kr
c
#include
#include
int main() {
// RSA 공개키 생성
RSA *rsa = RSA_new();
BIGNUM *bne = BN_new();
BN_set_word(bne, 65537);
RSA_generate_key_ex(rsa, 2048, bne, NULL);
// 암호화된 데이터 생성
unsigned char data[] = "Hello, World!";
unsigned char encrypted_data[1024];
int encrypted_data_len = 0;
// 암호화된 데이터를 openssl_public_decrypt 함수에 전달
int decrypted_len = RSA_public_decrypt(1024, encrypted_data, data, rsa, RSA_PKCS1_PADDING);
// 복호화된 데이터를 출력
printf("%sn", data);
// RSA 공개키 삭제
RSA_free(rsa);
BN_free(bne);
return 0;
}
2025-05-17 21:51