Giter Site home page Giter Site logo

cryptopals's Introduction

These are my solutions to the matasano crypto challenges (cryptopals.com).
They are unlikely to be fully correct at first and in no way is it the best way to do these things.
Don't cheat and just look at the answers. Try it first and use these for help when you get stuck on something.

Progress
Set1 - Complete (java com.cryptopals.sets.Set1)
	1. Hex To Base64 - Complete
	2. Fixed XOR - Complete
	3. Single Byte XOR - Complete
	4. Detect Single Byte XOR - Complete
	5. Repeating Key XOR - Complete
	6. Break Repeating Key XOR - Complete
	7. AES in ECB Mode - Complete
	8. Detect AES in ECB Mode - Complete
Set2 - Complete
	9. Implement PKCS#7 Padding - Complete
	10. Implement CBC Mode - Complete
	11. An ECB/CBC detection Oracle - Complete
	12. Byte at a time ECB Decryption (simple) - Complete
	13. ECB cut and paste - Complete
	14. Byte at a time ECB decryption (harder) - Complete
	15. PKCS#7 padding validation - Complete
	16. CBC bitflipping attacks - Complete
Set3 - Incomplete
	17. The CBC padding Oracle - Complete
	18. Implement CTR, the stream cipher mode - Complete
	19. Break fixed-nonce CTR mode using substitions - Complete
	20. Break fixed-nonce CTR statistically - Complete
	21. Implement the MT19937 Mersenne Twister RNG - Complete
	22. Crack an MT19937 seed - Complete
	23. Clone an MT19937 RNG from its output - Complete
	24. Create the MT19937 stream cipher and break it
Set4 - Incomplete
	25. Break "random access read/write" AES CTR - Complete
	26. CTR bitflipping - Complete
	27. Recover the key from CBC with IV=Key - Complete
	28. Implement a SHA-1 keyed MAC - Complete
	29. Break a SHA-1 keyed MAC using length extension
	30. Break an MD4 keyed MAC using length extension
	31. Implement and break HMAC-SHA1 with an artificial timing leak
	32. Break HMAC-SHA1 with a slightly less artificial timing leak
Set5 - Unattempted
Set6 - Unattempted

cryptopals's People

Contributors

theapadayo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.