2017-03-23 3 views
0
내 회사에 대한 사양을하고 있어요

와 나는 심각한 문제에 직면하고있다 : One of our supported embedded system does not have any file system.열기 X509 인증서

예, fopen가 발생하거나 모든 I/O 시스템 재부팅.

저는 서버 측에서만 작업하고 있습니다. 인증서 자체 생성.

OpenSSL에서 인증서를로드하려면 어떻게해야합니까? 인터넷에서 여러 가지 예를 보았습니다. 사람들은 파일을 생성 한 다음 파일에 쓰지 만 그렇게 할 수는 없습니다. 그게 필수인가요?

고맙습니다.

+1

[OpenSSL을 사용하는 파일 대신 메모리에서 인증서 파일 읽기] (http://stackoverflow.com/q/3810058/608639). – jww

답변

3

아니요, 필수는 아닙니다. OpenSSL은 X509 개체를 사용하여 인증서를 저장합니다. d2i_X509() 함수를 사용하여 일부 메모리 바이너리 "const"데이터에서 원시 (DER 형식) 인증서를로드 할 수 있습니다. 당신이 들어 mem BIO에서 인증서를로드 할 수 PEM_read_bio_X509()를 사용 할 수있는 ASCII 인쇄 가능한 PEM 형식으로 데이터를 저장하는 않으려면

https://www.openssl.org/docs/man1.1.0/crypto/d2i_X509.html

또는 (참조 BIO_new_mem_buf()) - 이는 다시 수 https://www.openssl.org/docs/man1.1.0/crypto/PEM_read_bio_X509.html https://www.openssl.org/docs/man1.1.0/crypto/BIO_new_mem_buf.html

당신은 당신이 인증서를 사용하고 싶은 말을하지 않습니다 -하지만 SSL 인 경우/TLS는 단지와 SSL_CTX_use_certificate()를 호출 : 일부 메모리 "CONST"데이터에서 인증서를 소스 위에서 만든 X509 개체

+0

감사합니다. 나는이 스레드를 따라 갔다 : http://stackoverflow.com/questions/256405/programmatically-create-x509-certificate-using-openssl 그리고 X509와 함께 SSL_CTX_use_certificate() 함수를 사용하자. 다시 한번 감사하라 !! – Render