xml-fiesta
Version:
Electronic signed document XML Protocol for Node & Browser
96 lines (69 loc) • 2.7 kB
Markdown
[![npm version][npm-image]][npm-url]
[![Bower version][bower-image]][bower-url]
[![Build Status][travis-image]][travis-url]
[![Coverage Status][coveralls-image]][coveralls-url]
Version: 1.3.4
Electronic signed document XML Protocol **reader** and validator for Node & Browser.
```
bower install xml-fiesta --save
```
```bash
npm install xml-fiesta --save
```
```javascript
var fs = require('fs');
var XMLFiesta = require('xml-fiesta');
var xml = "#{__dirname}/spec/fixtures/example_signed_cr-v1.0.0.xml";
fs.readFile(xml, function(err, data) {
// Document.fromXml returns a promise
doc = XMLFiesta.Document.fromXml(data)
doc.then(function () {
doc.file() // ASCII File
doc.file('hex') // HEX File
doc.file('base64') // Base64 File
signatures = doc.signatures()
signature = signatures[0]
signature.certificate()
signature.sig() // HEX signature
signature.sig('base64') // Base64 signature
signature.signedAt() // ~ 2016-05-03T00:51:05+00:00
signature.valid() // true
signature.signer
// {
// id: 'AAA010101AAA',
// name: 'ACCEM SERVICIOS EMPRESARIALES SC',
// email: 'some@email.com'
// }
doc.validSignatures() // true
doc.record // -> XMLFiesta::ConservancyRecord
// validates that the record is valid
doc.record.valid()
// validates that the record timestamp is the same as the xml
doc.record.equalTimestamps()
// validates that the archive of the record was signed with the user certificate
doc.record.validArchiveHash()
});
});
```
Please read [this gist](https://gist.github.com/genaromadrid/9075d315e949fb4b3760db5c36c9a8ca) to see how to Validate a Certificate against a Certificate authority using OpenSSL.
Just run `grunt` in the root of this project and start developing, the terminal will run the tests on each change.
Run `npm test` or `grunt test`. The coverage info is still pending.
- Run `grunt build` to generate the files to bower.
- Run `grunt bump` to bump versions in bower and npm.
[]: https://badge.fury.io/js/xml-fiesta
[]: https://badge.fury.io/js/xml-fiesta.svg
[]: https://badge.fury.io/bo/xml-fiesta.svg
[]: https://badge.fury.io/bo/xml-fiesta
[]: https://travis-ci.org/Mifiel/xml-fiesta-js.svg?branch=master
[]: https://travis-ci.org/Mifiel/xml-fiesta-js
[]: https://coveralls.io/repos/github/Mifiel/xml-fiesta-js/badge.svg?branch=master
[]: https://coveralls.io/github/Mifiel/xml-fiesta-js?branch=master