컴퓨터, IT 지식/블록체인

블록체인을 이해하기 위한 배경지식 - 타임스탬프

게임이 더 좋아 2021. 4. 20. 20:31
반응형
728x170

 

타임스탬프는 말 그대로 시간 도장..? ㅋㅋㅋ

뭔지는 몰라도 들으면 지정된 시간을 찍어주는 도구란 것이라고 짐작이 간다.

알아보자

 


 

타임스탬프는 앞서 말한 전자 서명과 전자 인증서 같이 어떤 암호 기술을 이용하는 것은 아니다.

다만 전자 서명에서 시간을 근거로 디지털 문서가 존재한다는 것을 증명하는데 쓰인다.

물론 블록체인에서도 쓰인다.

 


 

타임스탬프는 파일을 새로 만들거나 내용을 변경했을 때 OS가 자동으로 부여하는 시각이다.

**시각은 어느 순간을 말한다

++ 이 시각은 협정 세계시(UTC) 1970년 1월 1일 0시 0분 0초를 기준으로 관리한다.

 

 

?? 근데 나라마다 시간이 다른데 어떻게.. ? 

전 세계의 컴퓨터들은 독립적으로 작동하므로 시각도 독립적으로 관리해야한다.

물론 네트워크에 연결된 컴퓨터의 시각을 맞추려고 네트워크 타임 프로토콜(NTP)가 있지만

네트워크 지연 등 노드 각각의 타임스탬프를 맞추기는 어렵다.

 

즉, 블록체인같은 분산 네트워크 환경에서 노드가 각각 타임스탬프가 정확해야하는데...? 맞추기 어렵다고??

 


 

???? 뭐야 그럼 쓸모없는거아냐..???

++ 하지만 평균과 비슷한 원리로 정밀도와 정확성을 보장한다.

-> 최빈도, 평균값을 택하는 것과 비슷한 방법이다.

 

사실 타임스탬프에는 종류가 있다.

보통

1)타임스탬프는 파일의 생성,수정 시각처럼 OS가 부여하는 것과

2)전자 서명으로 시각 증명을 보장하는 것이 있다.

++다른 타임스탬프도 있긴 하다.

 

다행히 블록체인의 타임스탬프는 분산 타임스탬프 기술을 사용한다.

아래와 같다.

 

 

개별 트랜잭션에 포함된 타임스탬프의 정밀도는 낮지만 -> 네트워크 노드 각각이 관리하는 시계는 신뢰도가 없음

여러 트랜잭션의 타임스탬프를 "블록" 단위로 비교한 후 비슷한 시각의 타임스탬프를 선택하는 방법을 사용하면 신뢰할 수 있는 정밀도와 정확성을 보장할 수 있다.

 


 

??? 진짜 그게 정밀함을 보장한다고???

 

"블록" 단위로 비교한다고 했다.

일정 기간 안에 모인 수백, 수천 개의 데이터에서 타임스탬프의 평균을 내면 정확한 시각에 가까울 것이다.

(물론 각각의 시계가 정확하다는 가정하에 네트워크 지연시간만 포함되니까)

 

'

 

** 극단적으로 차이나는 시간은 제외하고 계산해야 정확성이 높아진다.

물론 당연히 완벽하지 않다.

 

그래도 여러 개의 타임스탬프와 해시 값이 있는 트랜잭션이 블록에 포함된다면 변조하기 어렵다.

정확한 시각은 아니더라도 비슷한 시각에 여러개가 기록되었다면

타임스탬프는 해당 데이터의 생성 시점을 알 수 있는 증거가 되는 것이다.

때문에 타임스탬프는 다행히 파일 생성 시점을 보장할 수 있다.

 


 

우리가 지금까지 배운 지식으로 어떻게 보안을 보장하느냐? 를 아래와 같이 정리할 수 있다.

 

반응형
그리드형