User Tools

Site Tools


project:gsm:deka:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
project:gsm:deka:start [2017/01/31 05:04] – [Roadmap] jendaproject:gsm:deka:start [2017/10/21 04:21] jenda
Line 2: Line 2:
 ====== Deka - an OpenCL A5/1 cracker ====== ====== Deka - an OpenCL A5/1 cracker ======
  
-Deka is a fast, free and portable A5/1 (that's the cipher used in mobile phones) cracker written in OpenCL. Thanks to efficient use of vector instructions and hard-drive NCQ, the Kc key on a real-world GSM network can usually be recovered in 5-60 seconds depending on network security, signal quality etc. (test machine is a high-end desktop: 8 core AMD FX-8150, 32 GB RAM, 3x ATI HD 7970, 4x ADATA SX900)+Deka is a fast, free and portable A5/1 (that's the cipher used in mobile phones) cracker written in OpenCL. Thanks to efficient use of vector instructions and hard-drive NCQ, the Kc key on a real-world GSM network can usually be recovered in 5-60 seconds with 2 minutes RTT (i.e., cracking many keys in parallel) depending on network security, signal quality etc. (test machine is a high-end desktop: 8 core AMD FX-8150, 32 GB RAM, 3x ATI HD 7970, 4x ADATA SX900)
  
 Deka started as an attempt to port [[https://opensource.srlabs.de/projects/a51-decrypt|Kraken]], the first A5/1 cracker available, to AMD GCN architecture, and resulted in a complete rewrite. Deka is binary compatible with Kraken, allowing easy evaluation and seamless switch. Deka started as an attempt to port [[https://opensource.srlabs.de/projects/a51-decrypt|Kraken]], the first A5/1 cracker available, to AMD GCN architecture, and resulted in a complete rewrite. Deka is binary compatible with Kraken, allowing easy evaluation and seamless switch.
Line 27: Line 27:
   * "cancel" command to cancel processing of a given burst. This is useful when the key is successfully recovered and so there is no use to continue computing.   * "cancel" command to cancel processing of a given burst. This is useful when the key is successfully recovered and so there is no use to continue computing.
  
-Bugs:+Alternative features:
   * delta.py does not use barriers/conditional variables, but busy waiting   * delta.py does not use barriers/conditional variables, but busy waiting
   * paplon.py leaks memory -- reportqs are not freed when the client disconnects   * paplon.py leaks memory -- reportqs are not freed when the client disconnects
Line 44: Line 44:
   * 8 or better 16 GB RAM to fit the table index, track bursts and have some space for block cache   * 8 or better 16 GB RAM to fit the table index, track bursts and have some space for block cache
   * OpenCL capable card, or several of them   * OpenCL capable card, or several of them
 +    * Deka has been tested on AMD HD7970 and nVidia GTX 610M (which is of course slow).
   * 1.7TB of fast storage - SSDs at best. And probably some SATA controller that does not have problems with lots of random reads.   * 1.7TB of fast storage - SSDs at best. And probably some SATA controller that does not have problems with lots of random reads.
 ===== Documentation ===== ===== Documentation =====
project/gsm/deka/start.txt · Last modified: 2022/03/25 19:42 by jenda