cert-encoder.git

branch: master  Β·  10 files

$ git clone https://code.kevwe.com/git/cert-encoder.git

FileCommits
πŸ“„.gitignore1
πŸ“„COPYING1
πŸ“README.md2
πŸ“„pom.xml1
πŸ“„src/main/java/net/lulli/encrypt/Pems.java3
πŸ“„src/main/java/net/lulli/encrypt/pki/PkiManager.java4
πŸ“„src/main/java/net/lulli/encrypt/symmetric/SymmetricEncryptionManager.java3
πŸ“„src/test/java/EncryptionTest.java5
πŸ“„src/test/resources/local.crt1
πŸ“„src/test/resources/local.key1
πŸ“„ README.md

Cert-Encoder

Cert-Encoder is a Java library that implements two strategies for encrypting/decrypting data:

  • A symmetric schema using AES-CBC-256
  • A schema based on a public/private keypair (PKCS#7 / CMS)

The asymmetric schema is meant to be intoperable with X509Crypt
and can encode/decode data within your application that you encoded on the shell, ultimately making use of
of the command openssl smime

Symmetric Encryption

Symmetric Encryption is the easiest option, in case you can rely on the security of the key and
you don’t have any specific need with regard to distributed systems.

Asymmetric Encryption

In analogy with X509Crypt which is thought to
encrypt a file in a format that only the desired recipient will be able to read/decrypt.
While X509Crypt is meant to be used on the commandline,
Cert-Encoder is meant to be embedded into your Java application.

Use Case

Remote machines can encrypt the data on a server without having to disclose a private key,
which is sensible information.

With PKI it is possible to host on the same storage content that is encrypted for distinct recipients
without disclosing the keys.

Each recipient cannot decrypt a message that is not aimed at them, recipients can only decrypt their own data.

How To Build the library

cd cert-encoder
mvn clean install

License

The code is freely available under GPL License
see: COPYING

Additional commercial support and licensing is available on request. You can issue a support request
and mention you are interested in [cert-encoder]()