전자서명 전자서명이라 함은, 서명자를 확인하고 서명자가 당해 전자문서에 서명했다는 사실을 나타내는데 이용하려고, 특정 전자문서에 첨부되거나 논리적으로 결합된 전자적 형태의 정보를 말한다.[1] 전자 서명의 순서는 다음과 같이 이루어진다. Private Key를 이용해서 정보를 암호화한 후 Public Key와 함께 암호화된 정보를 전송한다. 암호화된 정보를 받은 상대방은 받은 Public Key로 암호화된 정보를 복호화한다. 이렇게 Public Key를 보냄으로써 Public Key가 노출되어 의도적으로 정보가 유출될 수 있지만, 이방식으로 신원을 증명한다. 그 이유는 공개키로 암호화된 정보를 풀 수 있다는 것은 개인키로 암호화했다는 말이고 즉, 쌍으로 이루어진 키로만 암호화 복호화가 가능한 공개키 기법..
대칭키와 비대칭키 대칭키와 비대칭키방식은 평문을 암호화와 복호화할때 쓰이는 키의 종류로 구분한다. 대칭키 대칭키 암호화 기법은 암호화와 복호화를 하나의 동일한 Private Key로만 수행한다. 대칭키의 대표적인 종류는 AES와 DES가 있다. 예를들어, A와 B가 대칭키 기법을 이용하여 데이터를 주고 받을 때 동일한 Private Key를 A와 B가 공유하게된다. 그럼 A나 B는 하나의 Private Key를 가지고 암호화 복호화를한다. 그 과정을 살펴보자. 대칭키를 이용하여 A가 B에게 평문 T를 보낸다 가정 대칭키는 비교적 간단하게 암호화하여 전송할 수 있지만 대칭키를 Shared하기 때문에 평문이 안전하지가 않다. 즉, 보안성이 떨어진다. 비대칭키 비대칭키 암호화 기법은 공개키 암호화 기법이라고도..
개발환경 Blockchain client : Ganache Wallet : Metamask Smart Contract : Remix 이번시간에도 마찬가지로 Ganache를 실행하고 두개의(1번 Account, 2번 Account) Account를 Metamask에 등록하고 Smartcontract를 통해 ERC20 토큰을 발행한다. 그리고 2번 Account로 토큰을 구매해본다. Account 등록 아래 그림처럼 두개의 public key가 있는 두개의 Account를 Metamask에 등록한다. Smartcontract 배포 ERC20 기반의 토큰 발행 contract는 다음과 같다. pragma solidity ^0.4.4; /*erc20 interface*/ contract Token { funct..