대칭 키 암호(Symmetric key encrption)
* 암호화 복호화에 같은 키를 사용
* 피어간 통신을 한다면 보내는쪽 받는 쪽 같은 키를 미리 공유하고 있어야 함 (키 노출에 매우 취약함)
* 대표적인 방식 AES, DES 류 가 있다
비대칭 키 암호(Asymmetric key encryption) 혹은 공개 키 암호 방식( public-key cryptography) 이라고 부르기도 한다.
* Public key, Private Key 두 개의 키를 가짐
* 평문 -> 전문(암호문) 암호화 할 때는 Public key 를 사용 / 전문(암호문) -> 평문 으로 복호화시에 Private Key 를 사용
* 대칭 키와는 다르게 피어간의 키 공유를 미리 하지 않아도 됨 즉 A -> B 에게 전문을 보내고 싶은 니즈가 있다면 B 의 Public key 를 가지고 암호화 해서 B 에게 보내면 됨 이후에 B 가 Private key 를 사용하여 복호화 시킴
* 대표적으로 RSA 가 있고, 어찌보면 Https 의 핵심중 하나라고 볼 수 있음(개인적인 생각)
* 대칭 키 보다 암호/복호화 하는 시간이 오래 걸림
* 암호화 할 수 있는 길이에 제한이 있음
디지털 서명(Digital Signature)
* 비대칭 키 암호화 방식을 활용한다
* A 가 B 에게 서명을 요청하면 B 는 자기가 가진 Private Key 로 서명하고 A 에게 보내면 A 는 B 의 Public Key 를 활용하여 검증(Verify) 한다
* 공인인증서 디지털 서명이 활용 (인증기관에서 발급된 것임을 증명하는 단계에서 활용 됨)
암호화 해시 함수(cryptographic hash function)
* 일반 적인 해시 함수의 일종으로 "해시 값으로부터 원래의 입력값과의 관계를 찾기 어려운 성질을 가지는 경우" 특성을 가지고 있음(해시 값을 생성하는 입력값을 찾는 것이 어려워야 하고, 같은 해시 값을 가지는 두 입력 값을 찾는 데 오랜 시간을 가져야 한다)
* 디지털 서명할 때, 전체 내용이 큰 경우 모두 암호화 하지 않고 암호화 해시 함수를 통해 해싱 처리하여 나온 결과물을 가지고 암호화하기도 함
* 대표적으로 MD5, SHA-1, SHA-2 가 있고 앞의 두개는 사용을 지양하고, SHA-2 가 가장 많이 활용 됨
간단한 HTTPS 작동 방법
CA(Certification Autority) == 인증기관
위에서 특이한 점은 공개키 인증방식을 통해 비밀키를 만들고 이를 활용하여, 대칭 키 암호 방식을 사용하고 있는데, 공개키는 위에서 이야기 했듯이 암호/복호화 과정이 느리기 때문에 비밀키를 만들기 전 까지만 공개키 방식을 활용 이후에는 대칭 키 방식을 활용함
출처
https://www.youtube.com/watch?v=tZqXGjj0-QQ (페북에서 봤는데, 암호학 외에도 재미있는 정보들이 많네요!)
'Daily & Thinking' 카테고리의 다른 글
SOPT 앱잼 데모데이에 다녀왔다 (0) | 2023.01.14 |
---|---|
안드로이드 면접 이야기 (0) | 2022.06.06 |
현실 세상의 TDD 를 보면서 개인적인 생각 정리 (0) | 2022.06.05 |
2021 Todolist (0) | 2021.02.20 |
kth(케이티하이텔) 2차 면접 후기 및 결과 (0) | 2019.10.29 |