51 lines
1.6 KiB
Markdown
51 lines
1.6 KiB
Markdown
|
Using gpgme.js
|
||
|
---------------
|
||
|
At first, make sure that the environment you want to use gpgme.js in has access
|
||
|
and permissions for nativeMessaging, and gpgme-json installed. For details,
|
||
|
see the README.
|
||
|
|
||
|
The library itself is started via the {@link init} method. This will test the
|
||
|
nativeMessaging connection, and then resolve into an Object offering
|
||
|
the top level API:
|
||
|
|
||
|
* [encrypt]{@link GpgME#encrypt}
|
||
|
* [decrypt]{@link GpgME#decrypt}
|
||
|
* [sign]{@link GpgME#sign}
|
||
|
* [verify]{@link GpgME#verify}
|
||
|
* [Keyring]{@link GPGME_Keyring}
|
||
|
|
||
|
```
|
||
|
gpgmejs.init()
|
||
|
.then(function(GPGME) {
|
||
|
// using GPGME
|
||
|
}, function(error){
|
||
|
// error handling;
|
||
|
})
|
||
|
```
|
||
|
|
||
|
All methods that require communication with nativeMessaging are asynchronous,
|
||
|
using Promises. Rejections will be instances of {@link GPGME_Error}.
|
||
|
|
||
|
An exaeption are Keys, which can be initialized in a 'sync' mode, allowing them
|
||
|
to be cached and used synchronously until manually refreshed.
|
||
|
|
||
|
Keyring and Keys
|
||
|
----------------
|
||
|
The gnupg keys can be accessed via the [Keyring]{@link GPGME_Keyring}.
|
||
|
|
||
|
The Keyring offers the methods for accessing information on all Keys known to
|
||
|
gnupg.
|
||
|
|
||
|
**Due to security constraints, the javascript-binding currently only offers
|
||
|
limited support for secret-Key interaction.**
|
||
|
|
||
|
The existance of secret Keys is not secret, and those secret Keys can be used
|
||
|
for signing, but Operations that may expose, modify or delete secret Keys are
|
||
|
not supported.
|
||
|
|
||
|
* [getKeysArmored]{@link GPGME_Keyring#getKeysArmored}
|
||
|
* [getKeys]{@link GPGME_Keyring#getKeys}
|
||
|
* [getDefaultKey]{@link GPGME_Keyring#getDefaultKey}
|
||
|
* [generateKey]{@link GPGME_Keyring#generateKey}
|
||
|
* [deleteKey]{@link GPGME_Keyring#deleteKey}
|