โšก Automatically decrypt encryptions without knowing the key or cipher, decode encodings, and crack hashes โšก

Overview

Translations
๐Ÿ‡ฉ๐Ÿ‡ช DE ๐Ÿ‡ซ๐Ÿ‡ท FR ๐Ÿ‡ญ๐Ÿ‡บ HU ๐Ÿ‡ฎ๐Ÿ‡ฉ ID ๐Ÿ‡ฎ๐Ÿ‡น IT ๐Ÿ‡ณ๐Ÿ‡ฑ NL ๐Ÿ‡ง๐Ÿ‡ท PT-BR ๐Ÿ‡ท๐Ÿ‡บ RU ๐Ÿ‡จ๐Ÿ‡ณ ZH

โžก๏ธ Documentation | Discord | Installation Guide โฌ…๏ธ
Ciphey

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


Installation Guide

๐Ÿ Python

๐Ÿ‹ Docker (Universal)

๐ŸŽ MacPorts (macOS)

python3 -m pip install ciphey --upgrade docker run -it --rm remnux/ciphey sudo port install ciphey
Linux Mac OS Windows
GitHub Workflow Status GitHub Workflow Status GitHub Workflow Status

๐Ÿค” What is this?

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

Ciphey aims to be a tool to automate a lot of decryptions & decodings such as multiple base encodings, classical ciphers, hashes or more advanced cryptography.

If you don't know much about cryptography, or you want to quickly check the ciphertext before working on it yourself, Ciphey is for you.

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

No neural networks or bloated AI here. We only use what is fast and minimal.

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

โœจ Features

  • 50+ encryptions/encodings supported such as binary, Morse code and Base64. Classical ciphers like the Caesar cipher, Affine cipher and the Vigenere cipher. Along with modern encryption like repeating-key XOR 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. Whether that plaintext is JSON, a CTF flag, or English, Ciphey can get it in a couple of milliseconds.
  • Multi Language Support at present, only German & English (with AU, UK, CAN, USA variants).
  • Supports encryptions and hashes Which the alternatives such as CyberChef Magic do not.
  • C++ core Blazingly fast.

๐Ÿ”ญ Ciphey vs CyberChef

๐Ÿ” Base64 Encoded 42 times

Name โšก Ciphey โšก ๐Ÿข CyberChef ๐Ÿข
Gif The guy she tells you not to worry about You
Time 2 seconds 6 seconds
Setup
  • Run ciphey on the file
  • 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 Docker Image (from REMnux)
๐Ÿ“– Installation Guide ๐Ÿ“š Documentation ๐Ÿฆœ Discord ๐Ÿ‹ Docker Documentation

๐Ÿƒโ€โ™€๏ธ Running Ciphey

There are 3 ways to run Ciphey.

  1. File Input ciphey -f 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 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 [email protected] to find out more ๐Ÿค 

Major Credit to George H for working out how we could use proper algorithms to speed up the search process. 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 @bee-san or @cyclic3 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 โœจ

By doing so, you'll get your name added to the README below and get to be apart of an ever-growing project! Stargazers over time

๐Ÿ’ฐ 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):


cyclic3

๐ŸŽจ ๐Ÿšง ๐Ÿ’ป ๐Ÿค”

Brandon

๐ŸŽจ ๐Ÿšง ๐Ÿ’ป ๐Ÿค”

michalani

๐Ÿ’ป

ashb07

๐Ÿ’ป

Shardion

๐Ÿ›

Bryan

๐ŸŒ ๐Ÿ“–

Lukas Gabriel

๐Ÿ’ป ๐Ÿ› ๐ŸŒ ๐Ÿค”

Darshan

๐Ÿ›

SkeletalDemise

๐Ÿ’ป

Christian Clauss

๐Ÿ’ป ๐Ÿ›

Machinexa2

๐Ÿ–‹

Anant Verma

๐Ÿ’ป ๐Ÿ›

XVXTOR

๐Ÿ“–

Itamikame

๐Ÿ’ป

MikeMerz

๐Ÿ’ป

Jacob Galam

๐Ÿ’ป ๐Ÿ›

TuxTheXplorer

๐ŸŒ

Itamai

๐Ÿ’ป ๐Ÿ›

Filipe

๐ŸŒ

Malathi

๐Ÿ’ป

Jack

๐ŸŒ

Younes

๐ŸŒ

Marnick Vandecauter

๐ŸŒ

Michael V

๐Ÿ’ป

chuinzer

๐ŸŒ

blackcat-917

๐ŸŒ ๐Ÿ“–

ร…smund Brekke

๐Ÿ’ป

Sashreek Shankar

๐Ÿ’ป

cryptobadger

๐Ÿ’ป ๐Ÿ›

elf

๐Ÿ’ป

Roger Yu

๐Ÿ’ป

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

Comments
  • No matching distribution found for cipheycore<0.3.0,>=0.2.8 (from ciphey)

    No matching distribution found for cipheycore<0.3.0,>=0.2.8 (from ciphey)

    I reported the following errors when I installed using pip. ERROR: Could not find a version that satisfies the requirement cipheycore<0.3.0,>=0.2.8 (from ciphey) (from versions: 0.0.1, 0.1.0) ERROR: No matching distribution found for cipheycore<0.3.0,>=0.2.8 (from ciphey)

    bug 
    opened by Hermes981128 22
  • Find a good English dictionary for us!

    Find a good English dictionary for us!

    Hello spoooopyyy hackers :jack_o_lantern:

    This is a Hacktoberfest only issue! :ghost:

    This is also data-sciency!

    The Problem

    Our English dictionary contains words that aren't English, and does not contain common English words.

    Examples of non-common words in the dictionary:

    "hlithskjalf",
      "hlorrithi",
      "hlqn",
      "hm",
      "hny",
      "ho",
      "hoactzin",
      "hoactzines",
    

    This is our current dictionary:

    https://github.com/dwyl/english-words

    What we want

    An English dictionary without English words that are horrible, and with common English words in JSON format.

    Ideas on how to achieve this

    You'll likely need to use data science, parse English text (such as books / stories) and find uncommon words to remove them. Also potentially adding more words.

    I'm not the best data scientist in the world, so what you decide will be good.

    You can also publish this work outside of Ciphey, such as in a separate GitHub repository -- so long as Ciphey can use it <3

    While I'm not an expert data scientist, I have studied it -- so if you need help leave a comment :)

    enhancement hacktoberfest 
    opened by bee-san 21
  • fish: 'ciphey' terminated by signal SIGSEGV (Address boundary error)

    fish: 'ciphey' terminated by signal SIGSEGV (Address boundary error)

    SIGSEGV error

    Reproduce: install ciphey using the guide on macos using python3.8.5

    Expected behavior: that it works

    Versions:

    • OS X Catalina
    • Python 3.8.5
    • Ciphey versions: ciphey5.1.0 cipheycore0.2.9 cipheydists0.3.18
    bug 
    opened by Audition-CSBlock 20
  • I would like to translate Docs for this project in Hindi Language

    I would like to translate Docs for this project in Hindi Language

    Hi Ciphey,

    I am Abhishek Verma from India, and my native language is Hindi. I would like to translate your docs in Hindi so, the guys here in India can read and understand your DOCS.

    Please let me know, how I can contribute.

    question 
    opened by w3Abhishek 18
  • macOS, pip install, Could not find cipheycore==0.2.9

    macOS, pip install, Could not find cipheycore==0.2.9

    macOS Mojave 10.14.6

    [10:12 xxx@xxx at ~/Downloads/Ciphey git:(master) โœ—] โžœ python3 --version Python 3.8.5 [10:15 xxx@xxx at ~/Downloads/Ciphey git:(master) โœ—] โžœ python3 -m pip install --upgrade pip Requirement already up-to-date: pip in /usr/local/lib/python3.8/site-packages (20.2.1)

    [10:12 xxx@xxx at ~/Downloads/Ciphey git:(master) โœ—] โžœ pip3 install -r requirements.txt Ignoring atomicwrites: markers 'sys_platform == "win32"' don't match your environment Ignoring importlib-metadata: markers 'python_version < "3.8"' don't match your environment Ignoring mypy-extensions: markers 'python_version >= "3.7" and python_version < "3.8"' don't match your environment Ignoring typing-inspect: markers 'python_version >= "3.7" and python_version < "3.8"' don't match your environment Ignoring win32-setctime: markers 'sys_platform == "win32"' don't match your environment Ignoring zipp: markers 'python_version < "3.8"' don't match your environment Requirement already satisfied: alabaster==0.7.12 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 1)) (0.7.12) Requirement already satisfied: appdirs==1.4.4 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 4)) (1.4.4) Requirement already satisfied: astroid==2.4.2 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 7)) (2.4.2) Requirement already satisfied: attrs==19.3.0 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 13)) (19.3.0) Requirement already satisfied: babel==2.8.0 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 16)) (2.8.0) Requirement already satisfied: base58==2.0.1 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 19)) (2.0.1) Requirement already satisfied: black==19.10b0 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 22)) (19.10b0) Requirement already satisfied: certifi==2020.6.20 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 25)) (2020.6.20) Requirement already satisfied: chardet==3.0.4 in /usr/local/lib/python3.8/site-packages (from -r requirements.txt (line 28)) (3.0.4) ERROR: Could not find a version that satisfies the requirement cipheycore==0.2.9 (from -r requirements.txt (line 31)) (from versions: 0.0.1, 0.1.0) ERROR: No matching distribution found for cipheycore==0.2.9 (from -r requirements.txt (line 31)) [10:17 xxx@xxx at ~/Downloads/Ciphey git:(master) โœ—] โžœ python3 -m pip install ciphey --upgrade Collecting ciphey Using cached ciphey-5.1.0-py3-none-any.whl (51 kB) ERROR: Could not find a version that satisfies the requirement cipheycore<0.3.0,>=0.2.8 (from ciphey) (from versions: 0.0.1, 0.1.0) ERROR: No matching distribution found for cipheycore<0.3.0,>=0.2.8 (from ciphey)

    bug 
    opened by reber0 17
  • Please provide more information on how to install Ciphey

    Please provide more information on how to install Ciphey

    I've been coming back to this page trying to get Ciphey to work over and over and I'm simply not knowledgable enough to get it to work. I downloaded a release of Ciphey, put it in a folder and put it on my desktop, then checked the installation section. It basically tells me to run

    python3 -m pip install -U ciphey

    Okay, so, I downloaded python 3, restarted my pc, and the command doesn't work, turns out, I had to change it to

    python -m pip install -U ciphey

    Because I was upgrading from a previous version of python. Then, I kept getting:

    ERROR: Could not find a version that satisfies the requirement cipheycore<0.2.0,>=0.1.4 (from ciphey) (from versions: 0.0.1, 0.1.0) ERROR: No matching distribution found for cipheycore<0.2.0,>=0.1.4 (from ciphey)

    And, of course, running

    ciphey -t "encrypted text here"

    won't do anything, because it didn't install correctly. So I decided to check out https://docs.ciphey.online/en/latest/ to try and understand what I was doing wrong. The installation page there is completely different, telling me to run

    $ pip3 install ciphey

    Not only does CMD not run like this but it doesn't give me any links as to what pip3 comes from or what I need to run the command to begin with. Running the command returns another error

    ERROR: Could not find a version that satisfies the requirement tensorflow<3.0.0,>=2.1.0 (from ciphey) (from versions: none) ERROR: No matching distribution found for tensorflow<3.0.0,>=2.1.0 (from ciphey)

    Ciphey looks amazing, but for someone like me who basically knows nothing about running python scripts and such, it's a complete maze to get working because of the lack of information. And even worse for someone who doesn't know the basics. Just telling users to "run commands" is a bit.. hollow. For a total noob. So I'm basically forced to admit to being a bit stupid and just ask you guys to provide more information on the installation page for people like me, or to just help me directly.

    documentation question 
    opened by Veeyu22 17
  • Run `ciphey` faild in macOS

    Run `ciphey` faild in macOS

    Describe the bug A clear and concise description of what the bug is. Run ciphey faild in macOS.

    $ ciphey
    [1]    3868 segmentation fault  ciphey
    

    Then python crashed.

    To Reproduce Just run ciphey.

    Expected behavior Run normally.

    Screenshots Screen Shot 2020-08-06 at 6 55 18 PM

    Versions:

    • OS/Distro: macOS Catalina 10.15.6
    • Python version: 3.8.0
    • Ciphey versions:
      • ciphey: 5.1.0
      • cipheycore: 0.2.9
      • cipheydists: 0.3.18

    Additional context macOS promble report in another reply.

    bug 
    opened by Sheey11 15
  • Getting Segmentation fault: 11  when running ciphey

    Getting Segmentation fault: 11 when running ciphey

    โš ๏ธIMPORTANTโš ๏ธ if you do not fill this out, we will automatically delete your issue. We will not help anyone that cannot fill out this template.

    Describe the bug A clear and concise description of what the bug is. When I run ciphey, I get "Segmentation fault: 11". Note: my plaintext was supposed to be encoded using multiple ciphers and I did pass -p ausearch.enable_nested=True Plaintext โš ๏ธIMPORTANTโš ๏ธ The below code is non-negotiable for "Ciphey didn't decrypt...." problems. If you do not tell us your plaintext, we will not help you.

    
    GOWOKGFOTRSERRAUVRFFBFCAAWWAWGTWWQGJFMWBTKFTJASFAEZTZWIMDZRYFPZRATMLGFYDROWRBWLXKGQHGQWQXWLKQYCQOMFCUVJFQVFQTUIECCGDKTZVVJEJBG
    

    Version โš ๏ธIMPORTANTโš ๏ธ We need this information because different environments will induce different bugs in Ciphey

    • OS/Distro: macOS Catalina
    • Python version: 3.8.5
    • Ciphey versions: 5.3.2 0.2.9 0.3.23
    • Did you use Docker? No

    Verbose Output โš ๏ธIMPORTANTโš ๏ธ Verbose output will tell us why it's not working the way we expected it to be. Run Ciphey with ciphey -vvv and paste the results into Pastebin.com or a GitHub Gist Link to my verbose output To Reproduce Steps to reproduce the behavior:

    1. What input did you use? ciphey -p ausearch.enable_nested=True -t "GOWOKGFOTRSERRAUVRFFBFCAAWWAWGTWWQGJFMWBTKFTJASFAEZTZWIMDZRYFPZRATMLGFYDROWRBWLXKGQHGQWQXWLKQYCQOMFCUVJFQVFQTUIECCGDKTZVVJEJBG"
    2. What flags / arguments did you use? -p ausearch.enable_nested=True -t "GOWOKGFOTRSERRAUVRFFBFCAAWWAWGTWWQGJFMWBTKFTJASFAEZTZWIMDZRYFPZRATMLGFYDROWRBWLXKGQHGQWQXWLKQYCQOMFCUVJFQVFQTUIECCGDKTZVVJEJBG"

    Expected behavior A clear and concise description of what you expected to happen. I expected it to decode my encrypted text. Any other information? Add any other context about the problem here.

    bug 
    opened by JLP04 14
  • Language detection interface

    Language detection interface

    Problem

    Whilst the original language checker is absolutely brilliant, it fails at small ciphertexts, or those with high entropy. An AI solution would be cool, but would be a bit OTT for rigid data structures such as json or CTF flags

    Solution

    We present an interface for defining a custom candidate acceptor:

    class LanguageChecker(ABC):
        @staticmethod
        @abstractmethod
        def getArgs(**kwargs) -> dict: pass
    
        @abstractmethod
        def checkLanguage(self, text: str) -> bool: pass
    
    ciphey_acceptor = LanguageCheckerDerived()
    

    This can be passed as an argument to each cracker. Since a basic chi-squared filtration is applied by the core to the candidates, relatively few should make it through. This allows the is_acceptable function to be a halt condition: if it returns true on any candidate, we stop.

    However, a user shouldn't be expected to write such code for all text, that would be absurd.

    Instead, we provide a few language detection interfaces that can be selected by the user instead of them writing their own. My suggestion would be the following:

    | Name | Args | Description | | - | - | - | | brandon | None | Current system, for long natural text | | neuralnet | path | A neural net for text with deep structure, or smaller text | | regex | regex | A regular expression for very simple structures | | user | None | Prompts the user for each candidate |

    I also put forward the following flags: | Flag| Description | | - | - | | -a <name> | The internal language detector <name> (maybe with a configurable path) | | -A <path> | A python script/module at <path> containing the ciphey_acceptor variable | | -p <param>=<value> | Sets the kwarg <param> to <value> when the is_acceptable method is called |

    enhancement 
    opened by Cyclic3 14
  • Add Braille (Grade 1)

    Add Braille (Grade 1)

    Hello, I added Braille grade 1 feature for issue-439. Not sure how to do grade 2 aka contractions.

    Not sure if I covered everything for grade 1...

    Looking for feedback.

    opened by rogercyyu 11
  • added DNA decoder

    added DNA decoder

    Hi, I have added the logical code to decode DNA sequence into binary, but for some reason, it's not working with ciphey. It shows - "Failed to crack".

    The print statement on line #13 was just an attempt to solve the bug, but couldn't.

    Can you help me with this?

    opened by anantverma275 11
  • Update mock requirement from ^4.0.3 to >=4.0.3,<6.0.0

    Update mock requirement from ^4.0.3 to >=4.0.3,<6.0.0

    Updates the requirements on mock to permit the latest version.

    Changelog

    Sourced from mock's changelog.

    5.0.0

    • gh-98624: Add a mutex to unittest.mock.NonCallableMock to protect concurrent access to mock attributes.

    • bpo-43478: Mocks can no longer be used as the specs for other Mocks. As a result, an already-mocked object cannot have an attribute mocked using autospec=True or be the subject of a create_autospec(...) call. This can uncover bugs in tests since these Mock-derived Mocks will always pass certain tests (e.g. isinstance) and builtin assert functions (e.g. assert_called_once_with) will unconditionally pass.

    • bpo-45156: Fixes infinite loop on :func:unittest.mock.seal of mocks created by :func:~unittest.create_autospec.

    • bpo-41403: Make :meth:mock.patch raise a :exc:TypeError with a relevant error message on invalid arg. Previously it allowed a cryptic :exc:AttributeError to escape.

    • gh-91803: Fix an error when using a method of objects mocked with :func:unittest.mock.create_autospec after it was sealed with :func:unittest.mock.seal function.

    • bpo-41877: AttributeError for suspected misspellings of assertions on mocks are now pointing out that the cause are misspelled assertions and also what to do if the misspelling is actually an intended attribute name. The unittest.mock document is also updated to reflect the current set of recognised misspellings.

    • bpo-43478: Mocks can no longer be provided as the specs for other Mocks. As a result, an already-mocked object cannot be passed to mock.Mock(). This can uncover bugs in tests since these Mock-derived Mocks will always pass certain tests (e.g. isinstance) and builtin assert functions (e.g. assert_called_once_with) will unconditionally pass.

    • bpo-45010: Remove support of special method __div__ in :mod:unittest.mock. It is not used in Python 3.

    • gh-84753: :func:inspect.iscoroutinefunction now properly returns True when an instance of :class:unittest.mock.AsyncMock is passed to it. This makes it consistent with behavior of :func:asyncio.iscoroutinefunction. Patch by Mehdi ABAAKOUK.

    • bpo-46852: Remove the undocumented private float.__set_format__() method, previously known as float.__setformat__() in Python 3.7. Its docstring said: "You probably don't want to use this function. It exists mainly to be used in Python's test suite." Patch by Victor Stinner.

    • gh-98086: Make sure patch.dict() can be applied on async functions.

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • โš ๏ธ Ciphey is being deprecated โš ๏ธ

    โš ๏ธ Ciphey is being deprecated โš ๏ธ

    Hey ๐Ÿ‘‹๐Ÿป

    We are currently in the middle of writing out a new automated decoding tool in Rust called Ares: https://github.com/bee-san/Ares

    As such, we do not have much time to spend on Ciphey ๐Ÿ™‡๐Ÿป

    We fully intend to replace Ciphey with Ares in the future, but for now Ciphey will stay and some PRs will be merged :)

    Please note that Ares does not support all of the features of Ciphey currently, we recommend using both and if you're really stuck coming to our Discord channel #coded-messages for help! https://discord.gg/MfuMzEVjtK

    maintenance WARNING 
    opened by bee-san 0
  • Add timeout functionality to terminate processes after 60 seconds.

    Add timeout functionality to terminate processes after 60 seconds.

    Patch for #743

    Summary

    Previously, the software was not timing out after a period of inactivity. I have added this functionally using the multiprocessing library. The timeout is currently hard-coded at 60 seconds, but I have added a flag to ciphey.py which can be incorporated.

    TODO

    • Enable --timeout flag in ciphey.py (currently unused).

    This PR is part of my Hacktoberfest contribution.

    opened by gwo0d 1
  • Update pytest-cov requirement from ^3.0.0 to ^4.0.0

    Update pytest-cov requirement from ^3.0.0 to ^4.0.0

    Updates the requirements on pytest-cov to permit the latest version.

    Changelog

    Sourced from pytest-cov's changelog.

    4.0.0 (2022-09-28)

    Note that this release drops support for multiprocessing.

    • --cov-fail-under no longer causes pytest --collect-only to fail Contributed by Zac Hatfield-Dodds in [#511](https://github.com/pytest-dev/pytest-cov/issues/511) <https://github.com/pytest-dev/pytest-cov/pull/511>_.

    • Dropped support for multiprocessing (mostly because issue 82408 <https://github.com/python/cpython/issues/82408>_). This feature was mostly working but very broken in certain scenarios and made the test suite very flaky and slow.

      There is builtin multiprocessing support in coverage and you can migrate to that. All you need is this in your .coveragerc::

      [run] concurrency = multiprocessing parallel = true sigterm = true

    • Fixed deprecation in setup.py by trying to import setuptools before distutils. Contributed by Ben Greiner in [#545](https://github.com/pytest-dev/pytest-cov/issues/545) <https://github.com/pytest-dev/pytest-cov/pull/545>_.

    • Removed undesirable new lines that were displayed while reporting was disabled. Contributed by Delgan in [#540](https://github.com/pytest-dev/pytest-cov/issues/540) <https://github.com/pytest-dev/pytest-cov/pull/540>_.

    • Documentation fixes. Contributed by Andre Brisco in [#543](https://github.com/pytest-dev/pytest-cov/issues/543) <https://github.com/pytest-dev/pytest-cov/pull/543>_ and Colin O'Dell in [#525](https://github.com/pytest-dev/pytest-cov/issues/525) <https://github.com/pytest-dev/pytest-cov/pull/525>_.

    • Added support for LCOV output format via --cov-report=lcov. Only works with coverage 6.3+. Contributed by Christian Fetzer in [#536](https://github.com/pytest-dev/pytest-cov/issues/536) <https://github.com/pytest-dev/pytest-cov/issues/536>_.

    • Modernized pytest hook implementation. Contributed by Bruno Oliveira in [#549](https://github.com/pytest-dev/pytest-cov/issues/549) <https://github.com/pytest-dev/pytest-cov/pull/549>_ and Ronny Pfannschmidt in [#550](https://github.com/pytest-dev/pytest-cov/issues/550) <https://github.com/pytest-dev/pytest-cov/pull/550>_.

    3.0.0 (2021-10-04)

    Note that this release drops support for Python 2.7 and Python 3.5.

    • Added support for Python 3.10 and updated various test dependencies. Contributed by Hugo van Kemenade in [#500](https://github.com/pytest-dev/pytest-cov/issues/500) <https://github.com/pytest-dev/pytest-cov/pull/500>_.
    • Switched from Travis CI to GitHub Actions. Contributed by Hugo van Kemenade in [#494](https://github.com/pytest-dev/pytest-cov/issues/494) <https://github.com/pytest-dev/pytest-cov/pull/494>_ and [#495](https://github.com/pytest-dev/pytest-cov/issues/495) <https://github.com/pytest-dev/pytest-cov/pull/495>_.
    • Add a --cov-reset CLI option. Contributed by Danilo ล egan in [#459](https://github.com/pytest-dev/pytest-cov/issues/459) <https://github.com/pytest-dev/pytest-cov/pull/459>_.
    • Improved validation of --cov-fail-under CLI option. Contributed by ... Ronny Pfannschmidt's desire for skark in [#480](https://github.com/pytest-dev/pytest-cov/issues/480) <https://github.com/pytest-dev/pytest-cov/pull/480>_.
    • Dropped Python 2.7 support.

    ... (truncated)

    Commits
    • 28db055 Bump version: 3.0.0 โ†’ 4.0.0
    • 57e9354 Really update the changelog.
    • 56b810b Update chagelog.
    • f7fced5 Add support for LCOV output
    • 1211d31 Fix flake8 error
    • b077753 Use modern approach to specify hook options
    • 00713b3 removed incorrect docs on data_file.
    • b3dda36 Improve workflow with a collecting status check. (#548)
    • 218419f Prevent undesirable new lines to be displayed when report is disabled
    • 60b73ec migrate build command from distutils to setuptools
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Update typing-inspect requirement from >=0.6,<0.8 to >=0.6,<0.9

    Update typing-inspect requirement from >=0.6,<0.8 to >=0.6,<0.9

    Updates the requirements on typing-inspect to permit the latest version.

    Commits
    • 96faa26 Bump version
    • 0f45982 Add support for UnionType in get_args (#87)
    • f052816 Fix TypedDict on new Python and typing_extensions (#86)
    • 462c704 Try fixing 3.10
    • 26c32dc Run tests also on Python 3.10
    • 768e931 Make get_origin(Literal[...]) == Literal. (#80)
    • 93044c1 Fix tests suite on Python 3.5.{0,1}. (#85)
    • c6adf81 Support PEP 604 unions, types.UnionType (#83)
    • 8f6aa20 Making the is_new_type check more robust then just checking supertype exi...
    • 01f1b91 Require newer typing-extensions (#76)
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
Releases(5.14.0)
  • 5.14.0(Jun 6, 2021)

    Whatโ€™s Changed

    • Updated __main__ to be smarter (#652) @bee-san
    • Added linking & description to Cipheys pywhat (#645) @bee-san
    • Add click tests & fix greppable bug with pywhat (#654) @bee-san
    • Update pywhat requirement from >=0.2.5,<1.1.0 to >=0.2.5,<1.2.0 (#650) @dependabot
    • Remove unnecessary newline (#649) @swanandx
    • Update pywhat requirement from ^0.2.5 to >=0.2.5,<1.1.0 (#647) @dependabot
    • Remove yaspin and replace it with Rich (#638) @bee-san
    Source code(tar.gz)
    Source code(zip)
  • 5.13.0(May 23, 2021)

    Whatโ€™s Changed

    • Clean up colours and make Ciphey more friendly (#633) @bee-san Ciphey now actually looks โœจ Cool! โœจ
      image
    • General bugs / cleanup, the usual'
    Source code(tar.gz)
    Source code(zip)
  • 5.12.1(May 22, 2021)

  • 5.12.0(May 21, 2021)

    Whatโ€™s Changed

    • Added new checker and general cleanup (#619) @bee-san

    This is our all-purpose regex checker! Ciphey can now detect:

    • IP addresses
    • Email addresses
    • Domains
    • Crypto-wallets and much, much more!

    Check out PyWhat, which powers this here: https://github.com/bee-san/pyWhat

    • Create config.yml to disallow blank issues (#599) @bee-san
    • Made Cipheys output more friendly and fixed the what bug
    Source code(tar.gz)
    Source code(zip)
  • 5.11.2(May 21, 2021)

    Whatโ€™s Changed

    • docs: add mohzulfikar as a contributor (#618) @allcontributors
    • Fix docker hub link (#617) @mohzulfikar
    • Update click requirement from ^7.1.2 to >=7.1.2,<9.0.0 (#614) @dependabot
    • Revert "Bee fix ausearch" (#613) @bee-san
    • Update sphinx requirement from ^3.4.1 to ^4.0.0 (#611) @dependabot
    • Update black requirement from ^20.8b1 to ^21.4b2 (#609) @dependabot-preview
    • Upgrade to GitHub-native Dependabot (#610) @dependabot-preview
    • Bee fix ausearch (#603) @bee-san
    • Broken badge (#596) @bee-san
    • Update yaspin requirement from >=0.17,<1.5 to >=0.17,<1.6 (#592) @dependabot-preview
    • Update rich requirement from >=4,<10 to >=4,<11 (#595) @dependabot-preview
    • docs: add JesseEmond as a contributor (#589) @allcontributors
    Source code(tar.gz)
    Source code(zip)
  • 5.11.1(Feb 28, 2021)

    Whatโ€™s Changed

    • Support Python 3.9 (Fix #558) (#586) @JesseEmond
    • Update yaspin requirement from >=0.17,<1.4 to >=0.17,<1.5 (#588) @dependabot-preview
    • Add MacPorts Installation Guide (#585) @harens
    • Update yaspin requirement from >=0.17,<1.3 to >=0.17,<1.4 (#578) @dependabot-preview
    • Fix critical error (#553) @SkeletalDemise
    • Remove requirements and safety (#576) @bee-san
    • Bump pygments from 2.7.2 to 2.7.3 (#557) @dependabot-preview
    • Bump certifi from 2020.11.8 to 2020.12.5 (#555) @dependabot-preview
    • Bump tqdm from 4.54.0 to 4.54.1 (#554) @dependabot-preview
    Source code(tar.gz)
    Source code(zip)
  • 5.11.0(Dec 2, 2020)

    Features

    • Add Braille (Grade 1) (#462) @rogercyyu
    • Add Gzip (#520) @SkeletalDemise

    Maintenance

    • Bump packaging from 20.5 to 20.7 (#552) @dependabot-preview

    • Bump lazy-object-proxy from 1.4.3 to 1.5.2 (#551) @dependabot-preview

    • Bump packaging from 20.4 to 20.5 (#550) @dependabot-preview

    • Bump tqdm from 4.53.0 to 4.54.0 (#549) @dependabot-preview

    • docs: add rogercyyu as a contributor (#546) @allcontributors

    • docs: add e1fy as a contributor (#527) @allcontributors

    • Bump tqdm from 4.52.0 to 4.53.0 (#545) @dependabot-preview

    • Bump tqdm from 4.51.0 to 4.52.0 (#542) @dependabot-preview

    • Bump urllib3 from 1.25.11 to 1.26.2 (#540) @dependabot-preview

    • Bump regex from 2020.10.28 to 2020.11.13 (#539) @dependabot-preview

    • Bump babel from 2.8.0 to 2.9.0 (#538) @dependabot-preview

    • Bump requests from 2.24.0 to 2.25.0 (#536) @dependabot-preview

    • Bump certifi from 2020.6.20 to 2020.11.8 (#532) @dependabot-preview

    • Bump pathspec from 0.8.0 to 0.8.1 (#531) @dependabot-preview

    • Bump attrs from 20.2.0 to 20.3.0 (#529) @dependabot-preview

    • Bump pytz from 2020.1 to 2020.4 (#525) @dependabot-preview

    • Bump toml from 0.10.1 to 0.10.2 (#524) @dependabot-preview

    • Bump regex from 2020.10.23 to 2020.10.28 (#523) @dependabot-preview

    • docs: add blackcat-917 as a contributor (#522) @allcontributors

    • Improved READMEs (#521) @blackcat-917

    • Code cleanup (#510) @SkeletalDemise

    • Bump pygments from 2.7.1 to 2.7.2 (#517) @dependabot-preview

    • Bump tqdm from 4.50.2 to 4.51.0 (#516) @dependabot-preview

    • Bump regex from 2020.10.15 to 2020.10.23 (#513) @dependabot-preview

    Bugs

    • Revert changes (#547) @SkeletalDemise
    • Fixed some stuff with ausearch and bases (#528) @Cyclic3
    • fix can't exit ciphey (#526) @e1fy
    Source code(tar.gz)
    Source code(zip)
  • 5.10.0(Oct 24, 2020)

    Features

    • Add Soundex Cracker (#495) @sashreek1
    • Add Baconian (#493) @SkeletalDemise

    Maintenance

    • Update README.md (#505) @bee-san
    • Update yaspin requirement from >=0.17,<1.2 to >=0.17,<1.3 (#509) @dependabot-preview
    • Bump urllib3 from 1.25.10 to 1.25.11 (#507) @dependabot-preview
    • Update rich requirement from >=4,<9 to >=4,<10 (#506) @dependabot-preview
    • Bump regex from 2020.10.11 to 2020.10.15 (#504) @dependabot-preview
    • docs: add cryptobadger as a contributor (#503) @allcontributors
    • Bump iniconfig from 1.0.1 to 1.1.1 (#502) @dependabot-preview
    • docs: add sashreek1 as a contributor (#500) @allcontributors
    • docs: add Ozzyz as a contributor (#498) @allcontributors
    • Bump isort from 5.6.3 to 5.6.4 (#497) @dependabot-preview
    • Bump colorama from 0.4.3 to 0.4.4 (#496) @dependabot-preview
    • Bump regex from 2020.9.27 to 2020.10.11 (#492) @dependabot-preview
    • Bump isort from 5.6.2 to 5.6.3 (#491) @dependabot-preview

    Bug

    • Fix issue #262 - 'x' surrounded by letters in Galactic Alphabet Decoder (#501) @cryptobadger
    Source code(tar.gz)
    Source code(zip)
  • 5.9.0(Oct 11, 2020)

    Features

    • Add Affine Cracker (#483) @Ozzyz
    • Add UUencode (#467) @malathit
    • Add ASCII shift (#478) @SkeletalDemise
    • Add ROT47 (#477) @Cyclic3

    Maintenance

    • Added CODE_OF_CONDUCT.md translation and fixed some things (#488) @blackcat-917
    • Bump tqdm from 4.50.0 to 4.50.2 (#486) @dependabot-preview
    • Bump isort from 5.5.4 to 5.6.1 (#487) @dependabot-preview
    • docs: add blackcat-917 as a contributor (#485) @allcontributors
    • readme/zh: fix links and adjust some words (#482) @imba-tjd
    • Bump win32-setctime from 1.0.2 to 1.0.3 (#480) @dependabot-preview
    • Added italian translation (#479) @blackcat-917

    Bugs

    No commits were made that specifically squashed bugs. Instead I assume bugs were squashed in other commits.

    Source code(tar.gz)
    Source code(zip)
  • 5.8.0(Oct 4, 2020)

    Features

    • Add Brainfuck interpreter (#470) @mav8557
    • Add Tap Code Decoder (#458) @Itamai

    Maintenance

    • Add Chinese translation (#461) @chuinzer
    • docs: add chuinzer as a contributor (#473) @allcontributors
    • docs: add mav8557 as a contributor (#471) @allcontributors
    • Update rich requirement from >=4,<8 to >=4,<9 (#469) @dependabot-preview
    • Bump joblib from 0.16.0 to 0.17.0 (#466) @dependabot-preview
    • docs: add Marnick39 as a contributor (#460) @allcontributors
    • Add Dutch documentation (#457) @Marnick39
    • Updated version nums (#459) @bee-san
    • add french translation of the README file (#447) @yafkari
    • Bump isort from 5.5.3 to 5.5.4 (#456) @dependabot-preview
    • docs: add jacobggman as a contributor (#455) @allcontributors
    • Small improvements to the code base (#454) @jacobggman
    • Fixed Broken Link on RU translation (#453) @HexChaos
    • docs: add yafkari as a contributor (#452) @allcontributors
    • Add Russian Translation Link (#451) @HexChaos
    • Russian Translation (#443) @HexChaos
    • docs: add HexChaos as a contributor (#450) @allcontributors
    • docs: add malathit as a contributor (#449) @allcontributors
    • Option to go to portuguese version was with the wrong link (#445) @Termack
    • Terminal test for Ciphey (#446) @malathit
    • docs: add Termack as a contributor (#444) @allcontributors
    • Pt br translate (#442) @Termack
    • Object is not subscriptable error fix (#440) @Itamai
    • docs: add Itamai as a contributor (#441) @allcontributors

    Bug Fixes

    • Fixed Russian Translation Link (#464) @HexChaos
    • Grammar fix for Features (#468) @NinjaJc01
    Source code(tar.gz)
    Source code(zip)
  • 5.7.0(Sep 30, 2020)

    Features

    • Add A1Z26 (#431) @SkeletalDemise
    • Add DTMF (#428) @SkeletalDemise
    • Add Base65536 (#427) @SkeletalDemise

    Maintenance

    • Change all old documentation links to new ones (#425) @SkeletalDemise
    • Hungarian Translation (#419) @TuxTheXplorer
    • Bump isort from 5.5.2 to 5.5.3 (#421) @dependabot-preview
    • docs: add TuxTheXplorer as a contributor (#420) @allcontributors
    • Bump tqdm from 4.49.0 to 4.50.0 (#434) @dependabot-preview
    • Bump regex from 2020.7.14 to 2020.9.27 (#430) @dependabot-preview
    • Bump greenlet from 0.4.16 to 0.4.17 (#426) @dependabot-preview
    • Update rich requirement from >=4,<7 to >=4,<8 (#418) @dependabot-preview
    • Bump pygments from 2.7.0 to 2.7.1 (#416) @dependabot-preview

    Bug Fixes

    • Fixed gif link in HU translation (#423) @TuxTheXplorer
    Source code(tar.gz)
    Source code(zip)
  • 5.6.0(Sep 17, 2020)

    Features

    • Added multitap decoder (#340) (#414)
    • Added URL decoding (#400)
    • added Baudot ITA2 decoder (#399)
    • Add DNA codon (#391)

    Maintenance

    • Bump pynvim from 0.4.1 to 0.4.2 (#411)
    • docs: add MikeMerz as a contributor (#414)
    • Bump coverage from 5.2.1 to 5.3 (#409)
    • Bump isort from 5.5.1 to 5.5.2 (#402)
    • Bump tqdm from 4.48.2 to 4.49.0 (#408)
    • Bump pygments from 2.6.1 to 2.7.0 (#407)
    • Update pytest requirement from ^5.4.3 to ^6.0.2 (#406)
    • docs: add Itamikame as a contributor (#401)
    • Update pyproject.toml (#403)

    Bugs

    • Fixed morse (#405)
    Source code(tar.gz)
    Source code(zip)
  • 5.5.2(Sep 9, 2020)

  • 5.5.1(Sep 9, 2020)

    Features

    • Add Base64 URL (#384)

    Maintenance

    • Add support for Nullcipher-like inputs (i.e. NATO Alphabet) (#336)
    • Added templates for new checkers (#393) @bee-san

    Fixed Bugs

    • Fixed byte typing (#385)
    • Generate Poetry's requirements.txt (#383)
    • Made checkers polymorphic (#382)
    • Input causes infinite loop; Percent signs in input cause issues (#282)
    • Ciphey returns plaintext for all decimal based input (#389)
    Source code(tar.gz)
    Source code(zip)
  • 5.5.0(Sep 7, 2020)

    Features

    • Added human checker and spinner pause handle (#374)

    Now when Ciphey finds plaintext, by default, it will ask you if the plaintext is actually the plaintext. The best plaintext checker is humans, after all!

    This opens up a wide variety of new checkers. Right now we are building specific checkers (JSON, English, Regex).

    So we had high accuracy, but low generality. We could only spot these specific things.

    By introducing the Human Check, we can now build lower accuracy but higher generality checks. Things like:

    • Entropy (to find order in text)
    • Chi Squared (technically g-test) to match freq distributions with an expected distribution.

    By combining these two approaches and using the Human Checker, Ciphey should be able to present to the human the plaintext most of the time without missing it.

    Learn to disable this here: https://github.com/Ciphey/Ciphey/wiki/Common-things-you-may-want-to-do#how-do-i-disable-the-human-checker

    Learn more about our checkers here: https://github.com/Ciphey/Ciphey/wiki/Checkers,-explained

    Maintenance

    • docs: add anantverma275 as a contributor (#372)
    • remove codacy badge (#379)
    • Fix readme (#378)

    Bugs

    :beetle:

    Source code(tar.gz)
    Source code(zip)
  • 5.4.0(Sep 7, 2020)

    Features

    • Added XOR #333
    • Added repeating-key XOR (this is our first modern day cipher) #333
    • Added Base58 Flickr (release candidate, not turned on in code yet) #361
    • Added Z85 (release candidate, not turned on in code yet) #361
    • Added Base69 decoder #315
    • Added Decimal decoder #334

    Maintenance

    • Added code quality badge (#371)
    • docs: add machinexa2 as a contributor (#366)
    • grammar (#365)
    • updated readme (#358)
    • Added releasing drafting (#341)

    Bugs

    Fixed some bugs that we forgot to write down.... :sweat_smile:

    Source code(tar.gz)
    Source code(zip)
  • v5.3.3(Sep 5, 2020)

  • 5.3.2(Aug 30, 2020)

  • 5.3.1(Aug 29, 2020)

  • 5.3.0(Aug 26, 2020)

    Features

    • Added Base58 #297
    • Added Base62 #297
    • Added Base58 with Ripple charset #297
    • Added Atbash (enCiphey) #283
    • Added SGA encoder (enCiphey) #283
    • Added XY cipher (enCiphey) #283

    Maintenance

    • Fixed casting for p values #290

    Bugs

    • Fixed #291
    • Fixed invalid JSON #288
    Source code(tar.gz)
    Source code(zip)
  • 5.2.0(Aug 12, 2020)

    Features

    • Added X&Y cipher
    • Added Standard Galactic Language (Minecraft Enchanting Table)

    Maintenance

    • Stopped using Git LFS as we ran over the limit
    • Cleaned up docs so more can add ciphers
    • Added translations of README
    • Made Docker

    Bugs

    • Fixed bug where colour was printed
    • Saved my dying peace lilly
    Source code(tar.gz)
    Source code(zip)
  • 5.1.0(Aug 5, 2020)

    Features

    • Added Atbash cipher #249

    Maintenance

    • Fixed some CipheyCore issues
    • Improved general stability of program

    Bugs

    • Fixed bug where language checker didn't strip newlines when checking for words.
    Source code(tar.gz)
    Source code(zip)
  • 5.0.0(Aug 1, 2020)

    This is the first release of Ciphey. if you believe otherwise, the Ministry of Truth will know

    This release is the first commit for Ciphey. Before this, we exchanged code via Google Docs. Which is a great version control system that allows multiple contributors at once.

    Features

    • Vigenere is now enabled, due to massive performance gains from the C++ core
    • Pytest can now be run over the entire program, from main to the output. This means we can crate tests that test the whole of Ciphey, not just small unit tests.
    • Better input handling. Ciphey now supports pipes echo 'hello' | ciphey - and text with no arguments ciphey 'hello'

    Bug Fixes

    • Chi-squared calcuations are now done correctly
    • Fixed bug where main didn't return the output.
    • Multiple debug statements were printed when not in debug mode.
    • Morse Code now has a more complete alphabet.
    • Morse code now doesn't fail on letters that cannot be translated to Morse.
    • Fixed a bug where if any of the inputs were a certain size, it got classed as a hash and bypassed language checker despite it not being English.

    Maintenance

    • Offloaded lots of stuff onto C++ core to get much speed
    • Disabled summing of language checkers, as no-one could explain why it would make sense
    • Bases.py is refactored so users can manually call decryptions. The name has also changed from base64 to bases.
    • LanguageChecker now follows PEP8.
    • Main and MathsHelper now follow PEP8.
    • Now uses Nox to Pytest against multple Python versions (3.6, 3.7, and 3.8).
    • Code coverage is now calculated and used.
    • Automatic application of Black formatter upon push.
    • Automatic uploading to PyPi testing.
    • Saftey, which checks for security issues, is now run with Nox.
    • Automatic uploding to Test PyPi and PyPi upon push to master, and GitHub release respectively.
    • We now use verbosity levels -v, -vv, -vvv instead of --debug, --trace etc.
    • Switched from ArgParser to Click
    • Click now safely opens files
    • Click now creates OS friendly file paths from arguments
    • Click now supports unqualified paths
    • Click now supports UNIX style file opening ciphey - file.txt
    • Added more Gifs to README
    • Created an installation guide on the documentation
    • Created a "how does it work" section on the documentation
    • Brought ciphey.online to be used for the website, and created the repo cipheyOnline
    • Created discord.ciphey.online to link to our Discord
    • Discord links & Documentation links are now plastered everywhere, so users should always be able to find support.
    Source code(tar.gz)
    Source code(zip)
  • 5.0.0rc4(Jul 12, 2020)

  • v5.0.0-rc2(Jul 9, 2020)

  • v5.0.0-rc1(Jul 9, 2020)

  • 4.2.0(Jun 10, 2020)

    Features

    • Vigenere is now enabled, due to massive performance gains from the C++ core
    • Pytest can now be run over the entire program, from main to the output. This means we can create tests that test the whole of Ciphey, not just small unit tests.
    • Better input handling. Ciphey now supports pipes echo 'hello' | ciphey and text with no arguments ciphey 'hello'.

    Bug Fixes

    • Chi-squared calcuations are now done correctly
    • Fixed bug where main didn't return the output.
    • Multiple debug statements were printed when not in debug mode.
    • Morse Code now has a more complete alphabet.
    • Morse code now doesn't fail on letters that cannot be translated to Morse.
    • Fixed a bug where if any of the inputs were a certain size, it got classed as a hash and bypassed language checker despite it not being English.

    Maintenance

    • Offloaded lots of stuff onto C++ core to get much speed
    • Disabled addition of language checkers, as no-one could explain why it would make sense
    • Bases.py is refactored so users can manually call decryptions. The name has also changed from base64 to bases.
    • LanguageChecker now follows PEP8.
    • Main and MathsHelper now follow PEP8.
    • Now uses Nox to Pytest against multiple Python versions (3.6, 3.7, and 3.8).
    • Code coverage is now calculated and used.
    • Automatic application of Black formatter upon push.
    • Automatic uploading to PyPi testing.
    • Saftey, which checks for security issues, is now run with Nox.
    • Automatic uploading to Test PyPi and PyPi upon push to master, and GitHub release respectively.
    • PEP8'd the code
    • Moved to Poetry
    Source code(tar.gz)
    Source code(zip)
  • v4.1.0(Jun 2, 2020)

    Now featuring:

    • C++ core that makes tedious stuff faster!
    • Statistics from a mathematician!
    • Consistent versions!
    • Questionable speed/reliability tradeoffs!
    Source code(tar.gz)
    Source code(zip)
Owner
null
Ceaser-Cipher - The Caesar Cipher technique is one of the earliest and simplest method of encryption technique

Ceaser-Cipher The Caesar Cipher technique is one of the earliest and simplest me

Lateefah Ajadi 2 May 12, 2022
wxPython app for converting encodings, modifying and fixing SRT files

Subtitle Converter Program za obradu srt i txt fajlova. Requirements: Python version 3.8 wxPython version 4.1.0 or newer Libraries: srt, PyDispatcher

null 4 Nov 25, 2022
OceanScript is an Esoteric language used to encode and decode text into a formulation of characters

OceanScript is an Esoteric language used to encode and decode text into a formulation of characters - where the final result looks like waves in the ocean.

null 2 Sep 9, 2022
Learn meanings behind words is a key element in NLP. This project concentrates on the disambiguation of preposition senses. Therefore, we train a bert-transformer model and surpass the state-of-the-art.

New State-of-the-Art in Preposition Sense Disambiguation Supervisor: Prof. Dr. Alexander Mehler Alexander Henlein Institutions: Goethe University TTLa

Dirk Neuhรคuser 4 Apr 6, 2022
Full Spectrum Bioinformatics - a free online text designed to introduce key topics in Bioinformatics using the Python

Full Spectrum Bioinformatics is a free online text designed to introduce key topics in Bioinformatics using the Python programming language. The text is written in interactive Jupyter Notebooks, which allow you to try out and modify example code and analyses.

Jesse Zaneveld 33 Dec 28, 2022
This repository details the steps in creating a Part of Speech tagger using Trigram Hidden Markov Models and the Viterbi Algorithm without using external libraries.

POS-Tagger This repository details the creation of a Part-of-Speech tagger using Trigram Hidden Markov Models to predict word tags in a word sequence.

Raihan Ahmed 1 Dec 9, 2021
Extract city and country mentions from Text like GeoText without regex, but FlashText, a Aho-Corasick implementation.

flashgeotext โšก ?? Extract and count countries and cities (+their synonyms) from text, like GeoText on steroids using FlashText, a Aho-Corasick impleme

Ben 57 Dec 16, 2022
Telegram bot to auto post messages of one channel in another channel as soon as it is posted, without the forwarded tag.

Channel Auto-Post Bot This bot can send all new messages from one channel, directly to another channel (or group, just in case), without the forwarded

Aditya 128 Dec 29, 2022
Download videos from YouTube/Twitch/Twitter right in the Windows Explorer, without installing any shady shareware apps

youtube-dl and ffmpeg Windows Explorer Integration Download videos from YouTube/Twitch/Twitter and more (any platform that is supported by youtube-dl)

Wolfgang 226 Dec 30, 2022
Global Rhythm Style Transfer Without Text Transcriptions

Global Prosody Style Transfer Without Text Transcriptions This repository provides a PyTorch implementation of AutoPST, which enables unsupervised glo

Kaizhi Qian 193 Dec 30, 2022
Simple NLP based project without any use of AI

Simple NLP based project without any use of AI

Shripad Rao 1 Apr 26, 2022
Rootski - Full codebase for rootski.io (without the data)

?? Welcome to the Rootski codebase! This is the codebase for the application run

Eric 20 Nov 18, 2022
RIDE automatically creates the package and boilerplate OOP Python node scripts as per your needs

RIDE: ROS IDE RIDE automatically creates the package and boilerplate OOP Python code for nodes as per your needs (RIDE is not an IDE, but even ROS isn

Jash Mota 20 Jul 14, 2022
The projects lets you extract glossary words and their definitions from a given piece of text automatically using NLP techniques

Unsupervised technique to Glossary and Definition Extraction Code Files GPT2-DefinitionModel.ipynb - GPT-2 model for definition generation. Data_Gener

Prakhar Mishra 28 May 25, 2021
A script that automatically creates a branch name using google translation api and jira api

About google translation api์™€ jira api์„ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™์œผ๋กœ ๋ธŒ๋žœ์น˜ ์ด๋ฆ„์„ ๋งŒ๋“ค์–ด์ฃผ๋Š” ์Šคํฌ๋ฆฝํŠธ Setup ํ™˜๊ฒฝ๋ณ€์ˆ˜์— ๋‹ค์Œ 3๊ฐ€์ง€๋ฅผ ๋“ฑ๋กํ•ด์•ผ ํ•œ๋‹ค. JIRA_USER : JIRA email (ex: [email protected]) JIR

hyunwook.kim 2 Dec 20, 2021
Label data using HuggingFace's transformers and automatically get a prediction service

Label Studio for Hugging Face's Transformers Website โ€ข Docs โ€ข Twitter โ€ข Join Slack Community Transfer learning for NLP models by annotating your textu

Heartex 135 Dec 29, 2022
Automatically search Stack Overflow for the command you want to run

stackshell Automatically search Stack Overflow (and other Stack Exchange sites) for the command you want to ru Use the up and down arrows to change be

circuit10 22 Oct 27, 2021
Ptorch NLU, a Chinese text classification and sequence annotation toolkit, supports multi class and multi label classification tasks of Chinese long text and short text, and supports sequence annotation tasks such as Chinese named entity recognition, part of speech tagging and word segmentation.

Pytorch-NLU๏ผŒไธ€ไธชไธญๆ–‡ๆ–‡ๆœฌๅˆ†็ฑปใ€ๅบๅˆ—ๆ ‡ๆณจๅทฅๅ…ทๅŒ…๏ผŒๆ”ฏๆŒไธญๆ–‡้•ฟๆ–‡ๆœฌใ€็Ÿญๆ–‡ๆœฌ็š„ๅคš็ฑปใ€ๅคšๆ ‡็ญพๅˆ†็ฑปไปปๅŠก๏ผŒๆ”ฏๆŒไธญๆ–‡ๅ‘ฝๅๅฎžไฝ“่ฏ†ๅˆซใ€่ฏๆ€งๆ ‡ๆณจใ€ๅˆ†่ฏ็ญ‰ๅบๅˆ—ๆ ‡ๆณจไปปๅŠกใ€‚ Ptorch NLU, a Chinese text classification and sequence annotation toolkit, supports multi class and multi label classification tasks of Chinese long text and short text, and supports sequence annotation tasks such as Chinese named entity recognition, part of speech tagging and word segmentation.

null 186 Dec 24, 2022