Trusted Timestamping

Trusted Timestamping(이후 타임스탬핑)은 안전하게 데이터(문서 포함)의 생성 및 변조를 추적하기 위한 과정입니다. 특정 데이터가 어느 타임스탬프 시점부터 존재했음을 보증하는 데에 사용됩니다.

간단하게 생각하면 인터넷에 올린 게시글과 비슷합니다. 거기에도 마찬가지로 타임스탬프가 남고, 해당 게시글이 게시된 서버 소유자를 믿을 수 있는 한 해당 타임스탬프 시점부터 존재했음을 확신할 수 있습니다. 다만 본 문서의 타임스탬핑은 좀 더 엄격합니다.

TSA, Time Stamping Authority

위의 인터넷에 올리는 게시글과 유사한 방법입니다. 다만 아무 게시물 서버 운영자가 아닌, 신뢰할 수 있는 TSA를 사용합니다. 자세한 내용은 RFC 3161 및 새로운 ANSI ASC X9.95 Standard를 참고하세요.

원하는 데이터의 해시를 구한 뒤, TSA에게 전송합니다. TSA는 해당 해시에서 다시 해시를 구한 뒤 돌려줍니다. 이후 해당 해시를 TSA의 공개키를 사용해 검증할 수 있습니다.

블록체인을 활용한 탈중앙화 타임스탬핑

비트코인과 같은 신뢰 가능한 블록체인을 타임스탬핑에 활용할 수 있습니다. 예컨대 가장 대표적인 PoW 방식의 비트코인의 경우 블록체인 위조시 너무나 막대한 연산량이 필요하기때문에 해당 데이터를 신뢰할 수 있습니다(다만 특히 비트코인의 경우 수 시간의 오차를 발생시킬 수 있습니다, https://culubas.blogspot.com/2011/05/timejacking-bitcoin_802.html를 참고하세요).

개념은 간단합니다. 트랜잭션시 원하는 데이터의 해시값을 트랜잭션에 첨부합니다. 이후 해당 블록체인이 살아있는 한 누구나 해당 해시값의 존재를 확인해 타임스탬핑을 검증할 수 있습니다.