목차

TLS/SSL

암호화 종류

대칭키

공개키

해시

공개키 인증서 형식

https://www.tutorialsteacher.com/https/ssl-certificate-format

인증서 포멧 변경

openssl x509 -in cert.crt -outform der -out cert.der

인증서 생성

CA 인증서 생성

# key 생성
openssl genrsa -out ca.key 4096
# 인증서 생성
openssl req -x509 -new -nodes -sha512 -days 3650 \
 -key ca.key \
 -out ca.crt

서버 인증서 생성

# key 생성
openssl genrsa -out ia.key 4096

# CSR(인증요청서) 생성
openssl req -sha512 -new \
    -key ia.key \
    -out ia.csr

CSR(인증요청서) 서명

# 인증요청서 서명
cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names

[alt_names]
DNS.1=yourdomain.com
DNS.2=yourdomain
DNS.3=hostname
EOF

openssl x509 -req -sha512 -days 3650 \
    -extfile v3.ext \
    -CA ca.crt -CAkey ca.key -CAcreateserial \
    -in ia.csr \
    -out ia.crt

디피-헬만 파라미터(dhparam) 키 는 무엇인가?

디피-헬만 파라미터(이하 dhparam)는 SSL 통신시 암호화를 도와주는 방식중 하나로 dhparam 키를 이용해 암호화 복잡도를 높여 보안을 강화하는것이 목적으로 각종 WAS의 SSL 통신에서 dhparam을 지원합니다.
SSL 등급을 매기는 테스트 사이트에서 A등급 이상을 받으려면 이 설정은 필수로 해야합니다.

OpenSSL에서 dhparam 키를 생성하는 명령어는 다음과 같습니다.

openssl dhparam -out dhparam.pem <KEY-SIZE>
# KEY-SIZE 는 2048 또는 4096

보통 dhparam 키를 생성하는데 시간이 매우 오래 걸리기 때문에 누군가 만들어놓은 키값을 그대로 가져다 써도 무방하다. 다만 그 누군가는 믿을만한 사람이어겠다.

모질라https://ssl-config.mozilla.org/에서 공개적으로 제공하는 dhparam 파일이 있다.

참조링크