Home
Welcome to the Coherence wiki!
Coherence’s objective is to improve security in L7 with modern cryptography.
Coherence (ko.eˈɾen.s) performs and offloads cryptography operations with a focus on interoperability, flexibility and simplicity. Coherence gives an interface for modern cryptographic algorithms which is inspired by Openssl, it is a REST API in order to be used by any language, in other words Coherence minimizes development time and code complexity. Some of the algorithms offered by Coherence are AES and AES candidates, Sosemanuk, SHA* family, HMAC, DH, RSA, DSA, ECC, NTRU.
There is a couple of good reasons to use Coherence:
Offload, you have an specialized software dedicated entirely for cryptographic operations. Cryptographic operations like encrypting and decrypting is a very CPU-intensive task for webapps, so offload alleviates CPU-intensive encryption and decryption tasks from your webapp, boosting application performance.
Interoperability, it doesn’t depend on a language programming, it depends on standards HTTP/GRPC and JSON, so you can integrate with homogeneous and heterogeneous systems.
Flexibility, it gives you a complete cryptographic toolkit to implement stream ciphers, block ciphers, RSA, Elliptic curves, Post quantum cryptography. So it gives you all that you need to create your own cryptographic protocol.
Open source, you can inspect, modify, and enhance.
Free of charges, you don’t have to pay.
Features
Hash functions: SHA3, SHA2, SHA1, WHIRLPOOL, Blake2b, SipHash.
Password-hashing function: Argon2
Stream ciphers: Sosemanuk, Salsa20/20.
Block ciphers: AES, RC6, MARS, Twofish, Serpent, CAST-256, Camellia, SPECK, SIMECK.
Block ciphers modes: CTR, GCM.
Message authentication codes: HMAC(SHA3, SHA2, SHA1, WHIRLPOOL), CMAC(AES, RC6, MARS, Twofish, Serpent, CAST-256, Camellia), VMAC(AES, RC6, MARS, Twofish, Serpent, CAST-256, Camellia), Poly1305.
RSA: Key generation, digital signature, encryption.
DSA: Key generation, digital signature.
DH: Key generation, key exchange (rfc and custom parameters).
ECC: Key generation, ECIES, ECDSA, ECDH, Curve25519, ECNR.
Post-Quantum Cryptography sign: Dilithium, SPHINCS+, Rainbow.
Post-Quantum Cryptography kem: NTRU, Kyber, Saber.
Index
This index starts from easy to more complex json and algorithms, you can find some external useful resources on each page.
Rand
Hash
Argon2
Poly1305
Stream ciphers (Sosemanuk, Salsa20)
Block ciphers (AES, RC6, MARS, Twofish, Serpent, CAST-256, Camellia, SPECK, SIMECK)
HMAC
CMAC
VMAC
DSA
RSA
Diffie Hellman
ECDSA
ECIES
ECDH
Curve25519
NTRU
Security
Openssl
Json reference
Last updated