SHA-256 알고리즘은 어째서 해킹이 불가능한 알고리즘이라고 하나요?

SHA-256 알고리즘은 비트코인에 사용되는 알고리즘으로 알고 있습니다.

최초 NSA에서 개발했고 현재로선 해킹이 불가능한 알고리즘이라고들 하는데요.

SHA-256 알고리즘은 어째서 해킹이 불가능한 알고리즘이라고 하나요?

    1개의 답변이 있어요!

    • SHA-256은 256비트로 구성되어 64자리 문자열을 반환하며

      기존에 널리 사용하던 MD5는 32자리 문자열을 반환한다는 점과 비교했을 때 해시 값이 2배나 길다는 특징을 가집니다.

      단순히 산술적으로 계산했을 때 256비트는 2의 256 제곱만큼 경우의 수를 만들 수 있고 이는 개인용 컴퓨터로 무차별 대입(Brute-Forcing)을 수행해 해시 충돌 사례를 찾으려고 할 때 억겁의 시간이 소요될 정도로 큰 숫자이므로 충돌로부터 비교적 안전하다고 볼 수 있습니다.

      SHA-1은 구글 클라우드 서버를 기반으로 수행된 연구 사례에서 약 900경의 해시 연산을 통해 충돌이 발견된 적이 있는데 이러한 측면에서 SHA-1과 근본적으로 크게 다르지 않은 SHA-256이 언제까지나 안전할 것이라고 말하기는 어렵습니다.

      하지만 사실상 해시 취약점을 대상으로 하는 양자 컴퓨터가 출시되지 않는 이상 최소 근 10년가량은 안전할 것이라고 판단합니다.

      꾸준한 컴퓨터 연산 속도의 향상을 고려해도 SHA-256이 제공하는 해시 알고리즘은 산술적으로 매우 강력하기 때문입니다.

      혹여 미래에 SHA-256의 취약점이 발견되더라도 블록체인에는 하드포크(Hard Fork)와 같은 알고리즘 개선 기법들이 존재합니다. 따라서 블록체인의 기반이 되는 해시 알고리즘은 현재로서는 안전하다는 것이 전문가들의 공통된 견해입니다.

      주목할 점은 SHA-2 보다 더욱 난해한 조합을 갖는 SHA-3의 공모가 시작되었고, 미국 표준으로 확정이 되면 이를 활용하여 무차별 대입등의 해킹에 저항성을 더욱 강력히 갖게 될것으로 보입니다.