대칭 암호화와 비대칭 암호화 비교

공유
Copied to clipboard!
대칭 암호화와 비대칭 암호화 비교
아티클 듣기
00:00 / 00:00

오늘날의 암호 시스템은 대칭 암호 방식과 비대칭 암호 방식이라는 두 가지 주요한 연구 분야로 나뉩니다. 대칭 암호화는 대칭 암호 방식과 동의어로 쓰이는 경우가 많으며, 비대칭 암호 방식에는 비대칭 암호화와 디지털 서명이라는 두 가지 주요 용례가 포함됩니다. 

따라서, 이를 다음과 같이 나타낼 수 있습니다:

본 글에서는 대칭 및 비대칭 암호화 알고리즘을 중점적으로 다룰 것입니다. 


대칭 암호화와 비대칭 암호화 비교

암호화 알고리즘은 보통 암호화와 비대칭 암호화라는 두 가지 카테고리로 구분되곤 합니다. 이러한 두 가지 암호화 방식의 근본적인 차이는 대칭 암호화 알고리즘은 단일 키를 사용하는 반면, 비대칭 암호화는 서로 다르지만 연관되어 있는 두 개의 키를 사용한다는 것입니다. 이러한 구분은 간단한 것처럼 보이지만, 두 가지 형태의 암호화 기법과 사용 방식의 기능적 차이를 설명해 줍니다.


암호 키 이해하기

암호 방식에서 암호화 알고리즘은 정보의 일부를 암호화하고 해독하는 데 사용되는 일련의 비트(bits)로 키를 생성합니다. 이러한 키를 사용하는 방식으로 대칭 및 비대칭 암호화의 차이를 설명할 수 있습니다.

대칭 암호화 알고리즘이 암호화와 해독을 위해 동일한 키를 사용하는 반면, 비대칭 암호화 알고리즘은 데이터를 암호화할 때와 이를 해독할 때 서로 다른 키를 사용합니다. 비대칭 시스템에서 암호화를 위해 사용되는 키는 공개 키라고 하며 다른 이들에게 자유롭게 공유될 수 있습니다. 반면, 해독에 사용되는 키는 개인 키라고 하며 안전하게 보관되어야 합니다. 

예를 들어 앨리스가 밥에게 대칭 암호화를 통해 보호되는 메시지를 보내는 경우, 앨리스는 밥이 메시지를 해독할 수 있도록 암호화에 사용된 것과 동일한 키를 공유해야 합니다. 이는 악의적인 행위자가 키를 가로채면, 암호화된 정보에 접근할 수 있음을 뜻합니다. 

그러나 앨리스가 비대칭 방식을 사용하게 되면, 밥의 공개 키를 통해 메시지를 암호화하게 되고, 밥은 자신의 개인 키를 통해 이를 해독할 수 있습니다. 따라서 비대칭 암호화는 더 높은 수준의 보안을 제공하는데, 이는 누군가 메시지를 가로채거나 밥의 공개 키를 발견하더라도 메시지를 해독할 수 없기 때문입니다.


키 길이

대칭 암호화와 비대칭 암호화의 또 다른 기능적 차이는 키 길이와 연관되어 있는데, 이는 비트로 측정되며 각 암호화 알고리즘이 제공하는 보안 수준과 직접적인 연관이 있습니다.

대칭 방식에서는 키가 임의로 지정되며, 키의 길이는 요구되는 보안 수준에 따라 128비트 또는 256비트로 설정됩니다. 그러나 비대칭 암호화에서는 공개 키와 개인 키 사이에 반드시 수학적인 관계가 있어야 하며, 이는 두 키 사이에 수학적 패턴이 존재함을 의미합니다. 이러한 사실 때문에 암호화를 해체하기 위해 공격자가 패턴을 탈취할 수 있으며, 동등한 수준의 보안을 제공하기 위해 비대칭 키는 훨씬 더 길어야 합니다. 128비트 대칭 키와 2,048비트 비대칭 키가 비슷한 수준의 보안을 제공할 정도로 키 길이가 확연히 차이가 납니다.


장점과 단점

두 가지 유형의 암호화에는 상대적인 장단점이 있습니다. 대칭 암호화 알고리즘은 훨씬 빠르며 적은 연산 능력을 필요로 하지만, 키 배포가 주된 약점입니다. 정보를 암호화하고 해독하는 데 동일한 키가 사용되기 때문에, 해당 키는 데이터에 접근해야 하는 모든 사용자에게 배포되어야 하며, 이는 자연스레 취약한 보안으로 이어집니다(앞서 살펴본 것처럼).

반면, 비대칭 암호화는 암호화에 공개 키를 사용하고 해독에 개인 키를 사용하는 방식으로 이러한 문제를 해결합니다. 그러나 비대칭 암호화 시스템은 대칭 시스템에 비해 속도가 매우 느리며, 키 길이가 매우 길기 때문에 훨씬 더 많은 연산 능력을 필요로 합니다.


활용 예시

대칭 암호화

대칭 암호화는 속도가 빠르기 때문에 많은 현대 컴퓨터 시스템에서 정보를 보호하는 데 널리 사용됩니다. 예를 들어, 미국 정부는 AES(Advanced Encryption Standard)를 기밀과 중요한 정보를 암호화하는 데 사용합니다. AES는 1970년대 대칭 암호화 표준으로 개발된 기존의 DES(Data Encryption Standard)를 대체했습니다.

비대칭 암호화

비대칭 암호화는 특별히 속도와 연산 능력이 크게 문제가 되지 않을 경우, 다수의 사용자가 메시지나 일련의 데이터를 암호화하고 해독하는 시스템에 적용할 수 있습니다. 이러한 시스템 중 하나는 암호화된 이메일이며, 메시지를 암호화 하는 데 공개 키가 사용되며 이를 해독하는 데 개인 키가 사용됩니다.

하이브리드 시스템

많은 애플리케이션에서는 대칭 암호화와 비대칭 암호화가 함께 사용됩니다. 이러한 하이브리드 시스템의 대표적인 사례는 인터넷 내에서 보호된 통신을 제공하도록 설계된 SSL(Security Sockets Layer)과 TLS(Transport Layer Security) 암호 방식 프로토콜입니다. 오늘날 SSL 프로토콜은 안전하지 않은 것으로 간주되기에 해당 프로토콜을 더는 사용해서는 안됩니다. 이와 반대로, TLS 프로토콜은 안전한 것으로 간주되며, 모든 주요 웹 브라우저에서 광범위하게 사용되고 있습니다.


암호 화폐는 암호화를 사용하나요?

암호화 기술은 일반 사용자에게 더 나은 수준의 보안을 제공하기 위해 많은 암호 화폐 지갑에서 사용됩니다. 예를 들어, 암호화 알고리즘은 사용자가 자신의 암호 화폐 지갑에 대한 암호를 설정할 때 적용되며, 이는 소프트웨어에 접속하는데 사용되는 파일이 암호화됨을 의미합니다.

비트코인과 다른 암호 화폐들이 공개-개인 키 쌍을 사용한다는 사실 때문에, 블록체인 시스템이 비대칭 암호화 알고리즘을 활용한다고 흔히 오해하곤 합니다. 그러나 앞서 언급한 것처럼 비대칭 암호화와 디지털 서명은 비대칭 암호 방식(공개 키 암호 방식)의 두 가지 주된 용례입니다.

따라서 공개 키와 개인 키가 있더라도, 모든 디지털 서명 시스템이 암호화 기술을 사용하는 것은 아닙니다. 실제로 메시지를 암호화하지 않고 디지털로 서명할 수 있습니다. RSA는 암호화된 메시지에 서명하는 데 사용할 수 있는 알고리즘 중 하나이지만, 비트코인에서 사용하는 디지털 서명 알고리즘(ECDSA라 함)은 암호화를 전혀 사용하지 않습니다.


마치며

디지털 중심적인 현대에서 대칭 암호화와 비대칭 암호화는 민감한 정보와 통신의 보안을 유지하는 데 중요한 역할을 합니다. 두 가지 모두 유용할 수 있지만, 각기 장단점이 있기 때문에 서로 다른 애플리케이션에 사용되고 있습니다. 보다 새롭고 정교한 공격을 방어하기 위해 암호학이 지속적으로 발전함에 따라, 대칭 및 비대칭 암호 방식 시스템은 컴퓨터 보안에 중요한 요소로 남아있을 것입니다.

Loading