왜 공개키방식은 대칭키 방식보다 느린가요

개요

큰틀에서의 차이를 보면, 대칭키 암호화 방식 암복호화에 사용하는 키가 동일한 암호화 방식을 말한다. 그와 달리, 공개키 암호화 방식 암복호화에 사용하는 키가 서로 다르며 따라서 비대칭키 암호화라고도 한다. 따라서 공개키 암호화 에서는 송수신자 모두 한쌍의 키(개인키, 공개키)를 갖고있게 된다.

대칭키란, 장단점

대칭키는 위에서 설명한대로 암복호화키가 동일하며 해당 키를 아는 사람만이 문서를 복호화해 볼 수 있게된다. 대표적인 알고리즘으로는 DES, 3DES, AES, SEED, ARIA 등이 있다. 

공개키 암호화 방식에 비해 속도가 빠르다는 장점이 있지만, 키를 교환해야한다는 문제 (키 배송 문제)가 발생한다. 키를 교환하는 중 키가 탈취될 수 있는 문제도 있고 사람이 증가할수록 전부 따로따로 키교환을 해야하기 때문에 관리해야 할 키가 방대하게 많아진다.

이러한 키 배송 문제를 해결하기 위한 방법으로 키의 사전 공유에 의한 해결, 키 배포센터에 의한 해결, Diffie-Hellman 키 교환에 의한 해결, 공개키 암호에 의한 해결이 있다.


대칭키 암호화 방식: 암복호화키가 동일한 암호화 방식

대표 알고리즘 : DES, 3DES, AES, SEED, ARIA 등

장점 : 수행 시간이 짧음

단점 : 안전한 키교환 방식이 요구됨, 사람이 증가할수록 키관리가 어려워짐

공개키란, 장단점

위에서 설명한 대칭키의 키교환 문제를 해결하기 위해 등장한 것이 공개키(비대칭키) 암호화 방식이다. 이름 그대로 키가 공개되어있기 때문에 키를 교환할 필요가 없어지며 공개키 모든 사람이 접근 가능한 키이고 개인키 각 사용자만이 가지고 있는 키이다.

예를 들어, A가 B에게 데이터를 보낸다고 할 때, A는 B의 공개키로 암호화한 데이터를 보내고 B는 본인의 개인키로 해당 암호화된 데이터를 복호화해서 보기 때문에 암호화된 데이터는 B의 공개키에 대응되는 개인키를 갖고 있는 B만이 볼 수 있게 되는 것이다. 


1) B 공개키/개인키 쌍 생성

2) 공개키 공개(등록), 개인키는 본인이 소유

3) A가 B의 공개키를 받아옴

4) A가 B의 공개키를 사용해 데이터를 암호화

5) 암호화된 데이터를 B에게 전송

6) B는 암호화된 데이터를 B의 개인키로 복호화 (개인키는 B만 가지고 있기 때문에 B만 볼 수 있음)

왜 공개키방식은 대칭키 방식보다 느린가요

따라서 공개키는 키가 공개되어있기 때문에 따로 키교환이나 분배를 할 필요가 없어진다. 중간 공격자가 B의 공개키를 얻는다고 해도 B의 개인키로만 복호화가 가능하기 때문에 기밀성을 제공하며 개인키를 가지고있는 수신자만이 암호화된 데이터를 복호화할 수 있으므로 일종의 인증기능도 제공한다는 장점이 있다. 그에 반해 단점은 속도가 느리다는 것이다. 


공개키 암호화 방식: 암복호화키가 동일한 암호화 방식

장점: 키분배 필요X, 기밀성/인증/부인방지 기능을 제공

단점: 대칭키 암호화 방식에 비해 속도가 느림

작가: Lewis Jackson

창조 날짜: 12 할 수있다 2021

업데이트 날짜: 14 십일월 2022

왜 공개키방식은 대칭키 방식보다 느린가요
동영상: HTTPS가 뭐고 왜 쓰나요? (Feat. 대칭키 vs. 비대칭키)

대칭 키 암호화와 공개 키 암호화

암호화는 정보를 숨기는 연구이며, 다른 제 3 자로부터 정보를 보호해야하는 인터넷과 같은 신뢰할 수없는 매체를 통해 통신 할 때 사용됩니다. 현대의 암호화는 데이터를 암호화 할 수있는 암호화 알고리즘을 개발하는 데 중점을 두어 계산의 경도로 인해 (따라서 실제적인 방법으로 파괴 될 수 없음) 적에게 침입하기 어렵습니다. 암호화는 암호라는 알고리즘을 사용하여 데이터를 암호화하며 특수 키를 사용해야 만 해독 할 수 있습니다. 암호화 된 정보를 암호문이라고하며 암호문에서 원래 정보 (일반 텍스트)를 얻는 과정을 암호 해독이라고합니다. 널리 사용되는 암호화 방법 중 두 가지는 대칭 키 암호화와 공개 키 암호화입니다. 대칭 키 암호화에는 송신자와 수신자가 데이터를 암호화하는 데 사용되는 동일한 키를 공유하는 암호화 방법이 포함됩니다. 공개 키 암호화에서는 서로 다르지만 수학적으로 관련된 두 개의 키가 사용됩니다.

대칭 키 암호화 란 무엇입니까?

대칭 키 암호화 (비밀 키, 단일 키, 공유 키, 하나의 키 또는 개인 키 암호화라고도 함)에서 발신자와 수신자는 데이터 암호화 및 복호화에 사용되는 동일한 키를 공유합니다. 실제로 두 키는 동일하거나 사소하게 관련 될 수 있습니다 (즉, 두 키 사이를 이동하는 데 필요한 매우 간단한 변환이 있음). 실제 사용에서 비밀은 통신을위한 개인 링크의 유지 관리에 사용할 수있는 둘 이상의 당사자가 공유하고 있습니다. AES (Advanced Encryption Standard)는 대칭 키 암호화 알고리즘 제품군에 속하는 매우 널리 사용되는 알고리즘입니다.

공개 키 암호화 란 무엇입니까?

공개 키 암호화에서는 두 가지 다르지만 수학적으로 관련된 키가 사용됩니다. 공개 키 암호화는 수신자의 공개 키를 사용하여 데이터를 암호화하며 일치하는 개인 키를 사용하지 않고는 해독 할 수 없습니다. 즉, 잠 그려면 (일반 텍스트 암호화) 하나의 키가 필요하고 잠금 해제하려면 (사이퍼 텍스트 해독) 다른 키가 필요합니다. 중요한 것은 하나의 키를 다른 키 대신 사용할 수 없다는 것입니다. 게시 된 키에 따라 공개 키 암호화는 두 가지 목적으로 사용될 수 있습니다. 잠금 키가 공개되면 누구나이 시스템을 사용하여 잠금 해제 키 소유자에게 비공개 통신을 보낼 수 있습니다. 반대의 경우 시스템은 소유자가 잠근 문서를 확인할 수 있습니다. 공개 키 암호화는 비대칭 키 알고리즘입니다. 그러나 일부 비대칭 키 알고리즘 만이 다른 키에 대한 지식으로 하나의 키를 공개 할 수 없다는 특별한 속성을 가지고 있습니다. 따라서이 특수 속성을 가진 비대칭 키 알고리즘을 공개 키 암호화 알고리즘이라고합니다.

대칭 키 암호화와 공개 키 암호화의 차이점은 무엇입니까?

대칭 키 암호화와 공개 키 암호화의 주요 차이점은 대칭 키 암호화는 암호화 / 복호화에 동일한 (개인, 비밀) 키를 사용하는 반면 공개 키 암호화는 공개 키와 개인 키를 모두 사용한다는 것입니다. 양 당사자는 대칭 키 암호화의 키를 알아야하지만 공개 키 암호화에 대한 요구 사항은 없습니다. 단, 공개 키 암호화에서 두 당사자가 키 중 하나를 알고 있습니다. 이렇게하면 개인 키를 공유 할 필요가없고 (대칭 키 암호화에서와 같이) 손상 될 위험이 없으므로 이와 관련하여 공개 키 암호화가 더 안전한 것으로 간주 될 수 있습니다.

그러나 공개 키 암호화의 주요 단점은 대칭 키 암호화보다 몇 배 더 느리다는 것입니다. 따라서 대량의 데이터를 암호화하려면 대칭 키 암호화가 더 좋습니다. 또한 공개 키 암호화 알고리즘은 동일한 강도를 달성하기 위해 대칭 키 암호화보다 비교적 강력한 키를 사용해야합니다 (공개 키 암호화에서 하나의 키가 공개되는 간단한 이유 때문에).