Skip to content

gitofdeepanshu/cryptopals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cryptopals Challenges in Rust

This repository contains solutions to the Cryptopals challenges implemented in Rust programming language. The challenges cover a range of cryptography topics and aim to strengthen your understanding of the subject. I personally think it is a good way to increase your understaning of RUST programming language

WARNING: This is an academic proof-of-concept prototype, and in particular has not received careful code review. This implementation is NOT ready for production use.

Contents

  • Challenge 1: Basic Crypto
    • Contains 8 challenges that focus on basic cryptography concepts such as single-byte XOR cipher, fixed XOR, and hexadecimal decoding.
  • Challenge 2: Block Crypto
    • Contains 8 challenges that deal with cryptography at the block level, including fixed-nonce CBC encryption, detection of ECB mode, and more.
  • Challenge 3: Block & Stream Crypto
    • Contains 8 challenges that combine both block and stream cryptography, such as CTR encryption mode, password reset tokens, and more.
  • Challenge 4: Stream Crypto and Randomness
    • Contains 8 challenges that focus on stream cryptography and random number generation, including breaking random access read/write AES CTR and more.
  • Challenge 5: Diffie-Hellman and Friends
    • Contains 8 challenges that explore Diffie-Hellman and its variants, including breaking and fixing DH with parameters of your own choice, and more.

Progress

  • Set 1 (Completed)
  • Set 2 (Completed)
  • Set 3 (Completed)
  • Set 4 (Completed)
  • Set 5 (In Progress)
  • Set 6
  • Set 7
  • Set 8

Prerequisites

  • A basic understanding of cryptography and its principles
  • Familiarity with Rust programming language

Running the code

  1. Clone the repository using git clone https://github.com/gitofdeepanshu/cryptopals.git
  2. Change to the project directory using cd cryptopals
  3. Run the code using cargo run

Contributing

If you have any suggestions or improvements to the code, feel free to create a pull request.

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages