2022-07-13
SSL
SSL( Secure Sockets Layer ) 프로토콜로 Nescape에 의해서 SSL이 발명되었고, 지금은 TLS라는 이름으로 바뀌었다. 그러나 TLS보다 SSL이라는 이름이 훨씬 더 많이 사용되고 있다.
SSL DIgital Certification
SSL 인증서는 Client와 Server간의 통신을 제3자가 보증해주는 전자화된 문서이다. Client가 Server에 접속한 직후에 서버는 클라이언트에게 이 인증서를 전달한다. Client는 Server로 부터 전달받은 인증서가 신뢰할 수 있는 인증서인지를 검증한다.
SSL Digital Certification을 통해서
1. Client와 Server간의 통신내용을 공격자가 엿듣는 것을 방지할 수 있다.
2. Client가 접속하고자 하는 Server가 신뢰할 수 있는 Server인지 판단할 수 있다.
3. 공격자의 악의적인 통신내용 변경을 방지할 수 있다.
SSL Certification Structure
아래는 Node.js 공식 홈페이지의 인증서를 X509 module을 사용해서 정보를 추출한 것이다.
X509Certificate {
subject: 'CN=*.nodejs.org',
subjectAltName: 'DNS:*.nodejs.org, DNS:nodejs.org',
issuer: 'C=GB\n' +
'ST=Greater Manchester\n' +
'L=Salford\n' +
'O=Sectigo Limited\n' +
'CN=Sectigo RSA Domain Validation Secure Server CA',
infoAccess: 'CA Issuers - URI:http://crt.sectigo.com/SectigoRSADomainValidationSecureServerCA.crt\n' +
'OCSP - URI:http://ocsp.sectigo.com\n',
validFrom: 'Jan 11 00:00:00 2022 GMT',
validTo: 'Feb 11 23:59:59 2023 GMT',
fingerprint: '3E:CB:75:F0:77:06:6A:8C:A0:4A:9F:01:6E:EC:1B:0F:98:95:8F:63',
fingerprint256: '9D:33:45:9A:91:1A:B5:2F:D5:11:01:5F:5E:29:4B:D6:1D:C2:37:5B:4F:46:20:7C:E8:62:D0:30:50:D6:73:5E',
fingerprint512: '7C:D0:4C:83:B8:D9:B1:7B:1B:74:83:13:D3:F1:98:92:07:EE:7B:79:E8:94:71:83:4D:7D:A3:F8:8C:E1:B4:30:47:47:84:27:AF:4F:9B:4C:41:CA:7A:8F:2B:25:BF:FB:82:94:69:88:CF:90:75:31:BF:CC:92:40:30:B4:79:E1',
keyUsage: [ '1.3.6.1.5.5.7.3.1', '1.3.6.1.5.5.7.3.2' ],
serialNumber: '5F6C6A819EFF2783C1DC54DD3502E901'
}
- subject : 소유자
- CN ( CommonName ) : 이름
- subjectAltName(SAN)
- DNS
- IP
- issuer : 발행자
- ST : StateOrProvinceName
- L : Locality
- OU : OrganizationUnit : 부서
- O : Organization : 회사, 조직
- C : Country : 나라
- CN : Common Name : 이름
- validFrom : 인증서 발행일
- validTo : 인증서 만료일
- fingerprint == signature
2022-07-27
2022-07-28일 Demo 시연과 내용 발표를 준비하다가 블로그에 SSL 인증서 내용을 작성했던게 생각나서 PPT자료에 넣은 것을 추가하게 되었따.
728x90
'우당탕탕 인턴' 카테고리의 다른 글
[ 우당탕탕 인턴 ] NaN 이란 무엇인가? (0) | 2022.10.18 |
---|---|
[ 우당탕탕 인턴 ] Node.js로 exe 실행파일 만들기 ( feat. pkg ) (0) | 2022.08.19 |
[ 우당탕탕 인턴 ] Node.js FileUpload, File받아오기 (0) | 2022.07.13 |
[ 우당탕탕 인턴 ] PKI (0) | 2022.07.13 |