작업증명이란 한 사람이 ID를 여러 개 만들어 각각 블록을 만들고, 여러 사람의 합의인 것처럼 꾸며낼 가능성을 막기 위해 시간과 노력을 들여 암호를 구하게 한 것이다. 그는 입력값이 한 글자만 달라도 예측 불가능한 출력값을 만드는 해시함수의 기술을 사용했다. 비트코인에서도 거래데이터를 해시와 논스를 이용해 출력값을 만든다.
여기서 작업증명이란 개념이 중요하다. 사토시 나카모토는 한 사람이 ID를 여러 개 만들어 각각 블록을 만들고, 여러 사람의 합의인 것처럼 꾸며낼 가능성을 막기 위해 한가지 장치를 만들었다. 블록을 만들 때마다 시간과 노력을 많이 들여 암호를 구하도록한 것이다. 이를 작업증명이라고 한다. 그는 여기에 해시 함수(hash function)라는 암호 기술을 사용했다. 해시 함수는 입력값이 단 한 글자만 달라져도 전혀 예측할 수 없는 출력값을 만드는 함수다. 이 때문에 출력된 결과값만을 가지고 입력값을 다시 찾아 볼 수 없는 특징이 있다. 비트코인에서는 일단 거래 데이터 모음을 해시 함수를 이용해 일정 길이의 문자와 숫자의 결합인 해시로 바꾼다. 그리고 각각의 이전 블록의 해시와 이번 블록의 거래 내역을 해시로 바꾼 것, 그리고 논스(number used once, nonce)라는 임의의 숫자를 조합하여 새로운 해시 출력값을 만든다. 이 해시 결과는 맨 앞이 일 개수의 0으로 시작하여야 한다는 조건이 있는데, 해시 함수는 출력값으로 입력값을 알 수 없으므로 조건을 만족하는 해시를 구하기 위해 논스에 무작위 숫자를 하나하나 대입하여야 한다. 여기에는 많은 컴퓨팅 파워와 시간이 들어간다.