과제 블로그

[블록체인] 작업 증명 알고리즘 본문

스터디/블록체인

[블록체인] 작업 증명 알고리즘

stdzmdlw 2023. 5. 21. 22:30

[1] 작업 증명 알고리즘

작업 증명 알고리즘은 서비스 제공자가 특정 작업을 요구하고 해당 작업을 완료해야만 서비스를 이용할 수 있는 방식입니다. 이 알고리즘은 작업을 완료하는 것은 어렵지만 결과를 검증하는 것은 쉬워야 합니다. 이를 예로 들면 스도쿠가 있습니다.


작업 증명 알고리즘은 비정상적인 서비스 사용을 방지하거나 보안을 강화하는 데에 활용될 수 있습니다.

[1.1] 논스

논스는 작업 증명 알고리즘에서 사용되는 값으로, 0부터 시작해서 특정 조건을 만족하는 해시 값을 찾기 위해 1씩 증가시키며 계산합니다.

[1.2] 채굴

채굴은 작업 증명 알고리즘을 올바르게 해결했을 때 얻는 보상을 의미합니다. 채굴자는 작업 증명 알고리즘을 해결하고, 이를 통해 새로운 블록을 생성하여 보상으로 암호화폐를 받게 됩니다.

[1.3] 채굴자

블록체인에서 작업 증명 알고리즘을 해결하는 참여자를 말합니다. 채굴자는 작업 증명 알고리즘을 해결하고 새로운 블록을 생성하게 됩니다.

[1.4] 블록 간격

일반적으로 모든 채굴자가 채굴한다고 가정했을 때, 평균적으로 10분에 1회 정도 새로운 블록을 생성하도록 타깃을 조정하는 것을 의미합니다.

[2] 비트코인의 작업 증명 알고리즘

비트코인은 작업 증명 알고리즘을 사용하여 목표값 이하의 해시를 찾는 과정을 반복하며 작업을 증명하는 방식의 알고리즘을 채택하고 있습니다.

[2.1] 비트코인

비트코인은 해시 트리와 해시 체인, 타임 스탬프 서버를 구축하여 작업 증명 알고리즘을 통해 약 10분마다 새로운 블록을 생성합니다. 블록은 거래 내역의 안정성을 보장하기 위해 앞뒤 순서로 정의된 블록체인에 포함됩니다. 블록을 채굴하면 암호화폐를 소유하거나 거래할 수 있습니다.

[2.2] 나카모토 합의

비트코인에서는 탈중앙화 시스템에서 거래의 진위 여부를 구분하기 위해 합의를 이루어야 했는데, 나카모토는 상호간의 신뢰가 없더라도 합의가 가능한 환경을 조성하기 위해 작업 증명 합의 알고리즘을 채택했습니다. 이를 일반적으로 나카모토 합의라고 합니다. 현재 나카모토 합의는 블록체인과 암호화폐 시스템의 핵심 원리로 적용되어 있습니다.