블록체인 학습 콘텐츠

SHA256 Hash(해시) 암호화

위 상자를 살펴보자.

우선 해쉬 암호화에 대해서 설명하자면, 특정 연산들의 조합(예를 들어서 and, or, xor 와 같은 연산)을 통해서 암호를 만든다.

동일한 입력 값을 입력하면 동일한 암호 값이 나오는 특징을 가진다.

암호, 즉 결과값을 가지고 입력값을 알 수 없다.

이론적으로 모든 입력값을 넣어보는 것으로 암호 결과 값을 역추적 할 수 있지만,

모든 값을 입력하는 것은 매우 힘든 일이기 때문에 해독에서 안전한 해시 암호 알고리즘이 존재하는 것이다.

SHA256은 해시 암호 알고리즘 종류 중 하나로 현재 다른 알고리즘에 비해 비교적 안전하다고 평가받는 해시 암호 알고리즘의 이름이다.

기본적이고, 널리 알려진 블록체인 기술에는 이 SHA256 해시 암호 알고리즘이 적용이 되어 있다.

한마디로 SHA256 해시 암호 알고리즘은 어떠한 데이터 값을 암호화 시키는 알고리즘인 것 이다.


SHA256 Hash 활용

해시 암호 알고리즘은 원본을 증명하는 데 사용 된다.

예를 들어서 위 상자에 "철수가 빌려간 돈: 1000원" 이라는 기록이 있다고하자.

이때 기록의 해시값인 "747103541fa069f9c3219c7c550be73b912f178bbe7bb9715bae5c05bc2fa2bd"을 미리 저장해두었을 때

철수가 빌려간 돈을 100원으로 수정해서 기록을 "철수가 빌려간 돈: 100원"이라고 위조 했을 때

우리는 처음 저장해둔 해시값을 현재 기록의 해시값과 비교할 수 있다.

처음 해시값과 나중의 해시값이 같다면 기록이 전혀 바뀌지 않았다. 위조되지 않았다고 알 수 있다.

해시값이 전과 후가 다르다면 기록이 위조 되었다는 것을 알 수 있다.

이렇게 해시 암호 알고리즘을 이용하여 데이터나 기록의 위,변조 사실을 파악할 수 있다.

블록체인에서 블록이 위조 되지 않은 원본임을 확인하는 데 이 해시 암호 알고리즘이 사용된다.