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

블록체인을 이해하기 위한 배경지식 - 단방향 해시함수, 일방향 해시함수

게임이 더 좋아 2021. 4. 19. 22:22
반응형
728x170

[컴퓨터(Computer Science & Engineering)/컴퓨터보안(Computer Security)] - 컴퓨터보안 : 일방향 해시함수

 

사실 이미 글을 썼다.

참고하자.

 

더 알아보자

 


 

블록체인에서 단방향 해시함수가 어떻게 쓰이느냐?

 

디지털 문서가 조금이라도 손상되면 즉시 감지할 수 있는 특성, 무결성(integrity)이 보장되기 때문에

어떤 디지털 문서를 가리키는 ID로 사용된다.

 

 


 

이전의 글에서 SHA-1은 수명이 다 되어 죽었다고 말했다.

현재 2021년 봄, 블록체인에서 현재 많이 사용되는 알고리즘은 SHA2 - 256이다.

 

우선 해시함수가 뭔지부터 알아보자.

 

함수라는 이름에 걸맞게

함수에 임의의 입력값을 넣었을 때 값을 반환한다.

하지만 해시 함수는 어떤 값을 반환할 지 예상할 수 없다.

** 해시는 임의 데이터를 고정 길이 데이터로 매핑한다는 뜻이다.

이런 식이다.

 

 

첫 번재와 세 번째를 보면 알듯이 BlockChain이라는 단어가 똑같이 존재해도 값이 다르게 나온다.

**하지만 같은 값을 넣으면 같은 값을 얻는다.

-> 이게 무결성을 보장한다.

 

또한 입력값이 어떻게 되든 자릿수가 일정한 값을 가진다.

위와 같이 16진수 64자리 값을 가진다.

 


 

SHA-1이 죽은 이유는 파일을 압축하는 것과 같이 파일의 크기에 대해 변형을 가하면 충돌되기 때문이다.

 

무결성을 위해서라도 해시함수는 입력 값이 다른데 출력 값이 같은 경우가 있으면 안된다.

때문에 해시 알고리즘은 발전하고 있다.

** 좋은 해시함수는 충돌 저항성이 높은 것을 말한다.

 

현재 SHA-3도 나와있으며 보안강도가 더 높을 것으로 예상하고는 있다.

 

다음 글에서는 공개 키 암호와 해시 함수를 이용한 전자 서명을 알아보자

728x90
반응형
그리드형