Foundations of Blockchain 번역
컨센서스(합의)는 다수의 node가 동기화 상태를 유지하는 것입니다. 컨센서스는 unreliability(신뢰 불필요성)이 필요합니다. 네트워크 문제(딜레이 등), 악의적인 행위자, 버그가 있는 노드 등이 있어도 무관하게 작동해야 한다는 뜻입니다. 컨센서스를 논의하기 위해 앞으로 있을 모든 포스트는 아래를 전제하고 진행합니다. 인터넷 환경을 전제합니다. 물론 네트워크 지연, DOS 공격이 있다는 점을 인정하지만 그럼에도 여전히, 우리가 개발하는 모든 것은 인터넷 위에 있을 것입니다. 암호학을 전제합니다. 컨센서스의 논의에는 디지털 서명과 해시 함수가 필요하기 때문입니다. (이 둘은 암호학을 요구합니다.) 디지털 서명 종이 서류에 서명하는 것과 유사합니다. 3가지 알고리즘을 기반으로 정의됩니다. 여기서 p..
스택은 위로 층층이 쌓아올리는 것이니까, 예컨데 비트코인도 인터넷이 없으면 존재가 불가능하다는 식으로 이해해도 되지 않을까 생각해요. 즉 높은 layer(층)에 있는 기술 스택은, 보다 낮은 layer의 기술 스택에 의존한다는 의미가 있어요. 다만 그 layer을 나누는 기준은 지금도 사람마다 다르고, 시대에 따라서도 다르다고 합니다. Tim Roughgarden의 강의를 따라가는 만큼, 제 블로그에서도 다음과 같이 구분하려고 합니다. layer 0는 인터넷입니다. 보통 인터넷의 존재를 당연하게 여기곤 하지만, network outage로 인한 지연이나 공격 등 완전할 수 없음(semi-reliable)을 유념해야 합니다. layer 1는 블록체인 메인넷입니다. Consensus layer(분산된 여러 ..
이 블로그 포스트 시리즈는 콜롬비아 대학교의 Computer Science 교수이자, A16Z(*안데르센 호로위츠가 설립한 실리콘밸리 최고로 꼽히는 VC. 근래에는 가상자산에 대한 투자에 힘을 싣고 있음.)의 research partner로 활동하는 Tim Roughgarden의 Foundations of Blockchain을 보고 정리하는 글입니다. 왜 쓰게 되었나? 블로그를 여태 방치했습니다. 여러 이유가 있지만, 반드시 블로그를 써야하는 이유를 찾지 못했기 때문입니다. 하지만 이 영상 강의는 한 번 끝까지 포스팅을 마쳐보고자 하는 이유가 있습니다. " 근본 넘치는 무료 강의. 하지만 한글은 커녕 영어로도 여기에 나오는 용어의 구글링 결과가 안 나온다니... 여기서 근본 넘친다는 말은 Computer..