Summary

  • 11월 1일 나온 KEYTRANS 아키텍처 11판에는 10월 7일의 10판에 없던 ‘클라이언트 무결성’ 절이 생겼다.
  • 운영자가 특정 이용자에게 수정된 앱이나 로그 설정을 보내면 증명 검증과 감시를 끄거나 신뢰할 공개키를 갈아 끼울 수 있다고 초안은 설명한다.

공개 장부가 사실을 기록해도 휴대전화가 읽지 않으면 끝이다. IETF KEYTRANS 아키텍처 초안 11판의 새 7.3절은 키 투명성의 그 마지막 문을 살핀다. 이 기술은 통신 서비스가 어떤 계정의 공개키를 몰래 바꿔치기할 때 기록과 암호학적 증명으로 들통나게 하려는 것이다. 이용자 앱은 로그를 조회하고 증명을 검사하며 전에 본 상태를 기억한다.

그 앱을 공급하는 주체는 대개 서비스 운영자다. 로그 설정도 운영자가 나눠 준다. 초안은 바로 이 운영자를 키 투명성이 견제하려 한다고 적는다. 운영자가 한 사람에게만 바뀐 프로그램을 전달할 수 있으면 증명 확인이나 지속 감시를 꺼 버릴 수 있다. 로그 또는 제삼자의 공개키를 운영자가 쥔 키로 바꾼 설정을 줄 수도 있다. 로그 전체를 망가뜨릴 필요가 없다. 검사를 맡은 기기 하나에 다른 규칙을 넣으면 된다.

10월 7일자 10판에는 클라이언트 무결성 절이 없었다. 새 절은 네 가지 전제를 적는다. 기기에서 코드를 안전하게 실행하고, 앱이 프로토콜을 제대로 구현하며, 진짜 로그 설정을 갖고, 시계가 맞아야 한다. 기기 자체가 침해되면 개인키와 평문이 바로 노출될 수 있다. 저장 상태를 과거로 돌리면 이전 검증의 기억이 사라진다. 틀린 시각은 낡은 로그 화면을 받아들이게 할 수 있다.

초안은 배포 과정에 대한 대책도 제시한다. 모든 앱 버전을 설치 전에 공개 추가 전용 로그에 올리는 바이너리 투명성은 특정인만 겨냥한 업데이트를 더 잘 드러낸다. 공개 소스와 재현 가능한 빌드는 배포본의 실제 동작을 확인하는 수단이다. 검증 부팅, 격리, 저장 상태 보호와 독립적으로 인증한 시간도 언급한다. 특정 업체의 침해나 이 조치의 실제 도입을 보고한 문서는 아니다. Datatracker는 이 문서를 IESG에 출판을 요청한 현행 작업반 초안으로 표시한다.