0.10.0 • Published 9 months ago

@nucypher/nucypher-ts v0.10.0

Weekly downloads
-
License
GPL-3.0-only
Repository
github
Last release
9 months ago

nucypher-ts

Communicate with NuCypher network from browser.

Disclaimer

This is a work in progress

  • SDK does not support policy revocation.
  • We expect breaking changes.

Supported networks

nucypher-ts is available on the following networks:

  • Polygon
  • Mumbai (Polygon testnet)

Usage

Run with:

yarn install
yarn test
yarn build

Development

Install git hooks

npx husky install

Generate contract typings

yarn typechain

Prepare a new release

yarn run prepare-release

Publishing

Publish a new release on NPM.

Pay attention to output of these commands and fix your release if needed.

To build and publish a release, run

yarn prepare-release
# Or, to publish an alpha release
yarn prepare-release:alpha

Follow instructions from the command output to finalize the process.

Examples

See ./test directory for usage examples.

See ./examples directory for examples of browser integration.

See ./examples/api-example.ts for an abridged API example.

See nucypher-ts-demo for usage example with React app.

Using Threshold Decryption

There are several schemes available for the user. They follow a naming convention of <NETWORK>-<M>-of-<N>, where M is the threshold required, and N is the total size of the cohort. NETWORK is either mainnet or ibex.

An encrypter can be created by:

import { makeTDecEncrypter } from '@nucypher/nucypher-ts'

const encrypter = await makeTDecEncrypter("ibex-2-of-3");

The equivalent decrypter can be created by:

import { makeTDecDecrypter } from '@nucypher/nucypher-ts'

// you can specify your own porter url here
const decrypter = await makeTDecDecrypter("ibex-2-of-3", "https://porter-ibex.nucypher.community")

Please note, the schemes for the encrypter and decrypter must match.

Encryption and decryption is then as simple as:

const plaintext = toBytes('plaintext-message');
const encryptedMessageKit = encrypter.encryptMessage(plaintext);

const decryptedPlaintext = await decrypter.retrieveAndDecrypt([encryptedMessageKit]);
1.0.0-alpha.5

9 months ago

1.0.0-alpha.4

9 months ago

1.0.0-alpha.3

9 months ago

1.0.0-alpha.2

10 months ago

1.0.0-alpha.1

10 months ago

1.0.0-beta.2

11 months ago

1.0.0-beta.3

11 months ago

1.0.0-beta.4

9 months ago

1.0.0-alpha.0

11 months ago

0.10.0-tapir.0

1 year ago

0.10.0-oryx.0

1 year ago

0.10.0

1 year ago

1.0.0-beta.0

1 year ago

1.0.0-beta.1

1 year ago

1.0.0-beta

1 year ago

0.9.0-alpha.0

1 year ago

0.10.0-alpha.0

1 year ago

0.9.0

1 year ago

0.7.9-alpha.23

2 years ago

0.7.9-alpha.24

2 years ago

0.7.9-alpha.21

2 years ago

0.7.9-alpha.22

2 years ago

0.7.9-alpha.25

2 years ago

0.7.9-alpha.26

2 years ago

0.9.0-alpha.1

1 year ago

0.7.9-alpha.18

2 years ago

0.7.9-alpha.19

2 years ago

0.7.9-alpha.20

2 years ago

0.8.2

2 years ago

0.7.9-alpha.12

2 years ago

0.7.9-alpha.13

2 years ago

0.7.9-alpha.9

2 years ago

0.7.9-alpha.10

2 years ago

0.7.9-alpha.11

2 years ago

0.7.9-alpha.16

2 years ago

0.7.9-alpha.17

2 years ago

0.7.9-alpha.14

2 years ago

0.7.9-alpha.15

2 years ago

0.7.9-alpha.2

2 years ago

0.7.9-alpha.4

2 years ago

0.7.9-alpha.3

2 years ago

0.7.9-alpha.6

2 years ago

0.7.9-alpha.5

2 years ago

0.7.9-alpha.8

2 years ago

0.7.9-alpha.7

2 years ago

0.8.1

2 years ago

0.7.9-alpha.1

2 years ago

0.7.6

2 years ago

0.7.5

2 years ago

0.7.8

2 years ago

0.7.7

2 years ago

0.7.9-alpha.0

2 years ago

0.8.0-alpha.0

2 years ago

0.7.2

2 years ago

0.8.0

2 years ago

0.7.1

2 years ago

0.7.4

2 years ago

0.7.3

2 years ago

0.7.0-rc0

2 years ago

0.7.0

2 years ago

0.6.1

2 years ago

0.6.0-alpha2

2 years ago

0.6.0-alpha1

2 years ago

0.6.0-alpha4

2 years ago

0.6.0-alpha3

2 years ago

0.6.0-alpha

2 years ago

0.6.0

2 years ago

0.5.1

2 years ago