전자 서명
전자 서명(electronic signature, e-signature)이라 함은 서명자를 확인하고 서명자가 당해 전자문서에 서명을 하였음을 나타내는 데 이용하기 위하여 당해 전자문서에 첨부되거나 논리적으로 결합된 전자적 형태의 정보를 말한다.<ref>대한민국 전자서명법 제2조 제2호</ref>
- 공개 키 기반 구조(PKI) 기술측면에서 전자서명이란 전자문서의 해시(HASH)값을 서명자의 개인키(전자서명생성정보)로 변환(암호화)한 것으로서 RSA사에서 만든 PKCS#7 의 표준이 널리 사용되고 있다.
즉, 원래의 문서 내용을 A라고 하면 A의 해쉬 값을 잘 알려진 해시 함수인 SHA1 같은 함수 하나를 정해 이런 Hash 함수로 문서 A의 Hash 값을 구하고 이 Hash 값을, 보내는 사람(철수)의 개인 열쇠(Private Key)로 암호화 한다. 이런 다음 이렇게 암호화된 Hash 값을 원래 문서 A 끝에 첨부하여 이 문서 전체를 받는 사람(영희)에게 보낸다.
영희는 먼저 메시지가 오면 해쉬 값을 뺀 앞부분의 문서에 대해 철수가 사용했던 Hash 함수를 이용해 받은 문서의 Hash 값을 구한다. 그 다음 문서 뒤에 달린 암호화된 Hash 값을 철수의 공개 열쇠(Public Key)로 복호화(암호 해독)한 다음 이 복호화된 Hash 값을, 받은 문서의 Hash 값과 비교하게 된다. 이 두개의 Hash 값이 동일한 값이면 서명이 올바른 것이고 값이 서로 다르거나 변환에 오류가 있으면 서명이 틀린 것이다.
- 전자 서명은 수기 서명과 동일한 효력을 지닌다.
공개 열쇠 암호와 대칭 열쇠 암호
빝코인(Bitcoin)은 오스트레일리아 사람인 크레이그 라이트(Craig Wright)가 2008년에 개발한 세계 최초의 분산 암호화폐(Cryptocurrency)이다. 분산인 이유는 거래 내역인 블락체인(blockchain)을 피투피(P2P)로 빝코인 코어(Bitcoin Core) 등의 빝코인 소프트웨어를 설치한 사람들이 공유해서 가지고 있기 때문이고, 암호화폐인 이유는 본질적으로 한 쌍의 공개 열쇠와 개인 열쇠로 이루어진 공개 열쇠 암호 방식인 지피지4유에스비와 동일하기 때문이다. gpg4usb의 공개 열쇠(public key)가 빝코인 주소(Bitcoin address)이고, 개인 열쇠(private key)는 빝코인에서도 private key이다. 빝코인에서 송금을 한다는 것의 의미는 지피지4유에스비에서 자신의 메시지를 자신의 개인 열쇠로 전자 서명해서 자신이 작성한 메시지임을 증명하는 것과 동일하게 자신의 송금 내역을 자신의 개인 키로 서명하는 것이다. 빝코인이 지피지4유에스비와 유일하게 다른 점은 이렇게 싸인(sign)한 결제 내역을 피투피로 공유되는 블락체인에 추가한다는 점만 다르다.
지피지4유에스비와 동일하게 빝코인도 개인 열쇠(private key)만 보관하고 있으면 블락체인으로부터 자신의 지갑을 찾아내서 사용할 수 있다. 개인 열쇠는 빝코인 주소(Bitcoin address)나 공개 열쇠처럼 일련의 숫자와 알파벳으로 이루어진 문자열이다. 한 쌍의 개인 열쇠와 공개 열쇠(빝코인 주소)는 서로 짝이 되기 때문에 일렉트럼(Electrum) 등의 소프트웨어 사용자는 개인 키만 잘 보관해놨다가 나중에 다른 컴퓨터에서 지갑을 불러올 때 개인 키만 입력해주면 빝코인 주소를 몰라도 자신의 빝코인 주소를 찾아내서 개인 키로 전자서명하여 결제가 가능한 것이다. 빝코인 주소와 개인 키를 텍스트 파일로 저장하고 트루크맆트로 암호화하여 USB 메모리나 SD 카드 세 개 정도에 보관해놓으면 안전하다. 인터넷이 연결된 컴퓨터나 온라인 빝코인 지갑(Bitcoin wallet) 서비스에 보관할 경우 토어 월릿(Tor Wallet)의 경우처럼 해킹의 위험이 매우 높다.
이런 공개 열쇠 암호(비대칭 열쇠 암호)와 대조적인 게 대칭 열쇠 암호(비밀 열쇠 암호)인데 암호화와 복호화(암호 풀기)에 오직 하나의 비밀 열쇠만 쓰는 트루크맆트(TrueCrypt)가 가장 대표적이다. 비밀 열쇠 암호 방식은 통신에서는 쓸 수 없는데 비밀 열쇠를 해커에게 뺏기지 않고 상대방에게 안전하게 건네 줄 방법이 없기 때문이다. 이와는 대조적으로 공개 열쇠를 모두에게 공개하고, 이와 짝이 되는 개인 열쇠로만 복호화를 할 수 있는 공개 열쇠 암호 방식은 통신에 널리 쓰인다. 예를 들어 지피지4유에스비, 공인인증서, 전송 계층 보안(https), 카카오톡이나 텔레그램의 비밀 대화, 토어(Tor), 트리블러(Tribler) 등이 있다. 하나의 메시지를 여러개의 공개 키로 암호화하여 여러 사람이 열람할 수 있게 하거나, 여러개의 개인 키로 사인(sign)하여 여러 사람이 동의하였다는 표시로 사용할 수도 있다.
같이 보기
주석
<references />
{{#if:|Template:토막글/중간}}Template:토막글/그림 | {{#if:암호학 | 이 글은 {{#if:암호학|암호학에 관한}} 토막글입니다. 서로의 지식을 모아 알차게 문서를 완성해 갑시다.|이 토막글 틀의 변수는 잘못 사용되었습니다. 알맞은 변수를 토막글 모음에서 골라 사용해 주세요.}} | 이 글은 토막글입니다. 서로의 지식을 모아 알차게 문서를 완성해 갑시다.
}} |
{{#if:||Template:토막글/분류}} {{#ifexpr:5678>5000|분류:큰 토막글 문서}}