Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
SHA256-CDP — GPU-beschleunigte SHA-256-Rainbow-Tabellen-Implementierung basierend auf CDP-Strukturanalyse (zyklische Ziffernsummen-Projektion). AMD RX 9070 XT, OpenCL + Vulkan. | Kitploit
Tools/GitHubGitHub/jm00nj/sha256-cdp
Passwort-CrackingHash-AnalyseKryptographie
GitHubjm00nj/sha256-cdp

SHA256-CDP

GPU-beschleunigte SHA-256-Rainbow-Tabellen-Implementierung basierend auf CDP-Strukturanalyse (zyklische Ziffernsummen-Projektion). AMD RX 9070 XT, OpenCL + Vulkan.

Repository anzeigenWebseite
87vor 2 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

SHA256-CDP: Cyclische Ziffernsummen-Projektion

GPU-beschleunigte Regenbogentabellen-Implementierung des CDP-Strukturanalyse-Frameworks für SHA-256.

Basierend auf den Erkenntnissen des CDP-Papers (DOI: 10.5281/zenodo.20627240) bietet dieses Repository eine vollständige, funktionsfähige Implementierung von CDP-basierten Regenbogenketten-Tabellen mit OpenCL-Build-Kerneln und Vulkan-Compute-Query/Verify-Pipelines, die auf AMD-RDNA4-Hardware abzielen.


Was ist CDP?

CDP (Cyclic Digit-sum Projection) ist ein Strukturanalyse-Framework für SHA-256, das bisher undocumented mathematische Eigenschaften der Ausgabeverteilung der Hashfunktion aufdeckt.

Die Kernbeobachtung: Die Hex-Ziffernsumme W(H) einer beliebigen SHA-256-Ausgabe konvergiert bei iterativem erneutem Hashen durch f(w) = W(SHA256(str(w))) deterministisch in genau zwei geschlossene Zyklen:

root@kitploit:~
C1: 476 ↔ 438          (2er-Zyklus)
C2: 471 → 472 → 525 → 537 → 414 → 417 → 546 → 518 → 471  (8er-Zyklus)

Diese zyklische Struktur ergibt zusammen mit einer Mehrkomponenten-Fingerprint F(H) = (W, Wvec₁₆, cycle_entry, W₂–W₅, max_nibble, min_nibble) eine bijektive Abbildung über eingeschränkte Eingabefäume — was O(1)-Preimage-Lookup über Regenbogentabellen mit null Reduktionsfunktions-Kollisionen ermöglicht.

Wichtige bewiesene Eigenschaften:

  • Theorem 5.1 — Komplement-Nibble-Summen-Invariante: Σnibble(W₀) = 38 für alle 256 Komplementpaare
  • Theorem 5.4 — Ergodische Markov-Eigenschaft: π_B = 17,00 %, unabhängig von K[i], H₀ und Eingabeklasse
  • W(H₀) = 502 — erkennbare strukturelle Signatur der NIST-Initialisierungskonstanten (+22,2 über dem Gleichgewicht)
  • Null-Kollisions-Bijektion über 1,67 Mio. Eingaben in allen getesteten Eingabefäumen

CDP bricht SHA-256 nicht. Preimage- und Kollisionsresistenz bleiben unberührt. Siehe Abschnitt 12 des Papers.


Repository-Struktur

root@kitploit:~
SHA256-CDP/
├── cdp_chain_builder.py   # Haupteinstiegspunkt — Build-, Crack-, Query-CLI
├── cdp_query.comp         # Vulkan-GLSL-Compute-Shader (Query-Kernel)
├── cdp_verify.comp        # Vulkan-GLSL-Compute-Shader (Verify-Kernel)
├── vulkan_query.py        # Vulkan-Python-Engine (ACO-Backend)
└── paper/
    └── cdp_v3.pdf         # CDP-Paper v3

Anforderungen

  • Python 3.10+
  • PyOpenCL: pip install pyopencl
  • NumPy: pip install numpy
  • Vulkan (empfohlen): pip install vulkan + Vulkan SDK
  • AMD-GPU mit RDNA2+ (getestet auf RX 9070 XT / gfx1201)

Hinweis: Vulkan ist für korrekte Query-Leistung erforderlich. Ohne Vulkan fällt das System auf CPU-Multiprocessing zurück (deutlich langsamer). Der OpenCL-Query-Kernel hat einen bekannten AMD-PAL-LLVM-Optimierer-Bug auf gfx1201, der mit -cl-fast-relaxed-math falsche Ergebnisse liefert; das Vulkan-ACO-Backend hat dieses Problem nicht.

Windows-Benutzer: Fügen Sie python.exe, clinfo.exe und explorer.exe zur Whitelist der Windows-Defender-Ordnerzugriffskontrolle (Controlled Folder Access) hinzu, um GPU-Speicherzugriffsblockaden während Tabellenoperationen zu verhindern.


Installation

root@kitploit:~
git clone https://github.com/JM00NJ/SHA256-CDP
cd SHA256-CDP
pip install pyopencl numpy vulkan

GPU-Erkennung überprüfen:

root@kitploit:~
python cdp_chain_builder.py --validate

Verwendung

Regenbogentabellen erstellen

root@kitploit:~
# Einzelne Tabelle (Kleinbuchstaben, 8 Zeichen, chain_len=300.000)
python cdp_chain_builder.py --build --charset lower --length 8 --chain-len 300000 --output cdp_8.bin

# Mehrere Tabellen (höhere Abdeckung)
# n=1: 66,7 %  n=2: 88,9 %  n=3: 96,3 %  n=5: 99,3 %
python cdp_chain_builder.py --build-multi 3 --prefix cdp_8_bin --length 8 --chain-len 300000

Hash knacken

root@kitploit:~
# Einzelner Hash
python cdp_chain_builder.py --crack <sha256_hash> \
  --tables cdp_8_bin_1.bin,cdp_8_bin_2.bin,cdp_8_bin_3.bin \
  --length 8 --chain-len 300000

# Hash-Liste (Batch-Modus — Tabellen werden einmal geladen)
python cdp_chain_builder.py --crack-list hashes.txt \
  --tables cdp_8_bin_1.bin,cdp_8_bin_2.bin,cdp_8_bin_3.bin \
  --length 8 --chain-len 300000

End-to-End-Selbsttest

root@kitploit:~
python cdp_chain_builder.py --self-test --length 7

GPU-Ausgabe validieren

root@kitploit:~
python cdp_chain_builder.py --validate
python cdp_chain_builder.py --validate-query <sha256_hash>

Leistung

Getestet auf AMD Radeon RX 9070 XT (gfx1201, 32 CUs), Windows 11, Treiber 3679.0 (PAL,LC):

OperationDurchsatz
Tabellen-Build (ILP2-Kernel)~2,5 GH/s
Query — erste Charge (flach)~14 GH/s
Query — Durchschnitt über Chargen~5 GH/s
GPU-Verify (Vulkan ACO)~2 s pro 88k Kandidaten

7 Zeichen Kleinbuchstaben, 3 Tabellen (96,3 % Abdeckung):

  • Tabellengröße: 3 × 0,7 MB
  • Build-Zeit: ~3 × 12 s
  • Crack-Zeit: ~43 s pro Hash

Kernel-Modi:

  • --mode ilp2 — 2 Ketten/Thread, verschachteltes SHA256 für ILP (Standard, am schnellsten auf AMD RDNA)
  • --mode vec4 — 4 Ketten/Thread unter Verwendung von uint4-Arithmetik
  • --mode scalar — 1 Kette/Thread (Basislinie)

Technische Hinweise

Warum Vulkan für Query?

Das von OpenCL unter Windows verwendete AMD-PAL-LLVM-Compiler-Backend (gfx1201) hat einen dokumentierten Optimierer-Bug: Schleifen mit variablem Start (for step=pos; step<N) erzeugen mit -cl-fast-relaxed-math falsche Ergebnisse. Der Workaround (-O0) stellt die Korrektheit wieder her, reduziert aber den Durchsatz um etwa das 3-4-fache. Das Vulkan-ACO-Backend ist eine vollständig separate Compiler-Pipeline und hat dieses Problem nicht. Query- und Verify-Kernel verwenden Vulkan; Build-Kernel verwenden OpenCL (vom Bug nicht betroffen).

CDP-bijektive Reduktion

Die standardmäßige PCG-geseedete Reduktionsfunktion verwendet 64 Bits Entropie aus digest[0:2]. Die CDP-injektive Reduktion baut den Seed aus dem vollständigen Fingerprint (W, Wvec₁₆, max_nibble, min_nibble) auf — dieselben Komponenten, deren Injektivität über SHA256(X) durch das CDP-Bijektions-Theorem bewiesen ist. Dies garantiert null Kettenverschmelzungen durch die Reduktionsfunktion selbst; verbleibende Verschmelzungen sind Geburtstagsparadoxon-Endpunktkollisionen (~33 % pro Tabelle, entsprechend der erwarteten 66,7 %-Abdeckung).

Binäres Tabellenformat

Tabellen verwenden ein kompaktes Binärformat (CDP1-Magic, 39 Bytes/Eintrag) — etwa 3,4× kleiner als JSON. Verwenden Sie --convert, um vorhandene JSON-Tabellen zu konvertieren:

root@kitploit:~
python cdp_chain_builder.py --convert table.json --output table.bin

Zeichensätze

NameZeichenRaum (8 Zeichen)
lowera–z (26)2,1 × 10¹¹

Lizenz

© 2026 Erenay Özkan (JM00NJ / Vesqer)

Dieses Projekt ist unter der GNU Affero General Public License v3.0 (AGPL-v3) mit der Commons Clause lizenziert.

Gemäß der Commons Clause dürfen Sie diese Software nicht verkaufen oder als Teil eines kommerziellen Produkts oder Dienstes verwenden, ohne ausdrückliche schriftliche Genehmigung des Autors.

Open-Source-Nutzung, Forschung und nicht-kommerzielle Anwendungen sind unter den AGPL-v3-Bedingungen gestattet — Änderungen müssen unter derselben Lizenz veröffentlicht werden.

Für kommerzielle Lizenzanfragen: netacoding.com

Siehe LICENSE für die vollständigen Bedingungen.


Referenzen

  • Blog-Beitrag: https://netacoding.com/posts/cdp-sha256-structural-analysis/
  • Erenay Özkan. CDP: Cyclic Digit-sum Projection — Structural Analysis of SHA-256 Output Distribution, Ergodic Basin Pressure, and Input Class Fingerprinting. v3, 2026. DOI: 10.5281/zenodo.20627240
  • P. Oechslin. Making a Faster Cryptanalytic Time-Memory Trade-Off. CRYPTO 2003.
  • M. Hellman. A Cryptanalytic Time-Memory Trade-Off. IEEE Trans. Inf. Theory, 1980.

Erstellt von JM00NJ — netacoding.com

Tool herunterladen
alnum
a–z, 0–9 (36)
2,8 × 10¹²
fulla–z, A–Z, 0–9, Symbole (70)5,8 × 10¹⁴