<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Noctarion</title>
    <description>The latest articles on Forem by Noctarion (@noctarion).</description>
    <link>https://forem.com/noctarion</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3898774%2F1fc85b19-c032-4429-9b07-0059b5a30a1b.jpg</url>
      <title>Forem: Noctarion</title>
      <link>https://forem.com/noctarion</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/noctarion"/>
    <language>en</language>
    <item>
      <title>I ran 60 cryptanalysis experiments on SHA-256. Here's what I found.</title>
      <dc:creator>Noctarion</dc:creator>
      <pubDate>Sun, 26 Apr 2026 13:01:35 +0000</pubDate>
      <link>https://forem.com/noctarion/i-ran-60-cryptanalysis-experiments-on-sha-256-heres-what-i-found-1la8</link>
      <guid>https://forem.com/noctarion/i-ran-60-cryptanalysis-experiments-on-sha-256-heres-what-i-found-1la8</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Update (2026-04-27):&lt;/strong&gt; Finding #1 corrected after self-check (N=200K).&lt;br&gt;
The original "9.56σ cross-hash anti-correlation" overstated the result —&lt;br&gt;
observable LZ outputs are independent (r≈0.000). Corrected finding:&lt;br&gt;
cross-hash carry anti-correlation r=−0.029, 6.5σ (internal state),&lt;br&gt;
consistent with Dodis et al. (CRYPTO 2012, IACR 2013/382) on&lt;br&gt;
SHA-256d non-indifferentiability. IACR ePrint revised accordingly.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;p&gt;SHA-256 cannot be broken. No shortcut for mining exists. But proving&lt;br&gt;
that produced 7 novel findings.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setup
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;60 independent experiments&lt;/li&gt;
&lt;li&gt;19 mathematical frameworks&lt;/li&gt;
&lt;li&gt;5,000–1,000,000 hash evaluations per experiment&lt;/li&gt;
&lt;li&gt;All signals Bonferroni-corrected and scale-verified (real signals
scale as √N)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The 7 Novel Findings
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. SHA-256d second hash has constrained internal carry structure [CORRECTED]
&lt;/h3&gt;

&lt;p&gt;Bitcoin's SHA-256d has a measurable cross-hash carry anti-correlation&lt;br&gt;
(r=−0.029, 6.5σ, N=50K — internal state). W[8-15] in the second hash&lt;br&gt;
is ALWAYS constant padding — only ~30 unique carry count values exist&lt;br&gt;
in the W-schedule.&lt;/p&gt;

&lt;p&gt;Observable hash outputs are statistically independent (LZ correlation&lt;br&gt;
r≈0.000). This is consistent with Dodis et al. (CRYPTO 2012) who&lt;br&gt;
proved SHA-256d is NOT indifferentiable from a random oracle.&lt;/p&gt;

&lt;p&gt;Not exploitable (&amp;lt;0.1% variance), but a real and documented structural&lt;br&gt;
property of H².&lt;/p&gt;

&lt;h3&gt;
  
  
  2. |HW(a)-16| → leading zeros: 20.48σ
&lt;/h3&gt;

&lt;p&gt;The strongest signal in 60 experiments. Absolute deviation of working&lt;br&gt;
variable 'a' Hamming weight from 16 predicts output quality at 20.48σ.&lt;br&gt;
Invisible to standard linear analysis. Post-computation only.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Round 8 is the "insulator" — 17× drop
&lt;/h3&gt;

&lt;p&gt;R0-2:   100% deterministic&lt;br&gt;
R3:     carry breaks control (→22%)&lt;br&gt;
R4:     nonce enters&lt;br&gt;
R6-7:   26 trackable channels&lt;br&gt;
R8:     💥 ALL 26 destroyed — 17× drop in ONE round&lt;br&gt;
R16-64: perfect white noise&lt;/p&gt;

&lt;p&gt;This is WHY every neural net, every evolutionary algorithm, every ML&lt;br&gt;
approach fails.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Nonce identity preserved (26.25σ) — but useless
&lt;/h3&gt;

&lt;p&gt;Nonce tracking survives all 64 rounds. But nonce→quality correlation&lt;br&gt;
= 0.84σ (noise). Count ⊥ Position. Two completely orthogonal channels.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Mixing: 85% linear + 15% nonlinear
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Ch, Maj: &amp;lt;1% contribution each&lt;/li&gt;
&lt;li&gt;ADD carries: 13%&lt;/li&gt;
&lt;li&gt;Rotations Σ0, Σ1: &lt;strong&gt;85%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ch/Maj = algebraic protection. Rotations = actual mixer.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. First algebraic mining impossibility proof via Z3
&lt;/h3&gt;

&lt;p&gt;Nonces [0..31] proven IMPOSSIBLE for LZ≥8 at 4-round SHA-256.&lt;br&gt;
Algebraically, not probabilistically.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Groebner basis: 2^71 worse than brute force
&lt;/h3&gt;

&lt;p&gt;64-round Groebner: ~2^103. Mining brute force: 2^32. The "just solve&lt;br&gt;
the polynomial equations" approach is 2 billion billion billion times&lt;br&gt;
harder.&lt;/p&gt;

&lt;h2&gt;
  
  
  All 19 Frameworks — 0 Exploitable Signals
&lt;/h2&gt;

&lt;p&gt;Statistics, Neural Networks, Evolutionary, Spectral, Z3/SAT, Control&lt;br&gt;
Theory, FEM, Information Theory, Higher-Order Differentials, Cube&lt;br&gt;
Attack, Rebound, ANF, Multi-Variable, Side-Channel, Wang Differentials,&lt;br&gt;
p-adic, Tropical Geometry, Groebner, Representation Theory.&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Paper: &lt;a href="https://eprint.iacr.org/2026/109079" rel="noopener noreferrer"&gt;IACR ePrint 2026/109079&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Code: &lt;a href="https://doi.org/10.5281/zenodo.19789234" rel="noopener noreferrer"&gt;Zenodo DOI 10.5281/zenodo.19789234&lt;/a&gt;
— 60 Python scripts, free&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  #cryptography, #python, #bitcoin, #security
&lt;/h2&gt;

</description>
      <category>algorithms</category>
      <category>blockchain</category>
      <category>computerscience</category>
      <category>security</category>
    </item>
  </channel>
</rss>
