Notice
Recent Posts
Recent Comments
Link
관리 메뉴

Douglas' Space

암호화 본문

Computing Tech. Diary/Computing Buzzwords

암호화

똘키아빠 2022. 9. 13. 21:35
암호화(encryption)는 평문(plaintext)을 암호문(ciphertext)로 변환하는 것입니다. 반대로 암호문을 평문으로 다시 변환하는 것을 복호화(decryption)라고 합니다. 암호화를 위해서는 키(key)가 필요합니다. 가장 간단한 암호화의 방법중에 하나가 카이사르 암호입니다. 
 
 
카이사르암호는 평서문의 글자들을 알파벳 순서를 이동하여 매핑한 글자로 변경하여 암호문을 만드는 방법입니다. 위의 그림에서 처럼 A 이후의 알파벳을 D 이후의 알파벳으로 매핑하여 치환하는 것입니다. 이때의 키는 알파벳을 이동한 거리가 키가 됩니다. 다시 말해 카이사르암호는 숫자가 키가 됩니다. 위 그림에서는 3칸 이동하여 모든 알파벳을 치환하여 암호문을 구성하게 되므로 키값이 “3”이 됩니다.
 
아래는 그림은 일반적인 암호화와 복호화 과정을 설명한 그림입니다. 암호화와 복화화 할때 동일한 키를 사용하는 방법을 대칭키 암호화라 하며, 암호화와 복화화 할때 다른 키를 사용하는 것을 비대칭키 암호화라고 합니다. 
 
 
대칭키를 사용하는 경우는 키의 분실의 우려로 인터넷에서는 사용하지 않으며 지금은 RSA공개키 암호기법과 같은 비대칭키 방법을 일반적으로 사용합니다. 공개키 암호기법에서는 특정 사람의 개인키(private key)와 개인키로 부터 생성되는 공개키(public key)의 쌍을 생성하여 이를  암호와와 복호화를 수행할 때 다르게 적용합니다. 개인키는 외부에 공개를 하지 않는 비밀키(seceret key)이며, 공개키는 외부에 공개하기 때문에 공개키로 부르게 됩니다. 
 
예를 들어 아래와 같이 Alice가 Bob에게 암호화 문서를 보내고자 한다면, 인터넷에 공개되어 있는 Bob의 공개키로 암호를 하여 보내면 이 문서는 반드시 Bob의 개인키로 복호화해야 만 평서문으로 변경이 가능합니다. 
 
그러나 안전하지 않은 인터넷 공간에서는 암호문을 변조하는 경우가 생기거나, 해당 문서를 보낸 사람이 누구인지를 판단할 수 없어 단순히 문서를 암호화하는 것만으로는 많은 문제가 발생할 가능성이 높습니다. 따라서 이를 위해 전자서명(electronic signature)이라는 방법을 통해 문서의 무결성과 보낸 사람을  검증할 수 있습니다.

'Computing Tech. Diary > Computing Buzzwords' 카테고리의 다른 글

블록체인  (0) 2022.10.15
해쉬함수와 전자서명  (0) 2022.09.13
Open Source Software의 힘  (2) 2022.08.25
Software Defined X  (0) 2022.08.16
Open Architecture  (0) 2022.07.24
Comments