openssl RSA PrivateKey 비밀번호(pass phrase) 변경
안녕하세요.
개인키에 비밀번호(pass phrase)를 설정하고 암호화를 해서 다른사람이 로드를 못하게
또한 그비밀번호를 변경할수 있는가에 관해서 고민하고 있습니다.
현재는 키를 발급할때 비번을 설정하고 로드할때 비번이 맞다면 로드가 되는단계까지 왔습니다.
질문을 올렸다가 발견한 해결책은 제가 따로 올렸구요~
오늘도 질문을 남깁니다.타이트한 일정과 상사의 압박으로 주말도 반납해야하기에~
도움을 청합니다.
a.c
PEM_write_PrivateKey(fp, privKey, EVP_des_ede3_cbc(),NULL,0, NULL, "hello");
//비번설정
b.c
EVP_PKEY *privKey = NULL;
FILE *fp = NULL;
ERR_load_crypto_strings();
OpenSSL_add_all_algorithms();
fp = fopen("keyfile.pem", "rb");
if (!fp){
printf("file open error\n");
return 1;
}
privKey = PEM_read_PrivateKey(fp, NULL, 0, "hello");
//비번을 넣어서 키로드
제가 생각하기엔
int PEM_write_PrivateKey(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc,
unsigned char *kstr, int klen,
pem_password_cb *cb, void *u);
이함수로 다시 비번을 변경할줄 알았는데
privKey 로 로드하고 바로 밑에
PEM_write_PrivateKey(fp, privKey, EVP_des_ede3_cbc(),NULL,0, NULL, "hihi");
로 해줬는데 오류가 떨어지더라구요
비번을 변경하는 다른함수가 있는것인지 아니면 제가 사용을 잘못하고 있는것인지
아시는분은 답변을 좀 주세요 ㅠㅠ 주말까진 끝내야 하는데 ㅠㅠ
댓글 달기