
Voron 메신저 암호화/프로토콜 라이브러리 (X3DH-lite + Double Ratchet, group sender-keys, onion transport) — 외부 검토 요청됨
이것은 소규모 E2EE 메신저 프로젝트의 암호화 및 메시징 프로토콜 코어로, 외부 리뷰를 위해 별도로 분리된 것입니다. 전체 제품은 아닙니다 — Android 클라이언트와 배포 구성은 의도적으로 제외되었으며, 이것은 검토가 필요한 부분일 뿐입니다.
common/ — 라이브러리 자체:
e2ee/ — X3DH-lite(비동기 키 합의) + 그 위의 Double Ratchet, Curve25519/ChaCha20-Poly1305/Ed25519/HKDF 기반(JDK 제공 프리미티브이며, 해당 계층에는 직접 구현한 것이 없음).crypto/ — 해당 JDK 프리미티브에 대한 얇은 래퍼.group/ — sender-keys 방식의 그룹 메시징(초기 WhatsApp/Signal 그룹이 사용한 pre-MLS 접근법)과, 릴레이에는 그룹 개념이 전혀 없으므로 멤버십/역할을 위한 클라이언트 측 서명 해시 체인 이벤트 로그.onion/ — 릴레이가 연결의 IP를 identity 키에 직접 연결하지 못하도록 하는 선택적 계층 암호화 전송(고정 홉 수, 크기 버킷 패딩).client/, transport/, backup/ — 와이어 프로토콜, Noise_IK 전송 핸드셰이크, 암호화된 백업 형식.server/ — 참조 릴레이 구현: store-and-forward 라우팅, prekey 디렉터리, 오프라인 사서함, onion-hop 역할. 의도적으로 최소한의 신뢰를 유지합니다: 릴레이는 평문을 절대 보지 못하고, 전달에 걸리는 시간보다 더 오래 메시지를 보관하지 않으며, (설계상) 그룹 멤버십 인식이 전혀 없습니다.client/ — 통합 테스트에서 common/server를 서로 구동하는 데 사용되는 일반 JVM 콘솔 테스트 하네스(실제 앱이 아님)와 몇 가지 독립 실행형 익스플로잇 PoC(아래 참조).security-audit/ — 이전 내부 리뷰 패스의 문서, 발견된 버그, 그리고 이미 수정된 버그들. 무언가를 보고하기 전에 이 문서를 읽으세요 — 이미 여기에 있을 가능성이 높습니다. REPORT.md가 주요 문서이며, ADVERSARIAL_REVIEW_PAVEL.md는 이후의 더 좁은 범위 패스입니다. fuzz/와 client/.../exploit/에는 설명뿐 아니라 실행 가능한 PoC가 있습니다.security-audit/에 있는 수정된 버그 중 다수가 정확히 "적대적 릴레이가 무엇을 할 수 있는가"에 관한 것입니다.group/GroupCryptoSession.kt에 문서화되어 있습니다).security-audit/REPORT.md와 ADVERSARIAL_REVIEW_PAVEL.md에 명시적으로 언급되어 있습니다.common/src/main/kotlin/messenger/common/e2ee/) — 이것은 여기서 유일하게 진정한 맞춤형 암호화 구조이며, 그 아래의 모든 것은 기성품입니다. 내부적으로 여러 번 리뷰되었지만(security-audit/ 참조), 이 프로젝트 외부의 누구에게도 검토된 적이 없습니다.common/src/main/kotlin/messenger/common/group/GroupControlLog.kt) — 서버 측 강제가 전혀 없는 클라이언트 측 서명 해시 체인../gradlew test
표준 Gradle/Kotlin 프로젝트이며 JDK 17+입니다. 유닛 레벨 테스트 스위트에는 네트워크 접근이나 실행 중인 서비스가 필요 없습니다. security-audit/README.md에는 라이브 릴레이 퍼징 및 onion 상관관계 PoC에 대한 지침이 있으며, 여기에는 로컬 프로세스 실행이 필요합니다(그 어떤 것도 프로덕션 호스트를 대상으로 하지 마세요).
이에 대한 독립적인 암호화 감사는 수행된 적이 없습니다. security-audit/의 모든 것은 내부 엔지니어링 리뷰입니다 — 신중하지만 자체 리뷰이며, 공식적인 증명 뒷받침이나 전문적/기관적 실적이 그 뒤에 있지 않습니다. 이를 인증이 아닌 리뷰의 출발점으로 취급하세요.