@sparksignals/keyper-core
v0.0.24
Published
Keyper's core module
Downloads
54
Readme
@sparksignals/keyper-core
The @sparksignals/keyper-core
package provides common internal functions for the Keyper credential vault service. This package includes a set of cryptographic utilities, hashing functions, and RID (Resource Identifier) generators essential for secure operations within the Keyper system.
Installation
To install the package, use npm:
npm install @sparksignals/keyper-core
Usage
The KeyperCore
object exposes various cryptographic, hashing, and RID generation functions organized into three categories: crypto
, hash
, and rid
.
Cryptographic Functions
The crypto
namespace provides functions for generating key pairs and performing encryption and decryption operations.
Functions
buildSessionElipticKeys
- Description: Generates session Elliptic Curve Diffie-Hellman (ECDH) key pairs.
- Usage:
const { buildSessionElipticKeys } = KeyperCore.crypto; const { publicKey, privateKey } = buildSessionElipticKeys();
buildElipticKeys
- Description: Generates general Elliptic Curve Diffie-Hellman (ECDH) key pairs.
- Usage:
const { buildElipticKeys } = KeyperCore.crypto; const { publicKey, privateKey } = buildElipticKeys();
buildRSAKeys
- Description: Generates RSA key pairs.
- Usage:
const { buildRSAKeys } = KeyperCore.crypto; const { publicKey, privateKey } = buildRSAKeys();
computeECDHSharedKey
- Description: Computes a symmetric key using Elliptic Curve Diffie-Hellman (ECDH) key pairs.
- Usage:
const { computeECDHSharedKey } = KeyperCore.crypto; const sharedKey = computeECDHSharedKey(privateKey, publicKey);
encryptSymmetric
- Description: Encrypts data using a computed symmetric key.
- Usage:
const { encryptSymmetric } = KeyperCore.crypto; const encryptedData = encryptSymmetric(sharedKey, data);
decryptSymmetric
- Description: Decrypts data using a computed symmetric key.
- Usage:
const { decryptSymmetric } = KeyperCore.crypto; const decryptedData = decryptSymmetric(sharedKey, encryptedData);
Hashing Functions
The hash
namespace provides functions for hashing data using different algorithms.
Functions
sha3Hash
- Description: Hashes data using the SHA-3 algorithm.
- Usage:
const { sha3Hash } = KeyperCore.hash; const hash = sha3Hash(data);
argon2Hash
- Description: Hashes data using the Argon2 algorithm.
- Usage:
const { argon2Hash } = KeyperCore.hash; const hash = await argon2Hash(data);
argon2Verify
- Description: Verifies if hashed data matches an input using Argon2.
- Usage:
const { argon2Verify } = KeyperCore.hash; const isValid = await argon2Verify(hash, data);
RID Generation Functions
The rid
namespace provides functions for generating Resource Identifiers (RIDs) for systems, agents, and credentials.
Functions
buildSystemRID
- Description: Generates a system Resource Identifier (RID).
- Usage:
const { buildSystemRID } = KeyperCore.rid; const systemRID = buildSystemRID();
buildAgentRID
- Description: Generates an agent Resource Identifier (RID).
- Usage:
const { buildAgentRID } = KeyperCore.rid; const agentRID = buildAgentRID();
buildCredentialRID
- Description: Generates a credential Resource Identifier (RID).
- Usage:
const { buildCredentialRID } = KeyperCore.rid; const credentialRID = buildCredentialRID();
License
This package is proprietary software. For restrictive private use of SparkSignals LLC and its systems and services, forbidding any disclosure or publication of any excerpts of its source code, any unauthorized external use of it, and other suitable restrictions of use other than by the company and its systems and services and authorized partners.
For more information or support, please contact SparkSignals LLC.