본문 바로가기
AI & Data/Blockchain

[Blockchain] Public Key and Private Key: Trapdoor functions, Asymmetric encryption

by Henry Cho 2022. 1. 28.
728x90

Public Key and Private Key


포스트 난이도: HOO_middle

 

[Notice] 포스트 난이도에 대한 설명

안녕하세요, HOOAI의 Henry입니다. Bro들의 질문에 대한 내용을 우선적으로 포스팅이 되다 보니 각각의 포스트에 대한 난이도가 달라서 난이도에 대한 부분을 작성하면 좋겠다는 의견을 들었습니다

whoishoo.tistory.com


 

# Public key

Public key는 Public key cryptography(PKC)라고 불리며 한국에서는 이를 공개키라고 한다.

Public key는 공개적으로 누구나 공유할 수 있는 key이며, 이를 공개하여 공유할 수 있는 이유는 Public key가 가진 특징에서 비롯된다.

Public key의 가장 큰 특징은 Trapdoor functions들을 활용하고 있기에 공개적으로 사용이 되더라도 보완에 문제가 없다.

Trapdoor functions을 통해 one way 방식의 특징을 가지고 있기에 reverse crack을 통해서 해당 Public key에 대한 정보를 습득하기가 현실적으로 쉽지는 않다.

또한 Public key의 특징으로 많이 알려져 있듯이 Asymmetric encryption, 즉 비대칭 암호화를 통해 무결성과 보완에 있어서 우수하다.

Asymmetric encryption이라고 하면 쉽게 말해서 Private key가 존재하기 때문에  Public key를 공유함에도 정보에 대한 보완 문제가 없다는 것을 의미하며 이것을 바로 Asymmetric encryption, 한국말로 하면 비대칭 암호화라고 한다.

 


 

# Private key

Asymmetric encryption 방식을 사용하면 Private key를 받게 되는데 이때 Private key를 절대로 공유해서는 안된다는 유의사항을 듣곤 한다.

Private key가 공유되면 암호화된 데이터 또는 정보가 타인에 의해 공개될 수 있기 때문이다.

Private key가 필요한 시점은 크게 데이터 또는 정보를 보내는 시작점과 데이터 또는 정보를 받는 끝나는 지점이 된다.

예를 들어 타인이 특정인의 Private key를 가지고 있다면 들어오는 데이터 또는 정보를 습득할 수도 있지만 특정 데이터나 정보를 보낼 수도 있는 것이다.

아래의 그림 예제를 보면 Asymmetric encryption에 대한 특징을 이해하기 쉽다.

 

<Fig.01>

 

위의 그림에 나와 있는 것처럼 데이터가 전달되는 과정에 Hasing을 통해 Encrypted, 즉 암호화가 된다.

암호화된 데이터는 타인이 해당 데이터에 대한 원본 확인이 불가하기 때문에 인터넷 또는 네트워크 상에서 데이터 자체의 보완과 무결성을 유지해준다.

데이터를 받는 사람에게 있는 특정 Private key를 통해 데이터에 대한 Decrypted가 이루어지며, 최종적으로 데이터 송신자가 보낸 원본 데이터를 확인할 수 있다.

 


 

728x90

댓글