
openssl_csr_new 함수는 OpenSSL 라이브러리를 사용하여 CSR(Certificate Signing Request)을 생성하는 함수입니다. 이 함수의 옵션 중에서 "private_key" 옵션을 사용하여 CSR에 개인 키를 포함시키는 방법은 다음과 같습니다.
#hostingforum.kr
c
X509_REQ *openssl_csr_new(EVP_PKEY *pkey, X509_NAME *subject, unsigned long flags, void (*cb)(void *, int, int, void *), void *cb_arg);
위 함수에서 "private_key" 옵션은 EVP_PKEY 구조체를 사용하여 개인 키를 포함시키는 옵션입니다. EVP_PKEY 구조체는 OpenSSL 라이브러리를 사용하여 개인 키를 생성하고 관리하는 함수입니다.
CSR 생성 시 "private_key" 옵션을 사용하여 개인 키를 포함시키는 것은 안전한가요? 일반적으로 CSR에 개인 키를 포함시키는 것은 안전하지 않습니다. 개인 키는 민감한 정보이기 때문에 CSR에 포함시키는 것은 보안에 위협을 줄 수 있습니다. 대신 CSR에 개인 키를 포함시키지 않고, CSR을 CA에 제출한 후 CA가 CSR을 검증하고 인증서를 발급하는 방식을 사용하는 것이 보안에 더 안전합니다.
openssl_csr_new 함수의 옵션을 사용하여 CSR을 생성하는 방법에 대해 자세히 알려드리겠습니다.
#hostingforum.kr
c
// 개인 키 생성
EVP_PKEY *pkey = EVP_PKEY_new();
EVP_PKEY_assign_RSA(pkey, RSA_new());
// CSR 생성
X509_NAME *subject = X509_NAME_new();
X509_REQ *req = openssl_csr_new(pkey, subject, 0, NULL, NULL);
// CSR에 개인 키 포함시키기
X509_REQ_set_pubkey(req, pkey);
// CSR에 정보 추가하기
X509_NAME_add_entry_by_txt(subject, "CN", MBSTRING_ASC, (const unsigned char *)"example.com", -1, -1, 0);
// CSR 생성 완료
위 코드는 openssl_csr_new 함수를 사용하여 CSR을 생성하는 방법을 보여줍니다. CSR에 개인 키를 포함시키기 위해 EVP_PKEY 구조체를 사용하여 개인 키를 생성하고 CSR에 포함시키는 방법을 보여줍니다. CSR에 정보를 추가하기 위해 X509_NAME 구조체를 사용하여 정보를 추가하는 방법을 보여줍니다.
2025-03-29 13:31