Software/Coding


Recommended links to our favorite software/programming projects in the bitcoin space run by us, our friends and broader community:

  • Documents and software for running RowHammer attacks on PCs [temporary versions will be updated]. Work by  Varnavas Papaioannou done at UCL under supervision of Nicolas Courtois.
    • Here is our UCL master thesis on RowHammer.
      • Varnavas Papaioannou: On Feasibility and Performance of Rowhammmer Attack. M.Sc. Information Security dissertation, University College London. 4 September, 2017. Available here.
    • Here is one recent updated version of our paper presented at ASHES on 3 nov 2017:
      • Nicolas Courtois, Varnavas  Papaioannou: On Feasibility and Performance of Rowhammmer Atack, one version is available here.
      • Some slides presented at ASHES. Available here.
    • Our tutorial:
      • Varnavas Papaioannou: Rowhammer TutorialSeptember 24, 2017. Available here.
    • Our github:  It should be cited as: Varnavas Papaioannou. User-Space Rowhammer Testing Tools, October 2017. It contains 0123: 
      • 0) it contains our patches to improve two third party tools (hammertime by Tatar 2016 and rowhammer-test by Dullien and Seaborn 2015).
      • 1) a stand-alone tool hprh based on Transparent Huge Pages (THP) feature in Linux,
      • 2) a stand-alone tool tcrh based on a timing channel and trying to identify possible targets that are mapped within the same RAM bank.
      • 3) another stand-alone timing attack able to identify regions in memory that are physically contiguous.
  • HOW TO MINE bitcoin data at a very high speed: a tutorial on how to acquire and transform Bitcoin core data to an SQL database and mine this data at a very high speed (up to 50 Mb/second, the fastest solution known). See UCL bitcoin transaction data mining tutorial.
  • HOW to crack bitcoin passwords at a very high speed: brainflayer cracker.
    • “The bulk of Brainflayer was written by Ryan Castellucci. Nicolas Courtois and Guangyan Song contributed the code in ec_pubkey_fast.c which more than doubles the speed of public key computations compared with the stock secp256k1 library from Bitcoin.
      This code uses a much larger table for ec multiplication and optimized routines for ec addition and doubling”.
    • Another version of this is our student starter project adpwc below.
  • A library implementing the bitcoin elliptic curve with numerous optimizations [also used and modified in brainflayer tool above].
  • And here is our bitslice implementation of the PRESENT block cipher: present_bitslice.hpresent_bitslice.cpp.
  • Here are some S-box optimisations for Algebraic Cryptanalysis for GOST and other ciphers.
  • HOW to crack bitcoin and LinkedIn passwords at home (easy starter project for UCL students and GA18 code breaking competition, designed and made by Nicolas Courtois and Guangyan Song. It allows students to get started with password cracking, windows PC only):
    • Here is our main Visual Studio 2010 project adpwc.
    • Two large files are needed at runtime for this project to run correctly:
      • Our Bitcoin bedb database file (database of historical bitcoin public keys).
      • Here is our LinkedIn unmasked passwords file.
      • Missing: cache .bin file (0.5 Gb).
  • HOW to implement a cache side channel attack (easy starter project for UCL students and GA18 code breaking competition, by Nicolas Courtois and Guangyan Song, windows PC only):
  • How to crack and duplicate contactless cards [building passes, university cards,older Oyster cards etc ].
  • More to come.

More links:

 

 

Some past events:

Texas bitcoin programming Hackaton came with over $1 Million in prizes and contracts.

 

 

 

Leave a Reply

Your email address will not be published.