[openssl] OpenSSL API를 이용한 보안 프로그래밍[openssl] OpenSSL API를 이용한 보안 프로그래밍
Posted at 2012. 9. 16. 13:42 | Posted in 개발이야기OpenSSL API를 이용한 보안 프로그래밍, Part 1: API의 개요
http://www.ibm.com/developerworks/kr/library/l-openssl.html
OpenSSL API를 이용한 보안 프로그래밍, Part 2: 안전한 핸드쉐이크(handshake)
http://www.ibm.com/developerworks/kr/library/l-openssl2.html
OpenSSL API를 이용한 보안 프로그래밍, Part 3: 보안 서비스 제공하기
http://www.ibm.com/developerworks/kr/library/l-openssl3.html
[openssl] command line sample[openssl] command line sample
Posted at 2012. 9. 16. 13:41 | Posted in 개발이야기DES encript/descript
$ openssl enc -e -des -in aaa.c -out bbb.pem
$ openssl enc -d -des -in bbb.pem -out 111.c
$ diff aaa.c 111.c
Base64 encript/descript
$ openssl enc -e -base64 -in aaa.c -out bbb.b64
$ openssl enc -d -base64 -in bbb.b64 -out 111.c
$ diff aaa.c 111.c
DES+Base64 encript/descrip
$ openssl enc -e -des -base64 -in aaa.c -out bbb.pem
$ openssl enc -d -base64 -des -in bbb.pem -out 111.c
$ diff aaa.c 111.c
ssl 인증서 만들기ssl 인증서 만들기
Posted at 2012. 9. 9. 12:58 | Posted in ServerGenerate a private key
key 파일 생성
$ openssl genrsa [-des3] -out test.key 1024
Generate Root CA Certificate
루트 인증기관(Root CA) 인증서 생성
$ openssl req -new -x509 -keyout cakey.pem -out cacert.pem -days 3650
Generate Self Signed Certificate
자체 서명 인증서 생성
$ openssl req -new -x509 -keyout cacert.pem -out cacert.pem -days 3650
keyout과 out에 같은 파일명을 주면되며, 분리하고 싶은 경우는
RSA PRIVATE KEY부분과 CERTIFICATE부분을 다른 파일로 분리하면 된다.
Generate Certificate signing request
인증 요청서(Certificate Signing Request) 생성
$ openssl req -new -key test.key -x509 -out test.csr
Sign certificate with private key
키로 인증서에 서명하기
$ openssl x509 -req -days 3650 -in test.csr -signkey test.key -out test.crt
[Optional] key에서 Password phase 삭제
Remove Password Requirement
$ cp test.key test.key.secure
$ openssl rsa -in test.key.secure -out test.key
Generate dhparam file(Diffie-Hellman)
$ openssl dhparam -out dh512.pem 512
※ if an error, "digest too big for rsa key", occures, simply use 1024 bits. (happens on openssl-1.0.x later)