인디노트

오픈소스 PKI 문서 - 제 2 장. 암호 소개 본문

인증기술/PKI 기술

오픈소스 PKI 문서 - 제 2 장. 암호 소개

인디개발자 2018. 9. 27. 09:50

제 2 장. 암호 소개

의사 소통은 삶의 필수적인 부분입니다. 우리는 그것이 인간의 진보를 표시 한다고 말할 수 있습니다. 커뮤니케이션을 위한 전통적인 미디어는 우체국을 통해 편지를 보내거나, 통신 회사를 통해 전화로 이야기 하거나, 또는 더 일반적으로 다른 사람과 직접 이야기하는 것입니다. 이러한 전통적인 미디어는 오랜 기간 존재 해 왔으며, 사람들이 개인적 또는 비즈니스 커뮤니케이션을 위해 안전하게 통신 할 수 있도록 특별한 조항이 만들어졌습니다. 대면 커뮤니케이션의 경우, 사람들은 서로의 신체적 특징을 인식하거나 손으로 쓴 서명과 신분증과 같은 공식 문서의 서명을 비교할 수 있습니다. 사람의 모든 신체적 특징을 모방하는 것은 어렵습니다. 사람들은 동료의 신원을 높은 수준으로 확신 할 수 있습니다. 서명 위조는 어렵고 위조를 범죄로 규정하는 법률이 있습니다. 결론은 각 통신 매체에 대해 사람들이 안전하고 투명하게 통신 할 수 있도록 특정 법률 및 기술이 설정된 과도기가 있다는 것입니다.

전 세계의 컴퓨터 네트워크를 상호 연결하는 네트워크인 인터넷은 기존의 것과는 근본적으로 다른 새로운 통신 매체입니다. 예를 들어, 인터넷상에서 통신 당사자는 물리적 접촉을 갖지 않습니다. 하나가 다른 사람에게 자신을 위장하고 음성 및 기타 측면의 행동을 모방하고 이전의 공통된 경험에 대한 정보를 얻는 것이 다소 어렵습니다. 온라인 거래는 불법 거래에 대한 장벽을 부과하지 않습니다. 또한 인터넷에서 동일한 유형의 사기를 자동화하여 높은 이익과 큰 인센티브를 제공 할 수 있습니다. 투명하고 안전한 의사 소통을 위한 법률 및 기술은 아직 완전히 정의되거나 설정되지 않았습니다.

암호화는 ID 카드 또는 기타 공식 문서와 관련된 손으로 쓴 서명과 디지털 인증서의 기능과 유사한 디지털 서명을 제공합니다. 그러나 이러한 기술을 사용하기 위해서는 필요한 용도로 투명하게 사용할 수 있도록해야합니다.

Privilege Management Infrastructure 와 함께 공개 키 인프라는 이러한 투명성과 인터넷 응용 프로그램 보안을 지원하는 후보입니다. 이 두 가지 개념은 6 장 에서 설명 합니다.

다음의 암호화 소개 부분은 Frederick J. Hirsch 가 작성한 SSLeay Certificate Cookbook 에서 가져온 것입니다 .


암호화 알고리즘

암호학은 순수 수학과 몇 가지 다른 점이 있습니다. 그 중 하나는 암호가 교과서에 더 서술적이라는 것입니다. 수학자가 알고리즘을 설명하기 위해 A와 B를 사용할 수 있지만 암호 작성자는 가상의 이름인 Alice와 Bob 을 사용할 수 있습니다. 따라서 다음 섹션에서 Alice 와 Bob 이라는 이름은 무작위로 선택되지 않습니다. 그들은 거의 모든 암호 교과서에서 발견 될 수 있습니다.

앨리스가 돈을 송금하기 위해 은행에 메시지를 보내려고 한다고 가정합니다. 앨리스는 계좌 번호 및 계좌 이체 금액과 같은 정보가 포함되어있어서 메시지를 비공개로하고 싶습니다. 한가지 해결책은 암호화 알고리즘을 사용하는 것입니다. 암호화 알고리즘은 메시지를 암호화된 형식으로 변환하여 의도된 사람을 제외하고는 읽을 수 없게 하는 기술입니다. 암호화 될 때, 메시지는 대응하는 비밀키의 사용을 통해서만 해석 될 수 있습니다. 열쇠가 없다면 메시지는 쓸모가 없습니다. 좋은 암호 알고리즘은 침입자가 원본 텍스트를 디코딩하여 자신의 노력을 할 가치가 없다고 합니다.

암호화 알고리즘에는 일반 및 공개 키의 두 가지 범주가 있습니다.

대칭 암호화 라고도 하는 기존의 암호화는 보낸 사람과 받는 사람이 키를 공유하도록 요구합니다. 이는 메시지를 암호화하거나 해독하는 데 사용되는 비밀 정보입니다. 이 키가 비밀이면 보낸사람 또는 받는사람 이외의 다른 사람이 메시지를 읽을 수 없습니다. Alice 와 은행이 각각 비밀키를 가지고 있다면, 그들은 서로에게 개인적인 메시지를 보낼 수 있습니다. 그러나 통신하기 전에 개인적으로 키를 선택하는 것은 문제가 될 수 있습니다.

비대칭 암호화 라고도 하는 공개키 암호화는 메시지를 암호화하는 데 사용할 수 있는 두 개의 키를 사용하는 알고리즘을 정의하여 키 교환 문제를 해결합니다. 하나의 키가 메시지를 암호화하는 데 사용되면 다른 키는 암호 해독에 사용해야합니다. 따라서 하나의 키 (공개 키)를 게시하고 다른 하나의 키 (개인 키) 를 유지함으로써 보안 메시지를 수신 할 수 있습니다.

누구나 공개 키를 사용하여 메시지를 암호화 할 수 있지만 개인 키 소유자만 읽을 수 있습니다. 이런 식으로 Alice 는 공개 키를 사용하여 개인 키를 암호화하여 키쌍 (은행) 소유자에게 비공개 메시지를 보낼 수 있습니다. 은행에서만 해독 할 수 있습니다.

공개 키 알고리즘의 예는 부록 C 에 있습니다.


메시지 다이제스트

앨리스가 자신의 메시지를 비공개로 암호화 할 수도 있지만 누군가가 원래 메시지를 수정하거나 다른 메시지로 대체하여 다른 사람에게 돈을 송금하는 등의 우려가 있습니다. Alice 의 메시지 무결성을 보장하는 한 가지 방법은 메시지의 간결한 요약을 작성하여 이를 은행에 보내는 것입니다. 메시지를 받으면 은행은 자체 요약본을 작성하여 Alice 가 보낸 요약본과 비교합니다. 그들이 동의하면 메시지는 그대로 수신됩니다.

이와 같은 요약을 메시지 다이제스트, 단방향 함수 또는 해시 함수라고 합니다. 메시지 다이제스트는 길고 가변의 길이인 메시지를 짧은 고정 길이 표현으로 만듭니다. 다이제스트 알고리즘은 서로 다른 메시지에 대해 고유 다이제스트를 생성하도록 설계되었습니다. 메시지 요약을 사용하면 다이제스트에서 메시지를 확인하기가 어려워지고 동일한 다이제스트를 만드는 두 개의 서로 다른 메시지를 찾기가 어렵습니다. 동일한 다이제스트를 유지하면서 다른 메시지를 대체 할 가능성을 제거합니다.

앨리스가 직면 한 또 다른 도전은 은행에 안전하게 다이제스트를 보내는 방법을 찾는 것입니다. 이것이 달성되면, 관련 메시지의 무결성이 보증됩니다. 디지털 서명에 다이제스트를 포함시키는 것이 한 가지 방법입니다.


디지털 서명

앨리스가 은행에 메시지를 보내면 은행은 메시지가 실제로 그녀의 계정이고 침입자가 자신의 계좌가 포함된 거래를 요청하는 것이 아닌지 확인해야합니다. 앨리스가 작성한 메시지에 포함된 디지털 서명은 이러한 용도로 사용됩니다.

디지털 서명은 메시지의 다이제스트 및 송신자의 개인 키로 다른 정보 (예 : 일련 번호) 를 암호화하여 생성됩니다. 누구나 공개 키를 사용하여 서명을 해독 할 수 있지만 서명자 만 개인 키를 알고 있습니다. 서명자 만 서명 할 수 있습니다. 서명에 다이제스트를 포함하면 서명이 해당 메시지에 만 적합 함을 의미합니다. 어느 누구도 다이제스트를 변경하고 서명 할 수 없으므로 메시지의 무결성을 보장합니다.

나중에 침입자가 서명을 가로 채고 재사용 하는 것을 방지하기 위해 서명에는 고유 일련 번호가 있습니다. 이것은 앨리스의 사기성 주장에서 은행이 메시지를 보내지 않았음을 보증합니다 - 오직 그녀 만이 서명 할 수 있었습니다 (부인 방지).


인증서

앨리스는 은행에 개인 메시지를 보내고 서명하고 메시지의 무결성을 보장 할 수 있었지만 여전히 그녀가 실제로 은행과 통신하고 있는지 확인해야합니다. 즉, 사용중인 공개 키가 은행의 개인 키와 일치하는지 확인해야합니다. 마찬가지로 은행은 메시지 서명이 실제로 앨리스의 서명과 일치하는지 확인해야합니다.

각 당사자가 다른 사람의 신원을 확인하고 공개 키를 확인하며 신뢰할 수 있는 기관에 의해 서명 된 인증서를 가지고 있으면 두 사람 모두 그들이 자신이 누구라고 생각하는지 의사 소통하고 있음 을 확신합니다. 각 당사자는 신뢰할 수 있는 기관의 공개 키를 사용하여 상대방의 인증서를 확인한 다음 사용자의 공개 키에 대한 신뢰성을 보장합니다.



인증 기관

인증서를 개인 키로 서명하고 다른 사람이 해당 공개 키를 사용하여 인증서를 확인할 수 있게 하는 신뢰할 수 있는 인증 기관을 CA (Certification Authority) 라고 합니다 이 인증 기관은 신뢰할 수 있는 타사와 공통된 이익을 가져서는 안되는 것으로 간주 되므로 신뢰할 수 있는 제 3 자 ( TTP ) 라고도 합니다.

노트

은행은 인증 기관이 아니어야 하며 경제적 거래를 하는 당사자여야 합니다. 그들은 CA 와 마찬가지로 사업을 수행하는 당사자로서 자신을 인증 할 수 있습니다.

이 문서에서는 인증 기관의 기술적 측면에 대해 집중적으로 설명합니다.





반응형
Comments