@0xpolygonid/aws-nitro-enclaves-nsm-node
v0.0.1
Published
A Node.js addon for interacting with the Nitro Secure Module, which provides Nitro Enclaves with attestation capability.
Downloads
60
Maintainers
Readme
AWS Nitro Enclaves NSM for Node.js
A Node.js addon for interacting with the Nitro Secure Module, which provides Nitro Enclaves with attestation capability. napi-rs based, only for Linux.
Features
- PCR query and manipulation
- Attestation
- Entropy
Please refer to aws/aws-nitro-enclaves-nsm-api.
For Attestation Document details, check the following document: Nitro Enclaves Attestation Process
Install this package
npm install --save aws-nitro-enclaves-nsm-node
yarn add aws-nitro-enclaves-nsm-nodeSupport OS
| | node14 | node16 | node18 | | ---------------- | ------ | ------ | ------ | | Linux x64 gnu | ✓ | ✓ | ✓ | | Linux x64 musl | ✓ | ✓ | ✓ |
Methods
open, alias init, Initialization function.
close, alias exit, Exit function.
extendPcr, NSM ExtendPCR operation.
getPcrDescription, NSM DescribePCR operation.
lockPcr, NSM LockPCR operation.
lockPcrs, NSM LockPCRs operation.
getDescription, NSM Describe operation.
getAttestationDoc, NSM GetAttestationDoc operation.
getRandom, NSM GetRandom operation. Returns up to 256 bytes of random data.
Examples
import {
open,
close,
extendPcr,
getPcrDescription,
lockPcr,
lockPcrs,
getDescription,
getAttestationDoc,
getRandom
} from "aws-nitro-enclaves-nsm-node"
const fd = open()
// extendPcr
// getPcrDescription
// lockPcr
// lockPcrs
// getDescription
// getRandom
const attestationDoc = getAttestationDoc(
fd,
Buffer.from("hello world"), // user data
null, // nonce
Buffer.from("my public key"), // public key
)
console.log(attestationDoc)
close(fd)Develop requirements
- Install the latest
Rust - Install
Node.js@12+which fully supportedNode-API v4 - Install
[email protected]
How to build
- yarn
- yarn build
Lisence
MIT
