오래 못 할 짓 하지 않기
[ 간단한 암호학 ] 4. 양방향 암호화 - 비대칭키(공개키 방식) 본문
비대칭키 사용 이유는 두 가지다.
- 기밀성
- 전자 서명
기밀성
비대칭키 방식에서는
공개키를 사용하여 암호화를 하고
비공개키를 사용하여 복호화를 한다.
그 반대도 가능하다.
하지만 암호화 / 복호화 하는 키가 달라야 하고
둘 중에 하나는 절대 공개되어서는 안 된다.
우선 대칭키 방식으로 예시를 보자.
B가 A에게 정보를 전달한다고 한다.
B는 평문을 B key를 사용하여 암호화 했다.
▶ A가 이 암호문을 복호화 하려면 B key도 있어야 해서 모두 넘겨줬다.
▶ 이렇게 했을 때, A도 가져갈 수 있지만
나쁜 의도로 접근하는 Cracker도 Key와 암호문에 접근할 수 있다.
이런 일을 겪고난 A와 B는 비대칭키 방식을 사용한다.
우선 Public key = 암호화에 사용
Private key = 복호화에 사용한다고 생각하자
A → B 로 정보를 전달한다.
A는 Public key를 공개하고, 이를 통해 암호화한다는 걸 알린다.
▶ 이를 B와 Cracker도 가져간다.
▶ B가 이 key를 통해 자신의 정보를 암호화하고, 그 암호문을 던진다.(=보낸다. = 공개한다 )
▶ A가 이 암호문을 가져가고, 자신이 가지고 있는 Private key로 복호화한다.
+ 이 와중에 B의 암호문을 Cracker가 가져가도 복호화 할 수 있는 Private key가 없기 때문에 정보를 알 수 없다.
RSA를 사용해서 이해해보자
secret이라는 단어를 Public key로 encrypte하면 아래와 같은 암호문이 나온다.
저 암호문을 Private Key와 넣으면 복호화 할 수 있다. ( 원래는 방장만 Private Key를 가지고 있다. )
= Private Key로 원래 정보를 볼 수 있다.
전자 서명
전자 서명의 원리를 보자.
이번에는 Signature를 Private key로 만들고
이를 복호화할 때 Public key로 만든다.
▶ 우리가 적은 내용 + private key로 만들어진 암호문 (자신인 걸 알 수 있게 하는 내용을 암호화한다.)
▶ Public key와 내용+암호문을 올린다. ( Public key는 처음부터 서로 공유된 것이다. )
▶ Public key를 가지고 A가 암호화한 걸 확인한다. ( 여기에선 Content 내용을 암호화 한 거임 )
▶ Public key로 복호화한 내용과 그 앞에 붙어있는 내용(평문)이 같은지 판단
▶ 같다면 인증 성공
이 때 Cracker가 자신의 평문에 Cracker private key를 이용하여 암호화된 내용을 덧붙인다.
▶ 이 내용을 public key와 같이 올린다.
▶ B가 가져가서 Cracker public key가 아니라 A public key로 복호화한다.
▶ 내용과 복호화된 암호문의 내용이 당연히 같지 않을 것이기 때문에
( Cracker 암호문을 복호화하기위한 Key가 아니기 때문)
인증 실패
(출처)
유튜브 - 생활코딩
'3학년 2학기 > 암호학(Cryptography)' 카테고리의 다른 글
[ 간단한 암호학 ] 3. 양방향 암호화 대칭키 (0) | 2024.06.30 |
---|---|
[ 간단한 암호학 ] 2. 단방향 암호화 방법 (0) | 2024.06.30 |
[ 간단한 암호학 ] 1. 암호학이란? (0) | 2024.06.30 |