저자: OneKey 중국어 출처: X, @OneKeyCN
최근 해외 암호화폐 업계에서 이 트윗이 화제가 되고 있습니다. 최근 해외 암호화폐 업계에서 화제가 된 트윗은 다음과 같습니다. "31단계 SHA-256 충돌을 위한 최초의 실용적인 SHA-256 충돌"로, 학술회의의 파워포인트 발표 사진과 함께 올라와 있습니다. 왼쪽;">솔라나의 공동 창업자 톨리는 이런 강세장에서만 이런 뉴스가 나올 수 있다고 말하는 듯 "우리는 돌아왔다"라는 트윗을 리트윗했습니다.
그리고 실제로 이 돌파구는 암호화폐의 총 시가총액이 이전 최고치인 3조 달러로 돌아가기 직전인 시점에 나왔습니다. SHA-256이 실제로 크랙되면 모든 종류의 암호화폐가 함께 하락할 것이고, 우리는 바지만 걸친 채로 남게 될 것입니다.
이 돌파구는 진짜일까요?
정답은 '네, 사실입니다. SHA-256 충돌 공격의 신기록을 경신한 것은 맞습니다.
이 논문은 암호화 분야의 3대 주요 컨퍼런스 중 하나인 EUROCRYPT 2024에서 채택되었습니다. 공식 EUROCRYPT 웹사이트(https://eurocrypt.iacr.org/2024/acceptedpapers.php...)에서 확인할 수 있습니다. 그리고 원본 논문은 여기(https://eprint.iacr.org/2024/349)에서 New라는 제목으로 볼 수 있습니다. SHA-2에 대한 충돌 공격 기록".
이 획기적인 발견을 어떻게 이해할 수 있을까요?
많은 암호학이 관련되어 있지만, 다음은 가능한 한 쉬운 언어로 이해를 돕고 원리에 대해 너무 깊이 다루지 않겠습니다.
가장 먼저 알아야 할 것은 SHA-256이 무엇인지입니다.
SHA-256은 논문 제목에서 세분화된 SHA-2 알고리즘 계열에 속하는 암호화 알고리즘입니다. 암호화, 디지털 서명, 데이터 무결성 검증 등의 분야에서 널리 사용되며 현대 디지털 보안의 초석입니다.
블록체인 업계에서는 채굴, 개인키 보안, L2 데이터 분배(DA) 등 거의 모든 곳에서 '기둥'의 존재라고 할 수 있습니다.
이 알고리즘은 단순히 임의 길이의 입력을 고정된 길이의 출력(해시)으로 변환하는 것입니다. 즉, 입력이 아무리 길거나 짧아도 알고리즘이 출력하는 해시값은 항상 256비트(32바이트)입니다. 또한 입력에 매우 민감하여 입력이 조금만 변경되어도 매우 다른 해시값이 생성됩니다. 또한 비가역 함수이기 때문에 입력에 따라 출력을 구하기는 쉽지만, 출력에 따라 입력을 구하는 것은 효율적이지 않습니다.
예를 들어, "OneKey Koppel: 암호화 보안 요약"이라는 텍스트는 SHA-256으로 암호화하여 "" C612FD61C200F9C7DC16565A53C0F96A4DEBD64C21EB40AE5283D4D36433A24A".
"TwoKey 과학: 패스 시 암호화 보안 2점"과 같이 내부의 내용을 몰래 조금만 변경하면 됩니다. 이 시점에서 암호화하면 "C3C0E108AD1417259E97E8E913459B9CECD67C3BD20D8DFE938214567FB4EB08"이 되어 완전히 다른 결과가 나옵니다.
이 관계는 사람의 지문이나 홍채와 같습니다. 사람마다 고유한 지문이나 홍채가 있기 때문에 이를 비밀번호로 인증에 사용할 수 있으며, SHA-256 해시는 데이터의 '지문'입니다.
SHA-256 충돌 공격의 핵심은 한 데이터의 지문을 찾은 다음 공격할 다른 데이터를 찾아 동일한 지문을 생성한 다음 데이터를 위조하는 것입니다.
SHA-256에서 암호화 프로세스는 64단계 라운드 로빈 암호화 계산으로, 알고리즘 설계자가 보안과 효율성의 균형을 고려하여 선택한 방식입니다.
SHA-256의 첫 31단계에서 충돌이 발견되었다는 것은 논문 작성자가 특별한 방법으로 두 개의 다른 입력을 발견하여 첫 31단계 이후 내부 중간 상태에서 동일한 값을 생성하여 나머지 33단계 이후 동일한 해시 값을 생성할 확률이 더 높았다는 의미입니다. 나머지 33단계 이후에도 동일한 해시 값 출력을 생성할 확률이 높습니다.
물론 충돌 조건을 만족하는 입력 쌍을 찾는 난이도는 일반적으로 공격 단계 수가 증가함에 따라 기하급수적으로 증가합니다. 단계가 추가될 때마다 공격 충돌 분석에서 더 많은 내부 상태 변화와 전파 효과를 고려해야 하므로 계산과 분석의 복잡성이 크게 증가하기 때문입니다. 따라서 사람들은 크래킹의 절반만 해냈다고 생각할 수 있지만 실제로는 훨씬 더 멀었습니다.
또한 비트코인 블록의 해시값은 블록 헤더 정보에 대해 두 번의 SHA-256 연산을 수행하여 얻어지며, 개인키에서 공개키와 주소를 생성하는 과정에서는 타원곡선 디지털 서명 알고리즘(ECDSA)인 RIPEMD-160 알고리즘을 사용합니다. 따라서 비트코인 블록 정보를 마음대로 변조하고 개인 키를 공격하기 위해서는 아직 갈 길이 멀었습니다.
비트코인 채굴은 기본적으로 특정 조건을 충족하는 해시값을 찾는 과정이며, 이 과정에서 다양한 논스 값을 반복적으로 시도해야 합니다. 조건을 만족하는 해시값 충돌을 더 쉽게 찾을 수 있어야만 이론적으로 채굴 난이도를 낮출 수 있고, 이는 비트코인의 작업 증명(PoW) 메커니즘에 영향을 미칠 수 있습니다.
SHA-256에 대한 충돌 공격이 성공했다고 해서 채굴 난이도에 직접적인 영향을 미칠 수 있는 것은 아니며, 충돌 공격이 특정 해시값을 찾는 과정을 어떻게든 가속화할 수 없다면 채굴에 직접적인 영향은 제한적일 것입니다.
암호가 깨지면 어떻게 되나요?
이 경우 디지털 보안에 대한 전 세계적인 신뢰 위기로 이어질 수밖에 없습니다.
웹2.0 보안이 가장 먼저 무너지고 모든 종류의 은행 시스템과 정부 기관이 긴급 중단될 것입니다. 3조 달러에 달하는 암호화폐의 시가총액은 아마도 무의미해질 것입니다.
물론 좋은 점은 암호화폐는 포크와 업그레이드를 거듭한다는 것입니다. 비트코인의 경우, 이 끔찍한 시나리오는 비트코인 개선 제안(BIP)과 하드포크를 통해 핵심 암호화폐 알고리즘을 업그레이드해야 합니다. 이러한 문제는 오랫동안 커뮤니티 내에서 널리 논의되어 왔으며 많은 대안이 있습니다. 양자 컴퓨팅이 획기적으로 발전하더라도 그 시점에 적절한 양자 내성 알고리즘으로 업그레이드할 수 있을 것입니다.
요약하자면
혁신이 있었지만 많지는 않았습니다.
우리는 이전 연구에서 조금 더 나아갔고, 이는 확실히 학문적으로 획기적이며 매우 주목할 만한 성과입니다.
그럼에도 불구하고, 아직 치명적인 균열과는 거리가 멀며 단기적으로 암호화폐에 미치는 영향은 제한적일 것으로 보입니다. 비트코인을 비롯한 모든 종류의 암호화폐는 여전히 안전합니다.
보안이 중요한 디지털 시스템에서는 새로운 암호화 발견에 대한 경각심을 갖는 것이 중요합니다. 실제로 SHA-256 알고리즘의 심각한 약점을 증명하는 발견이 있다면, 신뢰 상실과 보안 프로토콜 변경 등 비트코인에 중대한 영향을 미칠 수 있습니다. 저희는 비트코인 개발자와 커뮤니티 구성원 모두가 상황을 면밀히 모니터링하고 필요한 경우 보안 업그레이드를 준비할 것이라 믿습니다.