docs(tests): TEST_CASES.md + wire-tap proof for university practice

Adds proof artifacts that the PQ tunnel is real:

- crates/aura-proto/tests/pq_wire_tap.rs — new integration test that
  intercepts every byte flowing on the in-memory transport and asserts:
  (1) ClientHello payload = 32 + 1184 + 32 (X25519 + ML-KEM-768 ek + nonce),
  (2) ServerHello payload = 32 + 1088 + 32 (X25519_eph + ML-KEM-768 ct + nonce),
  (3) a 56-byte plaintext marker shipped in a Data frame is absent from
      the wire in both directions,
  (4) ServerAuth/Data AEAD bodies have Shannon entropy >= 7 bits/byte.

- TEST_CASES.md — Russian-language report mapping 12 test cases to the
  exact code and captured outputs (KAT, hybrid round-trip, AEAD tamper
  detection, mutual X.509 rejection, replay window, 1000-packet flow,
  in-vivo ping, bench-crypto timings, new wire-tap proof).

- docs/test_evidence/ — full captured stdout of cargo test runs and
  aura bench-crypto, referenced from TEST_CASES.md.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
xah30
2026-06-01 13:59:19 +03:00
parent 9462558a15
commit 7c8ea919c4
7 changed files with 1090 additions and 0 deletions
+59
View File
@@ -0,0 +1,59 @@
Compiling aura-crypto v0.1.0 (/Users/xah30/AuraVPN/crates/aura-crypto)
Finished `test` profile [unoptimized + debuginfo] target(s) in 9.40s
Running unittests src/lib.rs (target/debug/deps/aura_crypto-cc24ea82f5069837)
running 20 tests
test aead::tests::aead_key_matches_session_nonce_scheme ... ok
test aead::tests::nonce_layout_is_le_counter_then_zeros ... ok
test aead::tests::aead_key_explicit_nonce_roundtrip ... ok
test masks::tests::base64_decode_round_trips_simple ... ok
test masks::tests::base64_rejects_invalid_char ... ok
test aead::tests::into_parts_preserves_key_and_counter ... ok
test aead::tests::aead_key_wrong_counter_or_aad_fails ... ok
test masks::tests::ca_fingerprint_rejects_missing_block ... ok
test masks::tests::ca_fingerprint_matches_direct_sha256 ... ok
test masks::tests::format_ymd_zero_pads ... ok
test masks::tests::russian_palette_has_entries ... ok
test masks::tests::derive_mask_changes_with_ca_fp ... ok
test masks::tests::derive_mask_deterministic_same_inputs ... ok
test masks::tests::mask_fields_are_within_palettes ... ok
test masks::tests::derive_mask_changes_with_date ... ok
test masks::tests::default_palette_unchanged ... ok
test aead::tests::counter_is_monotonic_per_seal ... ok
test masks::tests::russian_palette_picks_from_russian_list ... ok
test masks::tests::mixed_palette_picks_from_either ... ok
test aead::tests::nonces_are_distinct_over_10_000_counters ... ok
test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
Running tests/hybrid_kat.rs (target/debug/deps/hybrid_kat-48c10494edbb7070)
running 10 tests
test test_aead_roundtrip ... ok
test test_aead_counter_advances_on_failure ... ok
test test_aead_tamper_detection ... ok
test test_kdf_deterministic ... ok
test test_aead_sequential_messages ... ok
test test_hybrid_roundtrip ... ok
test test_kdf_from_real_handshake ... ok
test test_hybrid_wrong_key_disagrees ... ok
test test_nonce_no_repeat ... ok
test test_hybrid_roundtrip_property ... ok
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.68s
Running tests/kat_kyber.rs (target/debug/deps/kat_kyber-241715dd9337e370)
running 3 tests
test test_kyber768_kat_decapsulation ... ok
test test_kyber768_sizes_on_fresh_keypair ... ok
test test_kyber768_roundtrip ... ok
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
Doc-tests aura_crypto
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s