Skip to main content

Automated Decryption Tool

Project description

➡️ Documentation | Discord | Installation Guide ⬅️
Ciphey

GitHub commit activity Discord Ciphey Ciphey
Fully automated decryption tool using natural language processing & artifical intelligence, along with some common sense.


Installation Guide

NOTE This README is being worked on for version 5. You can only install Ciphey via PyPi at the moment.

🐍 Python (Universal)

Arch

Windows

python3 -m pip install ciphey --upgrade yay ciphey winget ciphey
Linux Mac OS Windows
GitHub Workflow Status GitHub Workflow Status GitHub Workflow Status

🤔 What is this?

Ciphey is an automated decryption tool. Input encrypted text, get the decrypted text back.

"What type of encryption?"

That's the point. You don't know, you just know it's possibly encrypted. Ciphey will figure it out for you.

Ciphey can solve most things in 3 seconds or less.

Ciphey demo

The technical part. Ciphey uses a custom built artifical intelligence module (AuSearch) with a Cipher Detection Interface to approximate what something is encrypted with. And then a custom-built, customisable natural languge processing Language Checker Interface, which can detect when the given text becomes plaintext.

And that's just the tip of the iceberg. For the full technical explanation, check out our documentation.

✨ Features

  • 20+ encryptions supported such as hashes, encodings (binary, base64) and normal encryptions like Caesar cipher, Transposition and more. For the full list, click here
  • Custom Built Artificial Intelligence with Augmented Search (AuSearch) for answering the question "what encryption was used?" Resulting in decryptions taking less than 3 seconds.
  • Custom built natural language processing module Ciphey can determine whether something is plaintext or not. It has an incredibly high accuracy, along with being fast.
  • Multi Language Support at present, only German & English (with AU, UK, CAN, USA variants).
  • Supports hashes & encryptions Which the alternatives such as CyberChef Magic do not.
  • C++ core Blazingly fast.

🔭 Ciphey vs CyberChef

🔁 Base64 Encoded 64 times

Name ⚡ Ciphey ⚡ 🐢 CyberChef 🐢
Gif The guy she tells you not to worry about You
Time 4 seconds 6 seconds
Setup
  • Set the regex param to "{"
  • Set the regex param to "{"
  • You need to know how many times to recurse
  • You need to know it's Base64 all the way down
  • You need to load CyberChef (it's a bloated JS app)
  • Know enough about CyberChef to create this pipeline
  • Invert the match

Note The gifs may load at different times, so one may appear significantly faster than another.
A note on magic CyberChef's most similar feature to Ciphey is Magic. Magic fails instantly on this input and crashes. The only way we could force CyberChef to compete was to manually define it.

We also tested CyberChef and Ciphey with a 6gb file. Ciphey cracked it in 5 minutes and 54 seconds. CyberChef crashed before it even started.

📊 Ciphey vs Katana vs CyberChef Magic

Name ⚡ Ciphey ⚡ 🤡 Katana 🤡 🐢 CyberChef Magic 🐢
Advanced Language Checker
Supports Encryptions
Releases named after Dystopian themes 🌃
Supports hashes
Easy to set up
Can guess what something is encrypted with
Created for hackers by hackers

🎬 Getting Started

If you're having trouble with installing Ciphey, read this.

‼️ Important Links (Docs, Installation guide, Discord Support)

Installation Guide Documentation Discord
📖 Installation Guide 📚 Documentation 🦜 Discord

🏃‍♀️Running Ciphey

There are 3 ways to run Ciphey.

  1. File Input ciphey - encrypted.txt
  2. Unqualified input ciphey -- "Encrypted input
  3. Normal way ciphey -t "Encrypted input"

Gif showing 3 ways to run Ciphey

To get rid of the progress bars, probability table, and all the noise use the quiet mode.

ciphey -t "encrypted text here" -q

For a full list of arguments, run ciphey --help.

⚗️ Importing Ciphey

You can import Ciphey's main and use it in your own programs and code. from Ciphey.__main__ import main

🎪 Contributors

Ciphey was invented by Brandon Skerritt in 2008, and revived in 2019. Ciphey wouldn't be where it was today without Cyclic3 - president of UoL's Cyber Security Society.

Ciphey was revived & recreated by the Cyber Security Society for use in CTFs. If you're ever in Liverpool, consider giving a talk or sponsoring our events. Email us at cybersecurity@society.liverpoolguild.org to find out more 🤠

Major Credit to George H for designing the searching algorithm among other things. Special thanks to varghalladesign for designing the logo. Check out their other design work!

🐕‍🦺 Contributing

Don't be afraid to contribute! We have many, many things you can do to help out. Each of them labelled and easily explained with examples. If you're trying to contribute but stuck, tag @brandonskerritt in the GitHub issue ✨

Alternatively, join the Discord group and send a message there (link in contrib file) or at the top of this README as a badge.

Please read the contributing file for exact details on how to contribute ✨

💰 Financial Contributors

The contributions will be used to fund not only the future of Ciphey and its authors, but also Cyber Security Society at the University of Liverpool.

GitHub doesn't support "sponsor this project and we'll evenly distribute the money", so pick a link and we'll sort it out on our end 🥰

✨ Contributors

Thanks goes to these wonderful people (emoji key):


Brandon

🎨 🚧 💻 🤔

cyclic3

🎨 🚧 💻 🤔

michalani

💻

ashb07

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ciphey-5.0.0rc10.tar.gz (40.8 kB view hashes)

Uploaded Source

Built Distribution

ciphey-5.0.0rc10-py3-none-any.whl (49.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page