암호 핵심 모듈 |
대칭 암호(Symmetric Cryptography)
정보를 보내는 사람과 받는 사람이 같은 키를 사용하는 방법이다. 송신자는 키(key)를 사용해 메시지를 섞어 해석할 수 없는 텍스트 문자열로 만든다. 뒤섞인 메시지가 목적지에 도착하면 수신자는 동일한 키로 텍스트를 해독해 메시지를 드러낸다.
대칭 암호화 방식은 키가 핵심적인 역할을 맡는다. 메시지를 교환하기 전에 키에 대한 합의를 하거나, 수신 당사자에게 키를 전달해야 한다. 이 때문에 키가 위험에 노출된다. 제삼자가 키를 취득하면 중간에 메시지를 가로채 해독할 수 있다.
비대칭 암호(Asymmetric Cryptography)
정보를 보내는 사람과 받는 사람이 다른 키를 사용하는 방법이다. 공개키 암호(Public-key Cryptography)라고도 한다.
암호화를 하면 수학적으로 밀접한 관계를 지닌 키쌍이 생긴다. 두 키를 A, B라 한다면 A키로 암호화한 암호문은 B키로만 복호화가 가능하고 B키로 암호화한 암호문은 A키로만 복호화가 가능하다. 개인키는 공유할 필요없는 비밀번호 역할을 한다. 공개키는 서로 자유롭게 전달할 수 있는 기준점 역할을 한다.
공개키로 암호화를 선택했다면 데이터 보안에 중점을 두었다고 생각할 수 있다.
개인키로 암호화를 진행했다면 전자서명을 통한 인증 과정에 중점을 두었다고 생각할 수 있다.
기밀성(Confidentiality)
정보 내용이 노출되지 않는 것을 의미한다.
무결성(Integrity)
정보 내용이 바뀌지 않는 것을 의미한다.
블록체인 암호 기술 |
블록체인은 Block + Transaction으로 이해할 수 있다.
블록체인은 다수의 사람들에게 공개되어 있다고 가정하기 때문에 다수의 사람들이 접근할 수 있는 공개키 암호화가 적당한 플랫폼이다.
블록에 일단 내용을 쓰면 내용을 조작하기 아주 힘들다. 각 블록의 헤더에는 이전 블록 헤더의 해시값이 포함되어 있다. 어떤 블록의 내용을 변경하려면 필연적으로 체인을 끊어야 한다. 조금만 달라져도 변경된 블록에 연계되는 새 해시값이 만들어지고 뒤따르는 블록들의 해시값 역시 달라진다. 모든 블록들의 해시값을 새로 만들려면 비싼 비용을 들여 연산 과제를 수행해야 한다.
- 이런 방식으로 블록의 무결성을 보장하기 위해서 작업 증명(Proof of Work)과 암호학적 해시를 사용한다.
- 비밀 정보를 전달하기 위해서 암호화 알고리즘(Cipher)을 사용한다.
- 프라이버시(Privacy)를 보호하기 위해서 영지식 증명(Zero-Knowledge Protocol)을 사용한다. 영지식 증명은 누군가가 상대방에게 어떤 사항(statement)이 참이라는 것을 증명할 때, 그 문장이 참인지 거짓인지를 판단하는 내용을 제외한 어떤 내용도 노출되지 않는 절차를 뜻한다.
- 성능을 향상시키기 위해 간결 증명을 사용한다.
'보안 > 블록체인' 카테고리의 다른 글
블록체인 암호학 - 고전 암호, 현대 암호 시스템 (0) | 2020.11.03 |
---|---|
블록체인 암호학 - 전자 서명 2 (0) | 2020.10.06 |
블록체인 암호학- 전자서명 (0) | 2020.09.22 |
블록체인 암호학 - 작업 증명(PoW), 양자 안정성, 머클 해시 트리 (0) | 2020.09.15 |
블록체인 암호학 - 암호학적 해시 함수 (0) | 2020.09.06 |