SHA-1은 산산조각 났다
2017년 구글과 CWI는 SHA-1 해시가 같은, 내용이 다른 두 PDF를 공개했다. 흥미로운 건 그걸 해냈다는 사실이 아니다 — 다들 12년 전부터 이걸 예견했는데도 업계는 여전히 '증거'가 나올 때까지 기다렸다는 것이다.
프로토콜, 보안 사건, 그리고 인터넷이 실제로 작동하는 방식. 147편.
2017년 구글과 CWI는 SHA-1 해시가 같은, 내용이 다른 두 PDF를 공개했다. 흥미로운 건 그걸 해냈다는 사실이 아니다 — 다들 12년 전부터 이걸 예견했는데도 업계는 여전히 '증거'가 나올 때까지 기다렸다는 것이다.
크롬은 오랫동안 OS가 신뢰하는 것을 그대로 신뢰했다. 2022년 9월 크롬은 그 질문을 멈추기 시작했고, 2024년 11월 윈도우가 여전히 신뢰하던 CA 하나를 잘라냈다.
2020년 Let's Encrypt는 인증서 300만 장을 폐기해야 할 처지였지만, 그 서버들에 '갱신하라'고 알릴 방법이 없었다. 이제 RFC 9773이 된 ACME Renewal Information이 당신 스케줄에 CA의 다이얼을 달았다.
10년간 모든 TLS 인증서는, 각 항목을 24시간 안에 병합하고 쉬지 않고 질의에 답해야 하는 살아있는 append-only 암호 데이터베이스에 게시됐다. 2026년 초까지 Let's Encrypt는 자기 로그를 버킷 속 정적 파일 폴더로 갈아 끼웠다. 더 나은 설계다.
CA는 대개 해킹으로 죽지 않는다. Entrust는 현대적인 방식으로 죽었다 — 서류 작업으로. 늦은 폐기, 놓친 마감, 그리고 마침내 약속을 믿길 멈춘 브라우저 루트 프로그램.
HTTP Public Key Pinning은 헤더 하나로 사이트의 TLS 키를 고정하게 해줬다. 동시에 내 도메인을 영구히 벽돌로 만들거나, 공격자가 인질로 잡게도 했다. 브라우저가 죽였다.
인증서 유효기간, HSTS, DNSSEC 서명, TOTP 코드 — 당신 보안의 놀랄 만큼 많은 부분이 사실은 '지금 몇 시인가'에 대한 주장이다. 그리고 지금 몇 시인지 정하는 프로토콜은 40년간 먼저 답한 놈을 믿어왔다.
ACME 주문·도메인 검증·갱신의 흐름, 챌린지 선택 기준과 발급된 인증서가 실제 서버에 반영됐는지 확인하는 방법.
오랫동안 CA 근처에서 BGP 경로를 잠깐만 비틀 수 있으면, 소유하지도 않은 도메인의 진짜 브라우저 신뢰 인증서를 발급받을 수 있었다. 2025년, 업계가 마침내 이걸 훨씬 어렵게 만들었다. MPIC가 어떻게 작동하고, 무엇은 못 고치는지.
2025년 8월, 인터넷 최대 CA가 OCSP 응답 서버를 내렸다. 그런데 거의 아무것도 깨지지 않았다 — 온라인 인증서 폐기 확인은 이미 허울뿐이었으니까.
ECH는 HTTPS가 늘 흘리던 단 하나의 필드 — 사이트 이름 — 를 드디어 암호화한다. 하지만 당신 IP, DNS 조회, 그리고 숨는 군중의 크기가 그게 의미 있는지를 결정한다.
당신 브라우저는 암호가 아닌 암호와 아무 일도 안 하는 확장을 서버에 하루 수십억 번 제안한다. 이름은 GREASE, TLS가 계속 변할 수 있게 지켜주는 유일한 장치다.