Claude, NIST ECDSA 시드 생성 원리 역추적… 백도어 아닌 타임스탬프 기반 확인
핵심 내용
Claude가 NIST ECDSA 시드를 30분 만에 역추적해 백도어 아닌 타임스탬프 기반 생성임을 확인했다.
자세히 보기
Anthropic의 Frontier Red Team은 내부 연구 모델인 Claude가 NIST ECDSA 곡선 시드의 생성 과정을 30분 미만으로 역추적했다고 밝혔다. 이번 조사는 FIPS 186-2 표준의 백도어 우려를 해소하며, 시드가 C 라이브러리의 lrand48 PRNG와 Unix 타임스탬프로 생성되었음을 입증했다.
시드 생성 역추적
분석 결과 P-192, P-224, P-256, P-384, P-521의 시드는 Unix 타임스탬프로 lrand48을 초기화하고 20바이트 후보 시드를 반복 생성해 만들어졌다. 예를 들어 P-256의 표준 시드는 1842번째 반복에서 나타났다. 연구진은 lrand48이 48비트 상태 중 상위 31비트만 반환하는 특성을 이용해 PRNG 유형을 식별했으며, 잘린 선형 합동 생성기의 내부 상태를 복원하기 위해 LLL (Lenstra–Lenstra–Lovász) 격자 축소 알고리즘을 사용했다.
검증 및 타임스탬프
10개의 소수 곡선 시드는 1997년 5월부터 1998년 4월 사이의 Unix 타임스탬프에 해당함을 확인했다. 4개의 이진 곡선 원시 타임스탬프는 1984년 2월로 읽혔으나, 값을 2로 나누면 P-224 실행 2주 후인 1998년 4월 17일과 일치했다. B-163의 시드는 여전히 미해결 상태다.
기준점 생성
1997년 5월에 생성된 P-192 및 ANSI X9.62 예제 곡선 등 6개 곡선의 기준점(G)은 Arjen Lenstra의 FreeLIP 패키지 내 난수 생성기에서 유래했다. 생성 절차는 다음과 같다:
- 작은 정수 시드로 시작
- 첫 7개 출력값 폐기
- 26비트 출력값으로 x좌표 후보 생성
- 곡선 위의 점을 찾을 때까지 반복
기준점 시드 값으로 P-192는 20000, prime239v1은 20420, prime239v2는 20507이 확인됐다. P-224, P-256, P-384, P-521 및 NIST 이진 곡선의 기준점 생성 방법은 여전히 불명이다.
보안 시사점
시드는 악의적 백도어가 아닌 단순한 시계 기반 PRNG의 결과로, 의도적 취약점 삽입 가능성은 낮아졌다. 건너뛴 후보 곡선(예: P-256의 후보 876)이 존재하지만, 약화된 곡선이 쉽게 발견될 증거는 없다. 시드가 'Give Bob and Jerry a raise' 같은 유머러스한 문구의 해시라는 Jerry Solinas의 주장은 반증됐다. 관련 $36,864 상금은 Internet Security Research Group에 기부됐으며, 재현 코드는 CC0 1.0 Universal 라이선스로 공개됐다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.