/fluidkey-stealth-account-kit

An open source repository of the core cryptographic functions used by Fluidkey’s interface and SDK.

Primary LanguageTypeScriptMIT LicenseMIT

😶‍🌫️

The Fluidkey Stealth Account Kit is an open source TypeScript library containing the core cryptographic functions used by Fluidkey. It enables anyone to independently generate and recover stealth smart accounts and related funds.

A written companion explaining the usage of the kit in Fluidkey's processes can be found in the technical walkthrough.

We hope to see more developers build privacy-preserving applications with the kit. If you have questions about the kit or want to contribute, reach out at hey@fluidkey.com.

Contents

The library is composed of the following functions:

An example of how to use these functions to recover stealth accounts based on a user's private key can be found in the example folder.

Get Started

To get started, install the package with your preferred package manager.

npm install @fluidkey/stealth-account-kit
yarn add @fluidkey/stealth-account-kit

Then start using the library by importing the functions you need.

import { 
  generateKeysFromSignature, 
  extractViewingPrivateKeyNode,
  generateEphemeralPrivateKey,
  generateStealthAddresses,
  predictStealthSafeAddressWithClient,
} from '@fluidkey/stealth-account-kit'

If you want to run the example, you can clone this repository and use the following commands.

yarn install
ts-node src/example/example.ts

Fluidkey Parameters

To recover stealth accounts generated by Fluidkey, the following parameters should be used.

const chainId = 0
const safeVersion = '1.3.0'
const useDefaultAddress = true
const threshold = 1

Dependencies

Credits

This code has been influenced by, and contains code from umbra-js.

Coverage

Statements Branches Functions Lines

License

This project is licensed under the MIT License - see the LICENSE file for details.

Copyright (c) 2024 Fluid Privacy SA