본문 바로가기
암호화폐

암호의 역사 및 공개키 암호[2편]

by Windy 2021. 4. 28.
반응형

"생각없이 읽다보면 재미있는 금융지식!"

 

 

안녕하세요 저번포스팅에 이어서 오늘은 2편 입니다.

2021.04.26 - [암호화폐] - 암호의 역사 및 공개키 암호[1편]

 

암호의 역사 및 공개키 암호[1편]

"생각없이 읽다보면 재미있는 금융지식" 지난 비트코인 알고리즘 포스팅에서 신원인증에 대해 알아 볼것이라고 했는데요 요번 포스팅에서는 '암호의 역사와 공개키 암호' 에 대해서 알아보고자

zeroroom.tistory.com

 

늘어난 컴퓨팅 파워로

애니그마 같은 단순 암호들은 이제 

시간만 지난다면 충분히 암호를 해독 할 수 있게 되었습니다.

 

 

그래서 새로운 암호체계가 필요하게 되었죠.

그래서 새로운 현대 암호체계가 등장하게 됩니다.

 

 

 

현대암호는 크게

 

1. 대칭키 암호

2. 비대칭키 암호

 

 

로 구분할 수 있는데요!

 

 

대칭키 암호는 암호화와 복호화를 같은 알고리즘을 사용합니다.

 

 

예를 들어, 제가 01시라는 시각을 암호화 해서 비밀리에 보내고 싶다고 하면

+12 시간을 더해서 암호화를 합니다.

 

 

그럼 제가 상대방에게 전달할 때는 13시 라고 보내고 

 

 

전달 받은 상대방은 다시 +12 시간을 통해서

01시 라고 해독하게 됩니다!

 

 

여기서 여러분들도 느끼시겠지만 가장 큰 문제점이 여기서 존재합니다.!

+12 시간이라는 알고리즘을 절대로 무조건 들켜서는 안된다는 것이죠.!

(실제로 이렇게 단순하지는 않습니다.!)

 

그래서 대칭키 암호는 알고리즘의 보안이 가장 중요합니다.!

 

 

대표적으로는 DES, 3-DES, AES 가 있습니다.

(각각의 알고리즘을 파악하는 것은 암호학을 깊게 파셔야하므로

생략하도록 하겠습니다.)

 

 

 

반면! 비대칭키 암호는 

암호화 하는 알고리즘과 복호화 하는 알고리즘이 다릅니다.!

 

 

예를 들어,

 

 

곱셈이라는 알고리즘을 사용한다고 생각해봅시다.!

 

 

저는 2라는 숫자에 2와 4와 2를 곱해서(공개키) 암호화 하였고 

반드시 첫번째는2 두번째는 4 세번째는 2여야 한다고 칩시다. (비밀키)

 

 

여기서 나는 곱셈이라는 연산(공개키)을 했고!  

 이 알고리즘을 써서 32 이라는 숫자를 만들었다고 막 뿌리고 다닙니다.

 

하지만 32라는 숫자는

여러 곱셈을해서 만들어진 숫자중 하나이기 때문에,

4 X 8 인지, 8 X 4 인지, 2 X 16 인지 알수 있는 길이 없습니다.

정확하게 2 X 2 X 4 X 2 인지는 알수 있는 길이 없는거죠.!

 

 

그래서 앞선 대칭키 암호보다는

훨씬 키의 보관측면에서

안전하다고 볼 수 있습니다.

 

 

쉽게 생각하시면

자물쇠는 누구나 잠굴수 있지만

그결 열수 있는 열쇠는 본인만이 들고 있는것이죠.!

 

그래서, 공개키(자물쇠)와 비밀키(열쇠)가 존재하기 때문에 공개키 암호라고 부르기도 합니다.!

 

정확한 예시는 아니지만, 

실제 암호는 훨씬 복잡합니다.!

 

 

대표적으로는 

RSA, ECC 등의 알고리즘이 있습니다.

 

 

RSA알고리즘은 주로 공인인증서에서 사용하고

ECC가 비트코인의 신원 인증에 사용하는 알고리즘인데요.!

 

 

 

타원 쌍곡선 알고리즘을 사용합니다.

1:1 함수가 아닌 특성을 이용해 암호문을 작성하는데요!

 

 

예를들어, 32의경우 곱셈으로 만들수 있는 가짓수가 엄청 많았던 것과 유사한 것입니다.!

(정확한 알고리즘은 

암호학을 깊게 파셔야함으로 생략하겠습니다.)

 

그래도 찾아보시겠다면 타원곡선 암호화 알고리즘(ECC)를 구글에 검색.. .쿨ㄹ럭...

 

 

이번 포스팅에서는, 대칭키암호 비대칭키 암호를 매우 간단하게 알아보았습니다.

여기서 비대칭키 암호중

 

ECC알고리즘은

비트코인 신원인증에 쓰이는 알고리즘으로

가볍게 개념은 알고 가셨으면 좋겠습니다.

 

 

그래서, 요약해보자면

 

1. 대칭키 암호: 빠르나, 키 값(암호화 복호화 알고리즘) 보관에 문제가 있음.

2. 비대칭키 암호: 느리나 키값 보관에 문제가 없음.

 

정도로 요약할 수 있을 것 같아요.

 

다음시간에는, 이중지불 방지 포스팅에서 만나요~

 

반응형

댓글