Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

@orbs-network/lokey

Package Overview
Dependencies
Maintainers
13
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@orbs-network/lokey

LoKey is a lightweight library that leverages ethers.js to securely delegate a signer and sign messages without prompting the user for each siging operation.

latest
Source
npmnpm
Version
0.1.19
Version published
Maintainers
13
Created
Source

LoKey

LoKey

LoKey is a lightweight library that leverages ethers.js to securely delegate a signer and sign messages without prompting the user for each siging operation.

Installation

To install LoKey, use npm:

npm install @orbs-network/lokey

Usage

Constructor: LoKey(opts?: { debug?: boolean })

Initialise a new instance of LoKey.

Example:

// Without debugging
const lokey = new LoKey();

// With debugging enabled
const lokey = new LoKey({ debug: true });

Inputs:

  • opts.debug (boolean, optional): Enable debug logging. Default: false

Outputs:

  • lokey: A new instance of the LoKey SDK.

setDebug(enabled: boolean)

Enable or disable debug logging at runtime.

Example:

// Enable debugging
await lokey.setDebug(true);

// Disable debugging
await lokey.setDebug(false);

Inputs:

  • enabled (boolean, required): Whether to enable debug logging

Outputs:

  • success (boolean): Whether the debug mode was set successfully.

getAddress(id: string)

Get the address of the signer.

Example:

const address = await lokey.getAddress('my-signer');

Inputs:

  • id (string, required): The id of the signer to get the address of.

Outputs:

  • address (string): The address of the signer.

createSigner(id: string)

Create a new signer.

Example:

const { address } = await lokey.createSigner('my-signer');

Inputs:

  • id (string, required): The id of the signer to create.

Outputs:

  • address (string): The hex string signer address.

sign(id: string, payload: TypedData)

Sign a message using the LoKey signer.

Example:

const signature = await lokey.sign('my-signer', payload);

Inputs:

  • id (string, required): The id of the signer to use.
  • payload (TypedData, required): Typed data according to EIP-712 standards.

Outputs:

  • signature (string): The hex encoded signature.

persistKey(id: string)

Persist the signer.

Example:

await lokey.persistKey('my-signer');

Inputs:

  • id (string, required): The id of the signer to persist.

Outputs:

  • success (boolean): Whether the key was persisted successfully.

Example

To run the included example, follow these steps:

cd example
npm install
npm run dev

This demonstrates how to integrate LoKey into a React application.

Notes

  • LoKey leverages secure browser features like Web Workers for key management.

License

LoKey is licensed under the MIT License.

Keywords

crypto

FAQs

Package last updated on 08 Apr 2025

Did you know?

Socket

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.

Install

Related posts