Product
Introducing License Enforcement in Socket
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
IPFS Peer Id implementation in JavaScript
An IPFS Peer Id is based on a sha256 hash of the peer public key, using multihash
The public key is a base64 encoded string of a protobuf containing an RSA DER buffer. This uses a node buffer to pass the base64 encoded public key protobuf to the multihash for ID generation.
> npm install --save peer-id
const PeerId = require('peer-id')
Follow our webpack config example.
WIP Doesn't work out yet
<script>
tagMake the peer-id.js available through your server and load it using a normal <script>
tag, this will export the PeerId
object, such that:
const Id = PeerId
You will need to use Node.js Buffer
API compatible, if you are running inside the browser, you can access it by PeerId.Buffer
or you can install Feross's Buffer.
const PeerId = require('ipfs-peer')
// Create a new Id
const id = PeerId.create()
// Recreate an Id from Hex string
const id = PeerId.createFromHexString(str)
// Recreate an Id from a Buffer
const id = PeerId.createFromBytes(buf)
// Recreate an B58 String
const id = PeerId.createFromB58String(str)
// Recreate from a Public Key
const id = PeerId.createFromPubKey(pubKey)
// Recreate from a Private Key
const id = PeerId.createFromPrivKey(privKey)
// Print friendly format
id.toPrint() // returns an object with id, privKey and pubKey in hex format
// Export to an hex string
id.toHexString()
// Export to Buffer
id.toBytes() (same as id.id)
// Export to a B58 string
id.toB58String()
id.pubKey // Buffer containing the Public Key
id.privKey // Buffer containing the Private Key
id.id // Buffer containing the multihash
FAQs
IPFS Peer Id implementation in Node.js
The npm package peer-id receives a total of 20,122 weekly downloads. As such, peer-id popularity was classified as popular.
We found that peer-id demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
Product
We're launching a new set of license analysis and compliance features for analyzing, managing, and complying with licenses across a range of supported languages and ecosystems.
Product
We're excited to introduce Socket Optimize, a powerful CLI command to secure open source dependencies with tested, optimized package overrides.