언어 바꾸기English
이전 목록

random.bytes()는 실행되지만 작동하지 않을 때 | Hacker News

When random.bytes() runs but doesn't work | Hacker News

TL;DR AI

핵심 요약

1분
  1. Coldcard 지갑의 RNG 버그는 단순한 플래그 실수가 아니라, MicroPython의 하드웨어 난수 경로를 자체 코드로 바꾸는 큰 변경 과정에서 생겼다.

  2. 정의 여부를 확인하는 체크와 값 비교가 뒤섞이면서, 의도한 STM32 TRNG 대체 경로가 활성화되지 않았다.

  3. 그 결과 보안이 약한 PRNG 기반 폴백이 사용될 수 있었고, 테스트에서도 약한 난수와 진짜 난수가 비슷해 보여 문제를 알아채기 어려웠다.

  4. 암호화 장치는 진짜 난수가 없을 때 안전하게 실패해야 하며, 숨은 PRNG 폴백은 키 생성과 전체 보안을 훼손할 수 있다.

원문 보기