개인 웹 응용 프로그램은 20 명의 알려진 사용자로부터 암호화 된 전자 메일을 받아야합니다. OpenSSL을 사용하여 Outlook 사용자가 내 앱에 연결된 전자 메일 주소로받은 후 해독 할 수있는 전자 메일을 가져 와서 암호화 할 수있는 유효한 암호화 인증서를 생성하려면 어떻게해야합니까?
이를 위해 @logicalscope의 답변 에서이 다른 게시물에 대한 코드를 사용하기 시작했습니다.이 코드는 다음과 같이 요약됩니다.
$ openssl genrsa -aes128 -out email.key 2048
$ openssl req -new -key email.key -out email.csr -config email.cnf
$ openssl x509 -req -days 365 -in email.csr -CA ca.crt -CAkey ca.key -set_serial 10 -out email.crt
$ openssl pkcs12 -export -in email.crt -inkey email.key -out email.pfx
어디 email.cnf
로 이전 단계의 사전에 생성됩니다 :
[ req ]
default_bits = 2048
distinguished_name = req_distinguished_name
prompt = no
[ req_distinguished_name ]
C = {Country}
ST = {Provice/State}
L = {City}
O = {Org}
OU = {Org Unit}
CN = user@domain.com
emailAddress = user@domain.com
문제는 위의 코드가 어디를 찾아야하는지 모른다는 것입니다 ca.crt
. 따라서이 줄의 openssl x509 -req -days 365 -in email.csr -CA ca.crt -CAkey ca.key -set_serial 10 -out email.crt
결과는 다음과 같습니다.
Signature ok
subject=/C=US/ST=CA/L=MyCity/O=MyOrganization/OU=MyUnit/CN=me@serverdomain.com/emailAddress=me@serverdomain.com
Error opening CA Certificate ca.crt
140570916620192:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('ca.crt','r')
140570916620192:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load certificate
ca.crt
Outlook 사용자가 email.pfx
수신시 앱이 해독 할 수있는 전자 메일을 암호화하는 데 사용할 수있는 방법으로 유효한 것을 생성 하려면 어떻게해야합니까? 인증서를 구매해야합니까? 이것은 현재 개발 서버 전용입니다. 무료로 작동하는 것을 얻는 것이 좋을 것입니다. 예를 들어 Thunderbird 사용자는 내 앱에서 해독 할 수있는 GPG 키로 암호화 된 이메일을 보낼 수 있습니다.
내 devbox에서 Windows 7 및 Outlook 2010을 실행 중입니다.