퍼블릭 블록체인(Public Blockchain)
누구나 참여할 수 있는, 누구에게나 공개되어 있는 네트워크.
프라이빗 블록체인(Private Blcokchain)
중앙기관의 허가를 받은 조직이나 특정인들만 참여할 수 있는 폐쇄적 네트워크.
컨소시엄 블록체인(Consortium Blockchain)
컨소시엄에 소속되어 있는 참여자들만 접근이 가능한 네트워크.
분산원장기술(DLT)
↔️ 중앙집중원장,
분산화 되어있는 네트워크에서 참여자들이 공동으로 기록하고 관리하는 기술
트랜잭션(Transaction)
블록체인에어싀 하나의 거래 로그, 단위 Tx
ACID...?
트랜잭션이 발생하였을 때의 안정성을 보장할 수 있는 성질.
원자성, 일관성, 고립성, 지속성
블록체인은 탈중앙화 시스템이지만, 시스템이 유지되기 위해서는
채굴(Mining)과 노드(Node)가 존재한다.
너무나도 많다..
대표적으로 POW, POS, DPOS, BFT, PBFT 정도가 있다. (자세히 보기)
Wallet 에는 개인키와 공개키를 저장하고 키와 관련된 모든 트랜잭션을 담고있다.
비트코인은 거래기록을 블록체인에 저장하는 분산 금융 시스템이다.
이더리움은 스마트컨트랙트 라는 기술을 통해 제3자의 신뢰 문제를 해결하는 시스템이다.
거버넌스에서의 발의된 제안은 정당한 투표를 통해 통과되며,
다수의 표를 얻었으므로 민주주의적인 생태계를 발전을 가져올 수 있다.
공개 범위에 따라 나뉜다.
하이브리드 블록체인은 퍼블릭 블록체인과 프라이빗을 모두 사용하여, 장점을 극대화 시킨것을 말한다.
이중지불 문제를 해결하기 위해서이다.
하이퍼레저 : 허가형 프라이빗 블록체인 로써, 탈중앙화와는 거리가 좀 있다.
체인마다 갖고있는 특성이 다르고, 사용도에 따라서 더 나은 합의 알고리즘이 있기 때문에
블록체인에서는 분산원장 기술을 이용하여, 제 3자 없이 데이터가 분산되어 관리 된다.
이더리움에서 nonce란 계정에서 보내는 트랜잭션에 할당 된 번호이며, 이중 지불 문제를 해결한다.
비트코인에서는 utxo를 통해서 이중 지불 문제를 해결한다.
PoW : 누가 제일 많이 일 했는가?
PoS : 누가 제일 많이 갖고 있는가?
DPos 는 대표 위임자를 선출하여 의사결정을 수행하는 것 (반장선거)
PBFT 는 비잔틴 장군 장애 허용.
일부 노드들의 의견이 서로 다르더라도 어느정도 이상의 의견이 동의가 된다면 합의가 된 것으로 본다.
private-key(32byte) 생성 하여 public-key(64byte) 유도
public-key에서 keccak-256 hash를 적용하여
계산된 hash값의 하위 20byte를 이더리움 계정 주소로 사용한다.
미출력 트랜잭션 값
비트코인 - C++
이더리움 - Rust
// Solidity 는 이더리움에서의 스마트 컨트랙트를 구현할 때 사용되는 언어임
비트코인은 주소만 갖고있고, 이더리움은 어카운트 기반으로 설계되었다.
http://wiki.hash.kr/index.php/%ED%95%A9%EC%9D%98_%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98