[질문]OpenSSL API 로 public key 등 얻기..

soyeon0618의 이미지

OpenSSL API (C언어)만으로 (명령어 쓰지않고..)

public key 를 얻고 싶은데 OpenSSL 사이트의 도큐먼트들을 보기 쉽지 않네요 ㅎㅎ;;

X.509 cert 파일, DER 포맷인데 초보라 쉽지 않네요..

EVP_PKEY * pkey;
int buf_len;
BIGNUM* bn;
unsigned char * key;
 
pkey = X509_get_pubkey(x);
 
if(pkey == NULL){
     printf("publicKey is NULL\n");
     exit(0);
}
 
if(pkey->type == EVP_PKEY_RSA){
     RSA *x = pkey->pkey.rsa;
     bn = x->n;
}
 
buf_len = BN_num_bytes(bn);
key = (unsigned char*) malloc(buf_len);
BN_bn2bin(bn,key);
 
BIO_printf(bio_in,"%s publickey \n",key);

어디선가 가져온 코드인데 출력해보면
본래 나와야 하는 값이랑 다르게 나옵니다..

이게 맞는지도 모르겠구요 ^^;;

해보신 분 많은 조언 바랄게요^^

감사합니다!