Skip to content

ejoftheweb/Minigmand

Repository files navigation

Minigmand

Minigmand is an implementation of Minigma for the Android platform. It replaces the BouncyCastle packages with the equivalent SpongyCastle ones (because of a naming conflict in Android).

To use it, just put this in the repositories section of your gradle.build file:\n maven { url "https://jitpack.io" } and in dependencies: implementation 'com.github.ejoftheweb:minigmand:master-SNAPSHOT'

BUT: it is very much early dev code, it is certainly not production-ready. Feedback would of course be welcome.

Usage.

In Minigma, a public key is called a Lock and a private key is called a Key. You lock something with a Lock and you need a corresponding Key to unlock it. But they are all OpenPGP-compatible keys so you can use them in other OpenPGP applications (such as GPG). The idea behind Minigma is to have a really simple and logical API with the minimum learning curve so that you can use open crypto in other apps easily. YMMV of course!

to create a key-pair(a lockset): LockSmith.createLockSet(File keyDirectory, //where the generated secret Key is to be stored LockStore lockStore, //where the public Lock will be stored String username, //the username/email associated with the lockset char[] passPhrase, //the passphrase with which the generated private Key will be encrypted int algorithm)//use Algorithms.RSA

The LockStore can be either a MinigmaLockStore, which is PGPublic Key Ring Collection implementation, stored as a base64 text file on the local filesystem, or an HKPLockStore, which is an http: interface to a public keyserver. Or implement the interface yourself, which is probably best.

For more info, see the wiki.

About

openpgp library for Android built on spongycastle

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages