on
전자서명은 어떻게 이루어질까?
전자서명은 어떻게 이루어질까?
블록체인의 암호기술 중 전자서명은 어떻게 구현할까?
블록체인 기술에서의 전자서명을 설명하기에 앞서 일상생활에서의 전자서명에 대해서 알아보겠다. 서류상으로 중요한 계약을 맺을 경우 우리는 주로 인감도장을 사용하고, 인터넷 뱅킹으로 누군가와 거래를 할 때는 공동 인증서를 사용한다. 인감도장은 주민센터에 등록하고 서류에 찍으면 그 효력이 발효된다. 그럼 공동 인증서는 어떤 방식으로 작용할까?
공동 인증서는 인증서를 발급하는 기관이 따로 존재하고, 해당 기관에서 개인키와, 공개키를 발행한다. 우리가 공동 인증서 발급을 신청하면, 개인에겐 개인키를 공인기관은 공개키를 갖고 있는다. 은행에 개인키를 보여주면 은행은 공인기관에서 공개키를 가져와 일치 여부를 확인하고 신원을 확인하고 거래를 진행한다.
블록체인에서의 전자서명도 이것과 같이 비대칭 방식을 이용한다.
계약할 내용이 적힌 계약서에 인감도장과 같은 서명을 전자서명으로 대체한다. 대체 방식은 계약서의 내용을 나만이 갖고 있는 고유의 개인키로 암호화를 하고, 해당 계약서 밑에 첨부해서 수신자에게 보낸다. 수신자는 계약서를 받고, 공개키로 내가 암호화한 계약서를 복호화 해서 중간에 위, 변조가 됐는지 확인하는 것이다.
대칭키의 키 전송의 문제점을 해결하기 위해서 나온 것이 비대칭키였다. 비대칭키를 이용해서 암호화할 때는 수신자의 공개키로 암호화하고 복호화는 수신자의 개인키로만 열 수 있도록 한 것이다. 즉, 비대칭 키는 기밀성을 유지하기 위해서 나온 방식이었지만 블록체인에서는 역으로 모두에게 공개함으로써 나의 무결성을 검증받을 수 있다.
블록체인에서는 거래내역인 트랜잭션에 전자서명이 포함되고, 각 노드에서 위와 같이 트랜잭션의 위, 변조 상태를 검증한다. 또한, 전자서명이 개인키로 암호화됐기 때문에 누구의 서명인 지도 확인할 수 있다.
from http://j-tone.tistory.com/28 by ccl(A) rewrite - 2021-10-24 12:00:59