All Projects → mikaoj → Enigmakit

mikaoj / Enigmakit

Licence: mit
Enigma encryption in Swift

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Enigmakit

shadowsocks-libev-nocrypto
libev port of shadowsocks. In this fork, encryption is optional!
Stars: ✭ 24 (-77.78%)
Mutual labels:  encryption, cipher
AES
AES for microcontrollers (Arduino & Raspberry pi)
Stars: ✭ 116 (+7.41%)
Mutual labels:  encryption, cipher
Encrypt
🔒 A set of high-level APIs over PointyCastle for two-way cryptography.
Stars: ✭ 199 (+84.26%)
Mutual labels:  encryption, cipher
Sboot stm32
Secure USB DFU1.1 bootloader for STM32
Stars: ✭ 181 (+67.59%)
Mutual labels:  encryption, cipher
Node Fpe
Format preserving string substitution encryption
Stars: ✭ 17 (-84.26%)
Mutual labels:  encryption, cipher
Eth Crypto
Cryptographic javascript-functions for ethereum and tutorials to use them with web3js and solidity
Stars: ✭ 420 (+288.89%)
Mutual labels:  encryption, cipher
xipher
🔒 Simple perfect xor encryption cipher 🔒
Stars: ✭ 61 (-43.52%)
Mutual labels:  encryption, cipher
Cryptii
Web app and framework offering modular conversion, encoding and encryption
Stars: ✭ 971 (+799.07%)
Mutual labels:  encryption, cipher
Android Goldfinger
Android library to simplify Biometric authentication implementation.
Stars: ✭ 608 (+462.96%)
Mutual labels:  encryption, cipher
Swifty
🔑 Free Offline Password Manager
Stars: ✭ 496 (+359.26%)
Mutual labels:  encryption, cipher
Enigma
Enigma cipher tool
Stars: ✭ 13 (-87.96%)
Mutual labels:  encryption, cipher
Cape
String encryption for Arduino, limited microcontrollers and other embedded systems.
Stars: ✭ 58 (-46.3%)
Mutual labels:  encryption, cipher
Sharedchamber
Android Secure SharedPreferences Using Facebook Conceal Encryption
Stars: ✭ 96 (-11.11%)
Mutual labels:  encryption
Htmldoc
HTML Conversion Software
Stars: ✭ 99 (-8.33%)
Mutual labels:  encryption
Androidwm
An android image watermark library that supports steganography.
Stars: ✭ 1,322 (+1124.07%)
Mutual labels:  encryption
Lockbox
Encrypted storage with built-in key management facilities
Stars: ✭ 94 (-12.96%)
Mutual labels:  encryption
Bouncer
Bouncer is a network TCP port redirector/forward proxy (like rinetd) with extra features like Reverse tunneling (like ssh -R), SSL tunneling (like stunnel), connection Failover, LoadBalancing and Clustering. In pure Java (BIO)
Stars: ✭ 103 (-4.63%)
Mutual labels:  encryption
Etebase Js
Etebase TypeScript API for the web, node and react-native!
Stars: ✭ 100 (-7.41%)
Mutual labels:  encryption
Dcrypt
🔐A petite library of encryption functions for PHP
Stars: ✭ 93 (-13.89%)
Mutual labels:  encryption
Encryptor4j
Strong encryption for Java simplified
Stars: ✭ 92 (-14.81%)
Mutual labels:  encryption

𝕰𝖓𝖎𝖌𝖒𝖆𝕶𝖎𝖙

CI Status Version License Platform Alt text

𝖀𝖘𝖆𝖌𝖊

// Will create an Enigma with an empty plugboard, rotors I, II, III and reflector B (wide).
let enigma = Enigma()
// Will output "ILBDA AMTAZ"
let result = enigma.encode("HELLO WORLD")
let enigma = Enigma()
// "HELLO WORLD"
let result = enigma.encode("ILBDA AMTAZ")

𝕮𝖔𝖒𝖕𝖔𝖓𝖊𝖓𝖙𝖘

𝕻𝖑𝖚𝖌𝖇𝖔𝖆𝖗𝖉

// Create a plugboard and add a patch between A and D
let plugboard = Plugboard()
plugboard.add(("A", "D"))

𝕽𝖔𝖙𝖔𝖗

// III rotor. EnigmaKit comes prebuilt with rotors I-VIII
let rotor = Rotor.III
rotor.setting = 5 // Ringstellung
rotor.position = 6 // Grundstellung

// Or initialize your own
let rotor = Rotor(name: "My custom rotor", wiring: "VZBRGITYUPSDNHLXAWMJQOFECK", notch: "QV")

𝕽𝖊𝖋𝖑𝖊𝖈𝖙𝖔𝖗

// EnigmaKit comes with reflectors A-C (wide) and B-C (thin)
let reflector = Reflector.B

// Or you can create your own reflector
let reflector = Reflector(name: "My custom reflector", wiring: "VZBRGITYUPSDNHLXAWMJQOFECK")

𝕰𝖓𝖎𝖌𝖒𝖆

// Create an enigma with your own plugboard, rotors and reflector of choice
let enigma = Enigma(reflector: Reflector.C, rotors: [Rotor.III, Rotor.IV, Rotor.II], plugboard: Plugboard())

𝕽𝖊𝖖𝖚𝖎𝖗𝖊𝖒𝖊𝖓𝖙𝖘

Don't mention the war

𝕴𝖓𝖘𝖙𝖆𝖑𝖑𝖆𝖙𝖎𝖔𝖓

EnigmaKit is available through Swift Package Manager, CocoaPods.

𝕬𝖚𝖙𝖍𝖔𝖗

Joakim Gyllström, [email protected]

𝕷𝖎𝖈𝖊𝖓𝖘𝖊

EnigmaKit is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].