Nodejs wrapper of zymkey crypto library.
JavaScript Makefile
Switch branches/tags
Nothing to show
Clone or download
Latest commit b1be80c Jan 4, 2017

Zymkey NodeJS Library

A NodeJS wrapper for zymkey crypto library.


npm install zymkey --save


var client = require('zymkey');
var ret = client.ledOff();
console.log('Zymkey ledOff returned ' + ret);

var srcBuf = new Buffer('hello, world');
lockedBuf =  client.lock(srcBuf);
console.log('Locked data: \n\t' + lockedBuf.toString());

unlockedBuf = client.unlock(lockedBuf);
console.log('Unlocked data: ');
console.log('\t' + unlockedBuf.toString('utf-8'));

console.log('Buffer equals ' + srcBuf.equals(unlockedBuf));


Take a look at the examples under examples/ folder.


All the test are under test/. And run test script by

npm test

Supported Zymkey Features

  • Manipulation (on/off/flash) of onboard LED.
  • ECDSA (P256 curve only) operations (getECDSAPubKey/sign/verify)
  • Data encrypt/decrypt using Zymkey private key.
  • Generate random bytes using Zymkey's True Random Number Generator (TRNG).
  • Access to Zymkey's Real Time Clock (RTC).
  • Access to Zymkey's Tap Detection Sensor.
  • Set Zymkey's I2C address.

Release History

  • 0.1.0 Inital Release (01/04/2017)


This project is based on Zymbit's trusted hardware modules. Thanks to Zymbit's amazing technical supports and great product!
And credits are given to the node-ffi and ref that enable calling Zymkey's C library in nodejs.




Lex && Oaken Team