Skip to content

orbs-network/lokey

Repository files navigation

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()

Initialise a new instance of LoKey.

Example:

const lokey = new LoKey();

Outputs:

  • lokey: A new instance of the LoKey SDK.

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.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published