Skip to content

Commit

Permalink
Add detached binary signature example to README
Browse files Browse the repository at this point in the history
  • Loading branch information
billiegoose committed Jan 6, 2017
1 parent 5fa35ea commit f13c341
Showing 1 changed file with 29 additions and 0 deletions.
29 changes: 29 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,35 @@ openpgp.verify(options).then(function(verified) {
});
```

#### Create and verify *detached* signatures for binary data

```js
var content, detachedSig, validity;

var pubkey = '-----BEGIN PGP PUBLIC KEY BLOCK ... END PGP PUBLIC KEY BLOCK-----';
var privkey = '-----BEGIN PGP PRIVATE KEY BLOCK ... END PGP PRIVATE KEY BLOCK-----';
```

```js
content = 'Hello, World!'; // input as String
var privateKeys = openpgp.key.readArmored(privkey).keys; // for signing
var bytes = openpgp.util.str2Uint8Array(content); // convert text to binary
var message = openpgp.message.fromBinary(bytes);
var signedMessage = message.sign(privateKeys);
var signature = signedMessage.packets.filterByTag(openpgp.enums.packet.signature);
var armoredMessage = openpgp.armor.encode(openpgp.enums.armor.message, signature.write());
armoredMessage = armoredMessage.replace('-----BEGIN PGP MESSAGE-----\r\n', '-----BEGIN PGP SIGNATURE-----\r\n');
armoredMessage = armoredMessage.replace('-----END PGP MESSAGE-----\r\n', '-----END PGP SIGNATURE-----\r\n');
detachedSig = armoredMessage; // '-----BEGIN PGP SIGNATURE ... END PGP SIGNATURE-----'
```

```js
var publicKeys = openpgp.key.readArmored(pubkey).keys; // for verifying signatures
var msg = openpgp.message.readSignedContent(content, detachedSig);
var result = msg.verify(publicKeys);
validity = result[0].valid; // true
```

### Documentation

A jsdoc build of our code comments is available at [doc/index.html](http://openpgpjs.org/openpgpjs/doc/index.html). Public calls should generally be made through the OpenPGP object [doc/openpgp.html](http://openpgpjs.org/openpgpjs/doc/module-openpgp.html).
Expand Down

0 comments on commit f13c341

Please sign in to comment.