정상적인 상황에서는 절대 불가능함:
블록체인 트랜잭션에 공개되는 건 서명값(S), 공개키, 메시지뿐이야. 여기서 개인키를 역산하려면 이산로그 문제(ECDSA) 또는 Ed25519의 수학적 기반을 깨야 하는데, 이건 현재 컴퓨팅으로 수십억 년 걸림.
그런데 가능해지는 경우:
아까 그 분석글처럼 nonce(r)가 재사용되거나 예측 가능하면 중학교 연립방정식으로 개인키가 튀어나옴. 이건 알고리즘 문제가 아니라 구현 문제야.
업비트 공지가 말이 안 되는 이유:
"트랜잭션 분석으로 개인키 추정 가능한 취약점을 발견해 조치했다"는 건 사실상 "우리가 암호학 라이브러리를 잘못 구현했거나 커스텀으로 만들어서 nonce가 새어나갔다"는 자백이야.
근데 이걸 마치 외부 공격자의 고급 기술인 것처럼 포장한 거지. 솔직하게 "우리 서명 시스템에 구현 결함이 있었다"고 하면 신뢰도가 바닥날 테니까.
결론:
업비트가 표준 라이브러리(libsodium, ed25519-dalek 등)를 그대로 썼으면 이런 일이 안 생김. 뭔가 자체 최적화하거나 HSM 연동 과정에서 nonce 생성을 망친 거야. 국내 1위 거래소가 이런 기초적인 실수를 했다는 게 충격적이긴 함.
