Coder Social home page Coder Social logo

pba_many_time_pad's Introduction

Cryptography Many Time Pad

Description

We a message sample that was said to have ciphered messages that used the same time pad key multiple times. Our task was the exploit this issue in order to find out the actual content off all the messages.

Solution

Our approach to it was to:

  • Implement the cipher function, a bit-wise XOR operation to be performed between two strings;
  • Decode input into strings, which was given in hexadecimal encoding;
  • Perform a dragging XOR using common English words over the length of of the result of XORing two of the known ciphers in order to find familiar words related to the key
  • Once enough dragging had been done we were able to find the key and cipher it over the ciphered messages in order to find their original content

Related links and tips

Notion post about the problem

Tips given during the assignment:

Here are the hints so far:

The messages (and if you didn’t change it this time, the key) are in english, unicode encoded. The inverse of XOR is XOR itself. XOR is a bitwise operation, and characters for messages are UTF-8 encoded XOR the ciphertexts together, and consider what happens when a space is XORed with a character in [a-zA-Z]. Consider Crib dragging: https://samwho.dev/blog/toying-with-cryptography-crib-dragging/ . (This is basically a full solution to find the key, and should unblock almost everyone)

pba_many_time_pad's People

Contributors

jonathas-conceicao 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.