diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/cnf-commute-20729.log b/docs/analysis/cryptanalysis/logs/adv-mixer/cnf-commute-20729.log new file mode 100644 index 000000000..5d941a55c --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/cnf-commute-20729.log @@ -0,0 +1,3 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +cnf day=20729 vars=105652 clauses=361188 written /srv/builds/_adv-adv-mixer/logs/adv-mixer-commute-20729.cnf + BLOCKED on the solve: no SAT solver reaches the box (crates.io refused, none installed); the model is the artefact diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/fold-sweep-1024d.log b/docs/analysis/cryptanalysis/logs/adv-mixer/fold-sweep-1024d.log new file mode 100644 index 000000000..b870f46e0 --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/fold-sweep-1024d.log @@ -0,0 +1,6 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +fold-sweep from_day=20729 days=1024 pairs_per_day=71 trials_per_pair=20000 + (a) affinity violations: 1454080000 of 1454080000 pair-trials; lowest per-pair violation fraction 1.000000 (1.0 = never affine) + (b) dead word pairs summed over 1024 days: 0 (0 = complete dependency every day) + (c) key-order agreements: 0 of 1454080000 pair-trials + VERDICT: BOUND: no fold on any day or pair probed diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k1.log b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k1.log new file mode 100644 index 000000000..b47ab87d3 --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k1.log @@ -0,0 +1,6 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +lineindex day=20729 apps=1 states=1000000 threads=44 (22 address bits x 512 input bits = 11264 cells) + mean address-bit flip probability: 0.427506 (ideal 0.5); band 8 sigma = 0.004000 + holes: 70 of 11264; strong-bias cells: 6904 of 11264 + worst cell: in_bit 127 -> addr_bit 10 p = 0.000001 (1000.0 sigma) + VERDICT: FINDING (address bits predictable at this K) diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k2.log b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k2.log new file mode 100644 index 000000000..6e3b88ad2 --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k2.log @@ -0,0 +1,6 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +lineindex day=20729 apps=2 states=1000000 threads=44 (22 address bits x 512 input bits = 11264 cells) + mean address-bit flip probability: 0.500007 (ideal 0.5); band 8 sigma = 0.004000 + holes: 0 of 11264; strong-bias cells: 0 of 11264 + worst cell: in_bit 491 -> addr_bit 10 p = 0.498051 (3.9 sigma) + VERDICT: no address-bit distinguisher at this K diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k3.log b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k3.log new file mode 100644 index 000000000..7851a8e7b --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k3.log @@ -0,0 +1,6 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +lineindex day=20729 apps=3 states=1000000 threads=44 (22 address bits x 512 input bits = 11264 cells) + mean address-bit flip probability: 0.500005 (ideal 0.5); band 8 sigma = 0.004000 + holes: 0 of 11264; strong-bias cells: 0 of 11264 + worst cell: in_bit 497 -> addr_bit 20 p = 0.501943 (3.9 sigma) + VERDICT: no address-bit distinguisher at this K diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k4.log b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k4.log new file mode 100644 index 000000000..3834a2a60 --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/lineindex-k4.log @@ -0,0 +1,6 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +lineindex day=20729 apps=4 states=1000000 threads=44 (22 address bits x 512 input bits = 11264 cells) + mean address-bit flip probability: 0.499998 (ideal 0.5); band 8 sigma = 0.004000 + holes: 0 of 11264; strong-bias cells: 0 of 11264 + worst cell: in_bit 13 -> addr_bit 16 p = 0.498123 (3.8 sigma) + VERDICT: no address-bit distinguisher at this K diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-addr-a1-8d.log b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-addr-a1-8d.log new file mode 100644 index 000000000..710b6715c --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-addr-a1-8d.log @@ -0,0 +1,17 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +linrel day=20729 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20730 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20731 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20732 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20733 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20734 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20735 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20736 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-addr-a2-8d.log b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-addr-a2-8d.log new file mode 100644 index 000000000..6b6fa0956 --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-addr-a2-8d.log @@ -0,0 +1,17 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +linrel day=20729 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20730 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20731 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20732 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20733 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20734 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20735 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20736 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a1-16d.log b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a1-16d.log new file mode 100644 index 000000000..1b41af249 --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a1-16d.log @@ -0,0 +1,33 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +linrel day=20729 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20730 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20731 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20732 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20733 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20734 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20735 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20736 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20737 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20738 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20739 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20740 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20741 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20742 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20743 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20744 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a2-16d.log b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a2-16d.log new file mode 100644 index 000000000..ed13bcdcc --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a2-16d.log @@ -0,0 +1,33 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +linrel day=20729 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20730 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20731 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20732 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20733 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20734 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20735 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20736 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20737 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20738 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20739 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20740 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20741 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20742 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20743 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20744 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a8-16d.log b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a8-16d.log new file mode 100644 index 000000000..d9f8326a3 --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/linrel-full-a8-16d.log @@ -0,0 +1,33 @@ +self-check: spec 1.8.1 and 1.8.4 genesis vectors OK; 72 application keys are 1..72 times 0x9E3779B9 +linrel day=20729 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20730 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20731 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20732 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20733 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20734 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20735 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20736 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20737 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20738 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20739 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20740 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20741 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20742 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20743 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20744 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/queue-11-adv-mixer-fold-sweep.sh.log b/docs/analysis/cryptanalysis/logs/adv-mixer/queue-11-adv-mixer-fold-sweep.sh.log new file mode 100644 index 000000000..d2934901f --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/queue-11-adv-mixer-fold-sweep.sh.log @@ -0,0 +1,5 @@ +start igneum-build-1 2026-10-07T18:50:38Z bbfab24075923083f0c9c8c4372a6dd22257c245bac75ba6fadbd60ab64ec803 /srv/builds/_adv-adv-mixer/bin/attack-adv-mixer +== fold-sweep-1024d 2026-10-07T18:50:38Z +rc=0 + VERDICT: BOUND: no fold on any day or pair probed +end 2026-10-07T18:52:02Z diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/queue-13-adv-mixer-lineindex.sh.log b/docs/analysis/cryptanalysis/logs/adv-mixer/queue-13-adv-mixer-lineindex.sh.log new file mode 100644 index 000000000..724fca9cc --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/queue-13-adv-mixer-lineindex.sh.log @@ -0,0 +1,50 @@ +start igneum-build-1 2026-10-07T18:50:38Z bbfab24075923083f0c9c8c4372a6dd22257c245bac75ba6fadbd60ab64ec803 /srv/builds/_adv-adv-mixer/bin/attack-adv-mixer +== lineindex-k1 2026-10-07T18:50:38Z +rc=0 + VERDICT: FINDING (address bits predictable at this K) +== lineindex-k2 2026-10-07T18:50:53Z +rc=0 + VERDICT: no address-bit distinguisher at this K +== lineindex-k3 2026-10-07T18:51:14Z +rc=0 + VERDICT: no address-bit distinguisher at this K +== lineindex-k4 2026-10-07T18:51:33Z +rc=0 + VERDICT: no address-bit distinguisher at this K +== linrel-addr-a1-8d 2026-10-07T18:51:53Z +rc=0 +linrel day=20729 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20730 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20731 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20732 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20733 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20734 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20735 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20736 apps=1 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +== linrel-addr-a2-8d 2026-10-07T18:51:54Z +rc=0 +linrel day=20729 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20730 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20731 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20732 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20733 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20734 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20735 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +linrel day=20736 apps=2 samples=8192 columns=535 (512 in + 22 out + 1) rank=535 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7657) +end 2026-10-07T18:51:55Z diff --git a/docs/analysis/cryptanalysis/logs/adv-mixer/queue-14-adv-mixer-linrel-cnf.sh.log b/docs/analysis/cryptanalysis/logs/adv-mixer/queue-14-adv-mixer-linrel-cnf.sh.log new file mode 100644 index 000000000..56f10e1ee --- /dev/null +++ b/docs/analysis/cryptanalysis/logs/adv-mixer/queue-14-adv-mixer-linrel-cnf.sh.log @@ -0,0 +1,108 @@ +start igneum-build-2 2026-10-07T18:50:34Z bbfab24075923083f0c9c8c4372a6dd22257c245bac75ba6fadbd60ab64ec803 /srv/builds/_adv-adv-mixer/bin/attack-adv-mixer +== linrel-full-a1-16d 2026-10-07T18:50:34Z +rc=0 +linrel day=20729 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20730 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20731 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20732 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20733 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20734 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20735 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20736 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20737 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20738 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20739 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20740 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20741 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20742 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20743 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20744 apps=1 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +== linrel-full-a2-16d 2026-10-07T18:50:37Z +rc=0 +linrel day=20729 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20730 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20731 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20732 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20733 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20734 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20735 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20736 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20737 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20738 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20739 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20740 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20741 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20742 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20743 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20744 apps=2 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +== linrel-full-a8-16d 2026-10-07T18:50:39Z +rc=0 +linrel day=20729 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20730 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20731 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20732 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20733 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20734 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20735 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20736 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20737 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20738 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20739 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20740 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20741 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20742 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20743 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +linrel day=20744 apps=8 samples=8192 columns=1025 (512 in + 512 out + 1) rank=1025 kernel_dim=0 + BOUND: no exact affine relation a.x XOR b.y = c over the 8192 samples (false-survivor odds 2^-7167) +== cnf-commute-20729 2026-10-07T18:50:44Z +rc=0 +cnf day=20729 vars=105652 clauses=361188 written /srv/builds/_adv-adv-mixer/logs/adv-mixer-commute-20729.cnf + BLOCKED on the solve: no SAT solver reaches the box (crates.io refused, none installed); the model is the artefact +end 2026-10-07T18:50:44Z diff --git a/docs/analysis/cryptanalysis/report-mixer.md b/docs/analysis/cryptanalysis/report-mixer.md index c5279e1ef..b8aed60d2 100644 --- a/docs/analysis/cryptanalysis/report-mixer.md +++ b/docs/analysis/cryptanalysis/report-mixer.md @@ -165,19 +165,36 @@ Command: `attack-adv-mixer lineindex --day 20729 --apps K --states 1000000 --thr |---|---|---|---|---|---| | 1 | 0.4275 | 70 | 6904 | 1000 sigma | FINDING: address bits predictable after one application | | 2 | 0.500007 | 0 | 0 | 3.9 sigma | clean | -| 3 | clean | 0 | 0 | inside band | clean | -| 4 | running | | | | RUNNING | +| 3 | 0.5000 | 0 | 0 | inside band | clean | +| 4 | 0.499998 | 0 | 0 | 3.8 sigma | clean | + +Address-restricted exact relation search, `linrel --addr --apps K --samples 8192 --days 8` (535 columns: 512 +input bits, the 22 address bits, the constant): + +| K | Days (20729 to 20736) | Rank | Kernel | Reading | +|---|---|---|---|---| +| 1 | 8 of 8 | 535 | 0 | no affine relation to the address bits even after one application | +| 2 | 8 of 8 | 535 | 0 | none after two | Reading for the chip: the line index a read depends on is not predictable before the second of the 8 applications completes, so a prefetch cannot hide more than 1 of the 8 applications behind the memory latency. -The address-restricted exact relation search (linrel --addr, 8 days, K = 1 and 2) is in the same queue file and -lands here. +The K=1 predictability is incomplete diffusion (holes and strong cells), not a linear leak: no affine relation +between the input and the address bits exists even at K=1. ### Fold probes over 1024 days and all 71 adjacent key pairs (fold-sweep), queue 11, box 1 Command: `attack-adv-mixer fold-sweep --day 20729 --days 1024 --trials 20000 --threads 44`: probes (a) and -(c) on every adjacent application pair (i, i+1) for i in 0..70 and probe (b) on the full block, per day. -RUNNING; the row lands here. +(c) on every adjacent application pair (i, i+1) for i in 0..70 and probe (b) on the full block, per day. 1024 +days x 71 pairs x 20,000 trials = 1,454,080,000 pair-trials. Wall 84 s on box 1 at load about 400. + +| Probe | Result over 1024 days and 71 pairs | Reading | +|---|---|---| +| (a) affinity violations | 1,454,080,000 of 1,454,080,000; lowest per-pair violation fraction 1.000000 | no adjacent pair of applications is affine on any day | +| (b) dead word pairs, summed over 1024 days | 0 | complete word dependency every day | +| (c) key-order agreements | 0 of 1,454,080,000 | no key pair commutes on any day | + +Verdict: the fold bound of the first report holds at every one of the 71 between-application seams, on every +one of 1024 consecutive chain days (about 2.8 years of calendar). No fold, no commutation, no separability. ### Integral degree test over 32 days (integral), queue 12, box 2