비트코인

    블록체인 암호학- 전자서명

    전자서명 전자서명은 서명자가 전자문서에 서명했다는 사실을 확인할 수 있는 정보이다. 키 생성 알고리즘, 서명 알고리즘, 검증 알고리즘으로 구성된다. 키 생성 알고리즘 전자서명을 생성하는 서명키와 서명을 확인하는 검증키를 생성한다. 서명키와 검증키는 개인 별로 다르게 만들어진다. 서명키는 서명하는 본인만 아는 비밀정보이다. 검증키는 모든 이가 아는 공개된 정보이다. 서명키로부터 검증키를 도출할 수는 있지만, 검증키로부터 서명키를 계산할 수는 없다. 서명 알고리즘 문서를 받아 서명키를 사용해 서명값을 계산한다. 문서의 크기가 크다면 알고리즘 내부에서 해시 함수를 사용해 크기를 줄인다. 서명자만이 알고 있는 서명키를 사용해 전자서명을 만든다. 검증 알고리즘 문서와 서명값을 입력으로 받고, 검증키를 사용해 서명..

    블록체인 암호학 - 작업 증명(PoW), 양자 안정성, 머클 해시 트리

    작업 증명(Proof of Work) 합의 알고리즘 많은 분산 시스템에서는 합의 알고리즘을 통해 일을 처리한다. 합의란 다수의 참여자가 적절한 합의 방법을 이용해 통일된 의사결정을 내리기 위해 사용하는 알고리즘을 말한다. 상태 기계 복제(SMR, State machine Replication) 상태 기계가 같은 상태로 시작하면, 처리가 정상적으로 이루어졌을 경우 모두 같은 상태를 가지게 된다. SMR같은 시스템은 일부가 고장나거나 악의적인 행동을 보여도 전체 시스템은 정상적으로 동작한다고 보장해야 한다. CFT(Crash Fault Tolerant) 서버가 단순히 고장난 형태에 대응할 수 있는 알고리즘이다. BFT(Bizantine fault Tolerant) 서버가 악의적인 행동을 보일 때 대응할 수 ..