Skip to content

Instantly share code, notes, and snippets.

@tigertv
Created April 2, 2019 15:05
Show Gist options
  • Save tigertv/cd9ab0563c5012a36978cf0abfd34948 to your computer and use it in GitHub Desktop.
Save tigertv/cd9ab0563c5012a36978cf0abfd34948 to your computer and use it in GitHub Desktop.

gocipher

Classical ciphers

Mechanical ciphers

Binary-to-text encoding

Bases

  • Base 2 <-> Base 10 | dCode
  • Base 26 <-> Base 10 | dCode

Barcodes

Symmetric key encryption

Public key

Hash functions

Graphical

Algoriothms

  • Benford's Law | dCode
  • Frequency Analysis | dCode | Rumkin.com
  • Index of Coincidence | dCode
  • Middle squares method for pseurorandom number generation

Utilities

Lists

Libraries

# gocipher
## Classical ciphers
- [Alberti cipher](https://en.wikipedia.org/wiki/Alberti_cipher)
| [dCode](http://www.dcode.fr/alberti-cipher)
- ✔ **[Atbash cipher](https://en.wikipedia.org/wiki/Atbash)**
| [dCode](http://www.dcode.fr/atbash-mirror-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/atbash-cipher/)
| [Rumkin.com](http://rumkin.com/tools/cipher/atbash.php)
- AMSCO cipher
| [dCode](http://www.dcodme.fr/amsco-cipher)
- [Autokey cipher](https://en.wikipedia.org/wiki/Autokey_cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/autokey/)
- [Baconian cipher](https://en.wikipedia.org/wiki/Bacon%27s_cipher)
| [dCode](http://www.dcode.fr/bacon-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/baconian/)
| [Rumkin.com](http://rumkin.com/tools/cipher/baconian.php)
- [Jefferson disk / Bazeries cylinder](https://en.wikipedia.org/wiki/Jefferson_disk),
[M-94](https://en.wikipedia.org/wiki/M-94)
| [dCode](http://www.dcode.fr/bazeries-cipher)
- [Scytale cipher](https://en.wikipedia.org/wiki/Scytale)
| [dCode](http://www.dcode.fr/scytale-cipher)
- [Monoaplhabetic substitution cipher (simple substitution)](https://en.wikipedia.org/wiki/Substitution_cipher#Simple_substitution)
| [dCode](http://www.dcode.fr/monoalphabetic-substitution)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/simple-substitution/)
| [Rumkin.com](http://rumkin.com/tools/cipher/substitution.php)
- ✔ **[Affine cipher](https://en.wikipedia.org/wiki/Affine_cipher)**
| [dCode](http://www.dcode.fr/affine-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/affine/)
| [Rumkin.com](http://rumkin.com/tools/cipher/affine.php)
- ✔ **Caesar cipher**
| [dCode](http://www.dcode.fr/caesar-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/caesar/)
| [Rumkin.com](http://rumkin.com/tools/cipher/caesar.php)
- Keyboard Coordinates
| [dCode](http://www.dcode.fr/keyboard-coordinates)
- Keyboard Shift cipher
| [dCode](http://www.dcode.fr/keyboard-shift-cipher)
- ✔ **Keyed caesar cipher**
| [Rumkin.com](http://rumkin.com/tools/cipher/caesar-keyed.php)
- ✔ **Letter-to-number**
| [dCode](http://www.dcode.fr/letter-number-cipher)
| [Rumkin.com](http://rumkin.com/tools/cipher/numbers.php)
- ✔ **[Morse Code](https://en.wikipedia.org/wiki/Morse_code)**
| [dCode](http://www.dcode.fr/morse-code)
| [Rumkin.com](http://rumkin.com/tools/cipher/morse.php)
- Wabun Code
| [dCode](http://www.dcode.fr/wabun-code)
- Music Notes
| [dCode](http://www.dcode.fr/music-notes)
- ✔ **ROT cipher**
| [dCode](http://www.dcode.fr/rot-cipher)
- ✔ **ROT-5**
| [dCode](http://www.dcode.fr/rot5-cipher)
| [Web Utils](http://www.webutils.pl/ROTencode)
- ✔ **ROT-13**
| [dCode](http://www.dcode.fr/rot-13-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/rot13/)
| [Rumkin.com](http://rumkin.com/tools/cipher/rot13.php)
| [Web Utils](http://www.webutils.pl/ROTencode)
- ✔ **ROT-18**
| [Web Utils](http://www.webutils.pl/ROTencode)
- ✔ **ROT-47**
| [dCode](http://www.dcode.fr/rot-47-cipher)
| [Web Utils](http://www.webutils.pl/ROTencode)
- Shift cipher
| [dCode](http://www.dcode.fr/shift-cipher)
- Trifid cipher
| [dCode](http://www.dcode.fr/trifide-cipher)
| [Practical Cryptograpgy](http://www.practicalcryptography.com/ciphers/classical-era/trifid/)
- [Homophonic Substitution cipher](https://en.wikipedia.org/wiki/Substitution_cipher#Homophonic_substitution)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/homophonic-substitution/)
- [Beale ciphers](https://en.wikipedia.org/wiki/Beale_ciphers)
- [Book cipher](https://en.wikipedia.org/wiki/Book_cipher)
| [dCode](http://www.dcode.fr/book-cipher)
- [Straddling checkerboard cipher](https://en.wikipedia.org/wiki/Straddling_checkerboard)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/straddle-checkerboard/)
- Trithemius Ave Maria
| [dCode](http://www.dcode.fr/trithemius-ave-maria)
- Alphabetical Ranks Added
| [dCode](http://www.dcode.fr/alphabetical-ranks-added)
- Bellaso cipher
| [dCode](http://www.dcode.fr/bellaso-cipher)
- Bifid cipher
| [dCode](http://www.dcode.fr/bifid-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/bifid/)
| [Rumkin.com](http://rumkin.com/tools/cipher/bifid.php)
- Caesar Box cipher
| [dCode](http://www.dcode.fr/caesar-box-cipher)
- Cardan Grille
| [dCode](http://www.dcode.fr/cardan-grille)
- Chaocipher
| [dCode](http://www.dcode.fr/chao-cipher)
- Chinese Code
| [dCode](http://www.dcode.fr/chinese-code)
- Codes and Nomenclators cipher
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/codes-and-nomenclators/)
- Columnar Transposition
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/columnar-transposition/)
| [Rumkin.com](http://rumkin.com/tools/cipher/coltrans.php)
- Double Transposition
| [Rumkin.com](http://rumkin.com/tools/cipher/coltrans-double.php)
| [dCode](http://www.dcode.fr/double-transposition-cipher)
- Übchi
| [Rumkin.com](http://rumkin.com/tools/cipher/ubchi.php)
- Consonants/Vowels Rank cipher
| [dCode](http://www.dcode.fr/consonants-vowels-rank-cipher)
- Deranged Alphabet cipher
| [dCode](http://www.dcode.fr/deranged-alphabet-generator)
- Four-Square cipher
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/four-square/)
- ✔ **[Fractionated Morse cipher](https://en.wikipedia.org/wiki/Transposition_cipher#Fractionation)**
| [dCode](http://www.dcode.fr/fractionated-morse)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/fractionated-morse/)
- Gold Bug cipher
| [dCode](http://www.dcode.fr/gold-bug-poe)
- Hill cipher
| [dCode](http://www.dcode.fr/hill-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/hill/)
- Ideograms cipher
| [dCode](http://www.dcode.fr/ideograms)
- LSPK90 Clockwise
| [dCode](http://www.dcode.fr/lspk90-cw-leet-speak-90-degrees-clockwise)
- Mexican Army cipher wheel
| [dCode](http://www.dcode.fr/mexican-army-cipher-wheel)
- Modulo cipher
| [dCode](http://www.dcode.fr/modulo-cipher)
- Navajo Code
| [dCode](http://www.dcode.fr/navajo-code)
- ✔ **One Time Pad**
| [Rumkin.com](http://rumkin.com/tools/cipher/otp.php)
- Playfair cipher
| [dCode](http://www.dcode.fr/playfair-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/playfair/)
| [Rumkin.com](http://rumkin.com/tools/cipher/playfair.php)
- Two Square cipher
[dCode](http://www.dcode.fr/two-square-cipher)
- ✔ **[Polybius square](https://en.wikipedia.org/wiki/Polybius_square)**
| [dCode](http://www.dcode.fr/polybius-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/polybius-square/)
- [ADFGVX cipher](https://en.wikipedia.org/wiki/ADFGVX_cipher)
| [dCode](http://www.dcode.fr/adfgvx-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/adfgvx/)
- [ADFGX cipher](https://en.wikipedia.org/wiki/ADFGVX_cipher#Operation_of_ADFGX)
| [dCode](http://www.dcode.fr/adfgx-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/adfgx/)
- [Nihilist cipher](https://en.wikipedia.org/wiki/Nihilist_cipher)
| [dCode](http://www.dcode.fr/nihilist-cipher)
- Porta cipher
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/porta/)
- ✔ **Rail-fence (ZigZag) cipher**
| [dCode](http://www.dcode.fr/rail-fence-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/rail-fence/)
| [Rumkin.com](http://rumkin.com/tools/cipher/railfence.php)
- Redefence cipher
| [dCode](http://www.dcode.fr/redefence-cipher)
- Rotate
| [Rumkin.com](http://rumkin.com/tools/cipher/rotate.php)
- Running Key cipher
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/running-key/)
- Skip
| [Rumkin.com](http://rumkin.com/tools/cipher/skip.php)
- ✔ **[URL encode](https://en.wikipedia.org/wiki/Percent-encoding)**
| [Web Utils](http://www.webutils.pl/URLencode)
- Vigenére cipher
| [dCode](http://www.dcode.fr/vigenere-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/vigenere-gronsfeld-and-autokey/)
| [Rumkin.com](http://rumkin.com/tools/cipher/vigenere.php)
- Beaufort cipher
| [dCode](http://www.dcode.fr/beaufort-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/classical-era/beaufort/)
- Variant Beaufort cipher
[dCode](http://www.dcode.fr/variant-beaufort-cipher)
- Gronsfeld cipher
| [dCode](http://www.dcode.fr/gronsfeld-cipher)
| [Practical Cryptograhy](http://www.practicalcryptography.com/ciphers/classical-era/vigenere-gronsfeld-and-autokey/)
| [Rumkin.com](http://rumkin.com/tools/cipher/gronsfeld.php)
- Keyed Vigenére cipher
| [Rumkin.com](http://rumkin.com/tools/cipher/vigenere-keyed.php)
- Multiplication Vigenére cipher
| [dCode](http://www.dcode.fr/multiplication-vigenere-cipher)
- ✔ **[Trithemius cipher](https://en.wikipedia.org/wiki/Tabula_recta#Trithemius_cipher)**
| [dCode](http://www.dcode.fr/trithemius-cipher)
- Vernam cipher
| [dCode](http://www.dcode.fr/vernam-cipher)
- [Vigenére autokey cipher (autoclave cipher)](https://en.wikipedia.org/wiki/Autokey_cipher)
| [dCode](http://www.dcode.fr/autoclave-cipher)
| [Rumkin.com](http://rumkin.com/tools/cipher/vigenere-autokey.php)
- XOR cipher
| [dCode](http://www.dcode.fr/xor-cipher)
## Mechanical ciphers
- Enigma cipher
| [dCode](http://www.dcode.fr/enigma-machine-cipher)
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/mechanical-era/enigma/)
- Lorenz cipher
| [Practical Cryptography](http://www.practicalcryptography.com/ciphers/mechanical-era/lorenz/)
- [M-209](https://en.wikipedia.org/wiki/M-209)
- [SIGABA](https://en.wikipedia.org/wiki/SIGABA)
## Binary-to-text encoding
- [Ascii85](https://en.wikipedia.org/wiki/Ascii85)
| [dCode](http://www.dcode.fr/ascii-85-encoding)
| [Web Utils](http://www.webutils.pl/Ascii85)
- [Base16](https://en.wikipedia.org/wiki/Base64)
- [Base32](https://en.wikipedia.org/wiki/Base32)
- [Base58](https://en.wikipedia.org/wiki/Base58)
- ✔ **[Base64](https://en.wikipedia.org/wiki/Base64)**
| [dCode](http://www.dcode.fr/base-64-coding)
| [Rumkin.com](http://rumkin.com/tools/cipher/base64.php)
| [Wikibooks](https://en.wikibooks.org/wiki/Algorithm_Implementation/Miscellaneous/Base64)
- [Base91](https://en.wikipedia.org/wiki/Binary-to-text_encoding#Encoding_standards)
| [dCode](http://www.dcode.fr/base-91-encoding)
- [UUEncode](https://en.wikipedia.org/wiki/Uuencoding)
| [dCode](http://www.dcode.fr/uu-encoding)
| [Web Utils](http://www.webutils.pl/UUencode)
- [XXEncode](https://en.wikipedia.org/wiki/Xxencoding)
| [Web Utils](http://www.webutils.pl/XXencode)
## Bases
- Base 2 <-> Base 10
| [dCode](http://www.dcode.fr/binary-code)
- Base 26 <-> Base 10
| [dCode](http://www.dcode.fr/base-26-cipher)
## Barcodes
- [Code 39](https://en.wikipedia.org/wiki/Code_39)
| [dCode](http://www.dcode.fr/barcode-39)
- [Code 128](https://en.wikipedia.org/wiki/Code_128)
| [dCode](http://www.dcode.fr/barcode-128)
## Symmetric key encryption
- [RC2](https://en.wikipedia.org/wiki/RC2)
- ✔ **[RC4](https://en.wikipedia.org/wiki/RC4)**
- ✔ **[RC4A](https://en.wikipedia.org/wiki/RC4#RC4A)**
- [VMPC (Variably Modified Permutation Composition)](https://en.wikipedia.org/wiki/Variably_Modified_Permutation_Composition)
- [RC4+](https://en.wikipedia.org/wiki/RC4#RC4.2B)
- [Spritz](https://en.wikipedia.org/wiki/RC4#Spritz)
- [RC5](https://en.wikipedia.org/wiki/RC5)
- [RC6](https://en.wikipedia.org/wiki/RC6)
## Public key
- [RSA](https://en.wikipedia.org/wiki/RSA_(cryptosystem))
## Hash functions
- [HAVAL](https://en.wikipedia.org/wiki/HAVAL)
| [Web Utils](http://www.webutils.pl/Haval-Hash-Calculator)
- [MD2](https://en.wikipedia.org/wiki/MD2_(cryptography))
- [MD4](https://en.wikipedia.org/wiki/MD4)
- [MD5](https://en.wikipedia.org/wiki/MD5)
| [dCode](http://www.dcode.fr/md5-hash)
| [Web Utils](http://www.webutils.pl/MD5_Calculator)
- [MD6](https://en.wikipedia.org/wiki/MD6)
- [RIPEMD](https://en.wikipedia.org/wiki/RIPEMD)
| [Web Utils](http://www.webutils.pl/RIPEMD_Calculator)
- [SHA-0](https://en.wikipedia.org/wiki/SHA-1#SHA-0)
- [SHA-1](https://en.wikipedia.org/wiki/SHA-1)
| [dCode](http://www.dcode.fr/sha1-hash)
| [Web Utils](http://www.webutils.pl/SHA1_Calculator)
- [SHA-2](https://en.wikipedia.org/wiki/SHA-2)
- [SHA-3](https://en.wikipedia.org/wiki/SHA-3)
- [Tiger](https://en.wikipedia.org/wiki/Tiger_(cryptography))
| [Web Utils](http://www.webutils.pl/Tiger-Hash-Calculator)
## Graphical
- Acéré cipher
| [dCode](http://www.dcode.fr/acere-cipher)
- Music Sheet cipher
| [dCode](http://www.dcode.fr/music-sheet-cipher)
- Pigpen cipher
| [dCode](http://www.dcode.fr/pigpen-cipher)
- Templars cipher
| [dCode](http://www.dcode.fr/templars-cipher)
## Algoriothms
- Benford's Law
| [dCode](http://www.dcode.fr/benford-law)
- Frequency Analysis
| [dCode](http://www.dcode.fr/frequency-analysis)
| [Rumkin.com](http://rumkin.com/tools/cipher/frequency.php)
- Index of Coincidence
| [dCode](http://www.dcode.fr/index-coincidence)
- Middle squares method for pseurorandom number generation
## Utilities
- Characters Type
| [dCode](http://www.dcode.fr/characters-type)
- Charset Converter
| [Web Utils](http://www.webutils.pl/Charset-Converter)
- Crypt
| [Web Utils](http://www.webutils.pl/Crypt-Hash-Calculator)
- Crypto Solver
| [Rumkin.com](http://rumkin.com/tools/cipher/cryptogram-solver.php)
- Cryptogram Assistant
| [Rumkin.com](http://rumkin.com/tools/cipher/cryptogram.php)
- Isogram Generator
| [dCode](http://www.dcode.fr/isogram)
- Text Manipulator
| [Rumkin.com](http://rumkin.com/tools/cipher/manipulate.php)
- Word Desubstitution
| [dCode](http://www.dcode.fr/word-desubstitution)
## Lists
- [dCode](http://www.dcode.fr/tools-list#cryptography)
- [Practical Cryptography](http://www.practicalcryptography.com/ciphers/)
- [Rumkin.com](http://rumkin.com/tools/cipher/)
- [Web Utils](http://www.webutils.pl/)
- [Binary-to-text encoding on Wikipedia](https://en.wikipedia.org/wiki/Binary-to-text_encoding)
## Libraries
- [Caesar Salad](https://github.com/schnittstabil/caesar-salad) (JavaScript)
- [cipher-machines](https://github.com/keltia/cipher-machines) (Go)
- [CryptoJS](https://code.google.com/archive/p/crypto-js/) (JavaScript)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment