Niming Cypher

Niming (匿名) means "anonymous" in Chinese.

Niming has been built to be an encryption module for classical instant messaging apps.

Based on Book cipher but with 21st-century technology.

How it works

Basically, it works in 4 steps:

  • Ask for a key (a URL).

  • Reads all the characters present on this page and build a table of positions of each character. (Once per key)

  • Ask for a message to be sent.

  • Encode the message by replacing each character with a random position of it in the table.

There is more stuff behind this algorithm, but the source code will tell you.

How to install it

pip install NimingCypher

How to use it

Using NCRTool

wget https://raw.githubusercontent.com/mathix420/NimingCypher/master/NCRTool.py; python3 NCRTool.py
       _  __ _         _
      / |/ /(_)__ _   (_)___  ___ _
     /    // //  ' \ / // _ \/ _ `/
    /_/|_//_//_/_/_//_//_//_/\_, /
                            /___/
    Choose an encryption key :

~: https://nssdc.gsfc.nasa.gov/planetary/text/marsob.txt

        What do you want ?
        1 - Encrypt text
        2 - Decrypt text
        3 - Encrypt file
        4 - Decrypt file
        5 - Change key

        6 - Quit

~:

Using python

from NimingCypher import NCrypter

crypter = NCrypter("https://nssdc.gsfc.nasa.gov/planetary/text/marsob.txt")
encrypted_str = crypter.crypt_text("simple string")

print(encrypted_str)

Note

This project was built for my final high school project, in about 3 months (2 hours by weeks). Got 20/20 :D