Security/Contract

    비트코인 공격 방식

    이중 지불(Double Spending)이중 지불 문제는 단일 화폐 단위가 두번(이중) 지출 되는것을 의미합니다. 기존의 중앙 제어 시스템을 가지고 있는 은행의 경우 거래가 발생한 순서대로 거래를 처리함으로써 이중 지불 문제를 아주 쉽게 해결할 수 있었습니다. 예를 들어 통장 잔액이 1,000원인 A가 B와 C에게 동시에 1,000원을 송금하였을 경우 중앙 처리 시스템에 먼저 도착한 거래를 처리하게 됩니다. 만약 B에게 송금한 거래가 먼저 들어왔다면, 해당 거래를 처리하고 잔액을 차감합니다. 그리고 C에게 송금한다는 내용은 잔금이 부족함으로 잔액 부족 오류를 출력함으로써 이중 지불 문제를 해결할 수 있었습니다. 하지만 탈 중앙화된 비트코인의 경우 전 세계적으로 연결된 네트워크에 의해 거래가 이루어짐으로 ..

    스테일 블록

    스테일 블록비트코인 프로토콜은 수 많은 노드들로 이루어진 분산화된 네트워크 환경임으로 새로운 블록이 생성되어 전파되는 과정에서 또 다른 새로운 블록이 생성될 수 있습니다. 즉, 모든 노드의 블록 체인 데이터가 일치하지 않을 수 있으며 이는 곧 메인체인의 분기가 이루어질 수 있다는 의미입니다.예를 들어 A라는 채굴자가 정당한 방법으로 새로운 블록을 생성하고 전파하는 시점에서 또 다른 채굴자 B가 새로운 블록을 생성하여 전파하였다면 채굴자 A와 가까운 주변 노드들은 A가 생성한 블록을 메인 체인에 연결하게 될 것이며, B와 가까운 주변 노드들은 B가 생성한 블록을 메인 체인에 연결하게 될 것 입니다. 위의 그림과 같이 메인 체인의 분기가 이루어졌을 경우 어떤 체인을 메인 체인으로 인정할 것인지에 관한 정의가..

    UTXO

    UTXO(Unspent transaction output)UTXO란 비트코인을 전송받기만 하고 아직 사용(소비)하지 않은 거래 기록들이며, 한마디로 표현하면 소비되지 않은 거래 기록'이라고 할 수 있겠습니다. 이해를 돕기 위해 예제를 통해서 UTXO의 발생 과정과 소멸 과정에 대해 자세히 살펴보도록 하겠습니다. 예를 들어 A라는 사용자가 B라는 사용자에게 1 BTC를 전송, C라는 사용자가 B라는 사용자에게 3 BTC를 전송하였다고 가정해보겠습니다. 위의 그림과 같이 B는 A로부터 1 BTC를 C로부터 3 BTC를 전송 받기만 하고 사용하지 않았기 때문에 B의 지갑 주소에는 A로부터 전달받은 거래 기록, C로부터 전달받은 거래 기록 두 가지의 UTXO 생성되어 지갑 주소에 논리적으로 UTXO 정보가 연결..

    대칭/비대칭 암호화

    현대 암호#이론 및 배경정수론 , 대수학 , 복잡도 이론, 확률론정보 이론, 양자이론암호 알고리즘대칭키 암호 알고리즘공개키 암호 알고리즘암호학적 해쉬 및 인증 코드 슈도 난수 생성#현대암호의 특징1) 데이터 기밀성안전하지 않은 통신 채널을 이용하여 양자간 안전한 데이터를 전송한다.2) 사용자 인증송신자가 직접 생성한 데이터인가?3) 데이터 무결성 인증통신 중간에 데이터가 위변조되지 않았는가? 4) 정수론에 기반5) 암호의 안전성이 NP-hard의 어려움에 기반 #대칭 암호화 방식암호화와 복호화에 동일한 키가 사용됩니다. 주로 데이터 통신의 암호화에 쓰입니다. #장점암호화/복호화 속도가 비대칭 알고리즘보다 빠르다통신에서는 암호/복호화 속도가 중요하므로 대칭 암호화방식이 더 적합하다.암호문의 크기가 평문보다..