블록체인 해시 함수 hash 뜻 SHA-256, Keccak (SHA-3)

블록체인을 공부하다보면 해시라는 단어가 계속해서 반복적으로 나오는데요. 해시 뜻과 해시 함수가 어떻게 블록체인에서 중요한 역할을 하는지 알아보도록 할게요.

블록체인 해시 함수 hash

해시 뜻 [hash]

해시(Hash)는 입력된 데이터를 일정한 길이의 고유한 문자열을 생성하는 프로세스에요.

이러한 과정은 해시 함수(Hash Function)를 통해 이루어집니다.

해시 함수는 입력값이 무엇이든 일정한 길이의 해시값을 만들어주며 이 해시값은 데이터의 고유한 지문 역할을 해요.

해시 함수 특성

  • 일관성: 같은 입력값에는 항상 같은 해시값을 생성해요
  • 고유성: 서로 다른 입력값들은 가능한 한 다른 해시값을 생성해요
  • 비가역성: 해시값을 원래의 입력값으로 역추적할 수 없어요
  • 충돌 저항성: 서로 다른 입력값들이 같은 해시값을 생성할 확률이 매우 낮아요.

블록체인 해시 역할

블록체인에서 각 블록은 여러개의 정보를 갖고 있는데요 쉽게 비유해서 설명하면 블록에는 잠금장치가 달려있는데 이러한 잠금장치가 해시라고 볼 수 있어요.

해시값은 마치 비밀번호처럼 원래 데이터를 다른 사람에게 알리지 않으면서도, 그 데이터가 맞는지 아닌지를 확인할 수 있게 해줘요

데이터를 가진 블록은 고유한 해시코드(해시값)를 가지고 있는데 블록 내용이 바뀌면 해시도 완전히 달라지게 되고, 연결된 다른 블록들도 영향을 받아 어떤 특정한 블록이 변조가 된다면 전체 블록들이 알 수 있어 데이터를 안전하게 지킬 수 있도록 해줍니다.

즉, 블록체인에서 해시는 블록의 데이터를 안전하게 지키고 위조 및 변경을 감지하는 데 중요한 역할을 해요.

해시는 블록의 데이터를 보호하는 보안 장치로 블록이 변하지 않았는지 확인하는 데 사용돼요.

블록의 검증: 블록체인에서는 새로운 블록이 추가될 때, 해당 블록의 해시 값을 통해 거래의 유효성을 검증합니다. 블록을 추가하기 위해서는, 네트워크의 참여자들이 블록의 해시 값을 검토하고 승인해야 합니다. 이 과정에서 해시 값은 블록의 데이터와 무결성을 확인하는 데 사용됩니다.

블록체인 해시 함수 종류와 예시

블록체인에서 주로 사용되는 해시함수 2가지만 설명드려볼게요.

SHA-256 (Secure Hash Algorithm 256-bit)

  • 미국 국가안보국(NSA)에서 만들어졌고 미국 국립표준기술연구소(NIST)에서 표준으로 채택했어요.
  • 데이터를 고정된 크기의 블록으로 나누며 각 블록을 처리한 후에 출력값을 다음 블록 입력값으로 사용해요
  • 비트코인 같은 블록체인 시스템에서 사용되는 해시함수인데요. 항상 고정된 256비트 길이의 해시값을 생성하며, 단방향으로 원래 입력 데이터를 되찾는 것이 거의 불가능해 보안성이 높아요.
  • 예시: 입력값이 “good morning”일 때 생성된 SHA-256 해시값은cdf71dea7d7741a2b6f021f3dd344f75c8333988f547866a8fbf28f064cf7c78 입니다.
  • 두 개의 서로 다른 입력이 같은 해시값을 생성하는 충돌이 발생할 확률이 매우 낮아요.
  • 고속으로 연산이 가능해 다양한 어플리케이션에서 사용돼요
  • 현재까지 알려진 암호분석 기법으로는 현실적인 시간 내에 해시를 역산하기가 매우 어려워 보안성이 높아요.

Keccak (SHA-3):

  • SHA-3은 흡수(하고 짜내기 과정을 통해 최종 해시값을 생성하는 스펀지 함수 구조를 사용해요. 이러한 스펀지 구조는 내부 상태를 더 자유롭게 조작할 수 있어 다양한 용도로 사용될 수 있는 유연한 구조를 가져요.
  • SHA-3는 여러 출력 크기(224비트, 256비트, 384비트, 512비트)를 지원하여 사용자가 필요에 따라 더 긴 해시값을 선택할 수 있어요
  • 이더리움과 같은 블록체인 시스템에서 사용돼요
  • 스펀지함수를 사용하는 새로운 해시함수로, SHA-256보다 보안성이 높으며 특정 환경에서 더 효율적일 수 있어요.

해시의 보안적 측면


해시는 데이터의 보안성을 높이는 중요한 요소입니다. 블록체인에서 해시 함수는 데이터가 무단으로 변경되지 않도록 방지하며, 해시 값이 변경되면 이를 즉시 감지할 수 있습니다.

해시함수의 보안적 특성 덕분에 블록체인은 높은 수준의 데이터 무결성을 유지할 수 있습니다.

마무리

블록체인 해시 함수는 데이터를 고유한 코드로 변환하여 블록체인의 데이터가 안전하게 유지되도록 돕고, 누구도 함부로 데이터를 바꾸지 못하게 하는 중요한 역할을 해요.

즉, 블록체인에서 거래와 블록의 보안을 강화하는 역할을 해요. 해시값은 데이터를 암호화된 형태로 변환하여 외부의 공격으로부터 보호하게 됩니다.

해시값을 기반으로 데이터가 무단으로 수정되었는 지를 확인할 수 있으며, 해시함수의 특성 덕분에 데이터의 무결성을 검증할 수 있습니다.

관련 글

그레이스케일 포트폴리오 실시간 보는법 3가지로 분류 투자 코인 총정리

비상장 코인 거래 방법 코인 ico 하는법 일정 사이트

error: Content is protected !!