/cryptii

Web app and framework offering modular conversion, encoding and encryption

Primary LanguageJavaScriptMIT LicenseMIT

cryptii

Build Status JavaScript Style Guide MIT license

Web app and framework offering modular conversion, encoding and encryption. Translations are done client side without any server interaction — cryptii.com

Getting started

Concept

This framework and web app aims to support a wide variety of ciphers, formats, algorithms and methods (called 'Bricks') while keeping them easily combinable. There are currently two types of Bricks: Encoders and Viewers. Encoders manipulate content by encoding or decoding in a specific way and using specific settings while Viewers allow users to access and edit the content fed into or outputted by Encoders in a certain way and format.

Bricks can be arranged inside a Pipe. When the content gets edited inside a Viewer or when Brick settings get changed, the result propagates through the Pipe's Bricks in order and in both directions.

Chain objects encapsulate UTF-8 text or binary based content exchanged between Bricks. They automatically encode or decode the content when combining a text based output with a binary based input and vice-versa.

Brick library

Name Category Description
a1z26 Ciphers Number to letter encoder (A1Z26)
adfgx-cipher Polybius square ADFGX cipher
affine-cipher Ciphers Affine Cipher
alphabetical-substitution Ciphers Alphabetical substitution
ascii85 Encoding Ascii85 / Base85 incl. variant Z85
bacon-cipher Ciphers Bacon's cipher
base32 Encoding Base32 incl. variants base32hex, z-base-32, …
base64 Encoding Base64 incl. variants base64url, …
baudot-code Encoding Baudot code
bifid-cipher Polybius square Bifid cipher
bitwise-operation Transform Bitwise operations (NOT, AND, OR, …)
block-cipher Modern cryptography Block ciphers incl. AES
bootstring Encoding Bootstring
bytes View Viewing and editing bytes
caesar-cipher Ciphers Caesar cipher
case-transform Transform Transforms to upper case, lower case, …
enigma Ciphers Enigma machine incl. 13 models
hash Modern cryptography Creating a message digest
hmac Modern cryptography Creating a Hash-based message authentication code
integer Encoding Translates between bytes and integers
morse-code Alphabets Morse code (English)
nihilist-cipher Polybius square Nihilist cipher
numeral-system Transform Translates numerals between systems
punched-tape View Punched tape
polybius-square Polybius square Polybius square
punycode Encoding Punycode
rail-fence-cipher Ciphers Rail fence cipher
rc4 Modern cryptography RC4 incl. RC4-drop
replace Transform Finds and replaces a given text
reverse Transform Reverses the order of bytes, characters or lines
rot13 Ciphers ROT13 incl. variants ROT5, ROT18 & ROT47
spelling-alphabet Alphabets Several spelling alphabets
tap-code Polybius square Tap code
text View Viewing and editing in plain text
trifid-cipher Polybius square Trifid cipher
unicode-code-points Encoding Encoding to Unicode code points in given format
url-encoding Encoding URL encoding / Percent-encoding
vigenere-cipher Ciphers Vigenère cipher incl. Beaufort cipher variants

This is a project by Fränz Friederes and contributors