본문 바로가기

핀테크 활용, 오픈 뱅킹, 인터넷 전문은행

암호화의 개념

암호화의 개념

암호화의 개념
암호화의 개념

우리는 실생활에서 다양하게 암호를 사용하고 있습니다. 우리가 암호를 사용하는 이유는 무엇일까요? 암호를 사용하는 이유에는 여러 가지가 있지만 핀테크 관점에서 살펴보면, 기밀성(confidentiality), 인증(authentication), 무결성(integrity), 부인방지(non-repudiation)의 네 가지 목적이 있습니다. 그럼 하나씩 살펴볼까요?

암호화의 목적

암호를 사용하는 첫 번째 목적은 ‘기밀성’입니다. 우리에게 전달되는 정보를 중간에서 다른 사람이 보지 못하도록 하는 것을 말합니다. 예를 들어, 내 계좌의 비밀번호를 보호하기 위해서 암호를 사용하는데 이것이 기밀성에 해당됩니다. 두 번째는 ‘인증’ 목적입니다. 정보를 받은 사람 입장에서 보낸 사람이 누구인지 확인할 수 있도록 하는 겁니다. 예를 들어, 우리가 계정에 로그인하려고 할 때, 그 계정의 소유자가 맞는지 확인하기 위해서 암호를 사용하는데 이것이 인증에 해당됩니다. 다음으로는 ‘무결성’을 들 수 있습니다. 정보를 받은 사람이 받은 정보와 보낸 사람이 보낸 정보가 동일한지 확인할 수 있도록 하는 목적입니다. 예를 들면, 자금 이체를 요청할 때 정보의 변조 여부를 확인하기 위해서 암호를 사용하는데 이것이 무결성에 해당됩니다. 마지막으로 ‘부인방지’의 목적이 있습니다. 정보를 보낸 사람이나 받은 사람이 정보를 보냈거나 받았다는 사실을 나중에 부인하지 못하도록 하기 위한 목적을 말합니다. 예를 들면, 상품을 주문한 사람이 주문 사실을 부인하는 것을 방지하기 위해 암호를 사용한다면 송신부인방지에 해당한다고 볼 수 있습니다. 핀테크 관점에서 암호를 사용하는 목적에 대해 알아봤는데요, 어렵지 않게 이해할 수 있으시겠죠? 다음은 암호화와 관련된 용어들을 하나씩 살펴보고 실생활에서 어떻게 활용되는지 알아보도록 하겠습니다.

암호화 용어 정리

암호화 과정을 알기 위해서는 먼저 암호화와 관련된 용어들을 알아야겠죠. 전달해야 할 내용은 평문, plaintext라고 합니다. 이 평문을 암호화한 내용은 ciphertext, 즉 암호문이라고 하죠. 암호화하는 것은 encryption이라고 하고, 암호문을 평문으로 다시 복구하는 것은 decryption, 즉 복호화한다고 말합니다. 화면을 통해서 암호화 과정을 함께 보시겠습니다. 암호를 통해 정보를 전송하기 위해서는 전달해야 할 내용, 즉, 평문이라고 하는 plaintext를 암호화 알고리즘을 이용해서 encryption, 암호화하게 됩니다. 이렇게 암호화한 내용을, ciphertext, 암호문이라고 하는데요. 이 암호문은 적으로부터 안전하기 때문에 안심하고 적진을 경유해서 적진 건너편에 있는 아군에게 잘 전달할 수 있습니다. 암호문을 받은 건너편 아군은, 암호문을 decryption, 즉 복호화해서 원래의 plaintext, 평문을 얻어내고, 원래 보낸 정보를 얻게 됩니다. 이 과정에서 공격자가 암호문을 불법적으로 복호화하려고 시도하는 경우가 있는데요. 이 불법적인 복호화를 암호해독, cryptographic analysis라고 부릅니다. 현대 암호학에서는 encryption인 암호화 또는 decryption인 복호화를 위한 암호화 알고리즘의 파라미터로 key를 추가적으로 사용합니다. 즉, 매개변수로 함께 활용하는데, 이 key는 아주 큰 정수로서 적이 쉽게 얻어낼 수 없는 값을 사용합니다. 아주 큰 정수라는 게 얼마나 크다는 것일까요? 2의 256 제곱, 2의 2048 제곱처럼 아주 큰 숫자를 사용한다는 뜻입니다. 그렇다면 현대 암호학에서 키를 사용하는 이유는 무엇일까요? 키를 사용하면 보안 체계를 변경하는 것이 쉽고, 여러명의 사용자가 동일한 보안 체계를 이용하는 것이 가능하기 때문입니다. 그런데 가능한 키 값을 모두 시도해 보는 공격인 Brute-force attack에 취약하다는 단점도 있습니다. 이런 단점을 해결하기 위해서는 키 값을 아주 크게 설정하고, 주기적으로 키를 갱신하는 방법을 사용합니다. 우리가 인터넷 뱅킹을 사용하기 위해서 전자인증서를 주기적으로 갱신하는데 그 이유가 여기에 있습니다. 공인인증서에 대한 안정성을 강화하기 위해서 공인인증서 암호체계의 고도화를 추진한다는 내용입니다. 자료를 보시면 2012년 1월 1일을 기준으로 공인증서의 전자서명키 RSA의 크기가 1,024비트에서 2,048비트로 상향 조정되고, 해쉬 함수는 160비트 출력값을 가지는 SHA-1 대신 256비트 출력값을 가지는 SHA-256으로 교체된다는 것을 보여주고 있습니다. 영상 아래에 있는 링크를 통해서 자세한 내용을 확인하시기 바랍니다. 지금 보이는 화면은 우리가 인터넷 뱅킹을 사용하면서 공인인증서를 갱신할 때 볼 수 있는 화면입니다. 암호체계에 대한 안정성을 강화하기 위해서 우리가 실제 활용하고 있는 사례라고 할 수 있겠습니다. 지금까지 암호화의 목적과 관련 용어들을 살펴보면서 암호화에 대한 개념을 쌓아가는 시간을 함께 했는데요, 어렵지 않게 이해하실 수 있었을 것입니다.