Isomorphic encryption library that works both in the browser and node.
Go to file
2022-10-18 15:48:40 +02:00
.github/workflows fix playwright 2022-10-16 02:47:52 +02:00
.vscode rewrite 2022-10-13 22:06:51 +02:00
src rsa 2022-10-16 02:44:41 +02:00
test drop support for commonjs 2022-10-18 15:48:27 +02:00
.gitignore rewrite 2022-10-13 22:06:51 +02:00
.karma.cjs drop support for commonjs 2022-10-18 15:48:27 +02:00
.mocharc.yaml rewrite 2022-10-13 22:06:51 +02:00
.npmrc config stuff 2022-10-14 13:17:22 +02:00
CHANGELOG.md docs 2022-10-16 03:31:41 +02:00
LICENSE docs 2022-10-16 03:31:41 +02:00
package.json version bump 2022-10-18 15:48:40 +02:00
pnpm-lock.yaml update deps 2022-10-18 14:07:36 +02:00
README.md readme 2022-10-16 03:27:08 +02:00
ROADMAP.md rewrite 2022-10-13 22:06:51 +02:00
tsconfig.json build pipeline 2022-10-18 14:34:23 +02:00
typedoc.json use typedarray everywhere and docs 2022-10-14 13:52:18 +02:00

occulto 🔒

Occulto /okˈkul.to/

hidden, concealed. secret.

version badge downloads badge dependency count minzip size badge types badge

Isomorphic encryption library that works both in the browser and node with no dependencies and written in Typescript.

📒 API Documentation 📒

Quickstart 🚀

Requirements
  • Node >= 16 required
Install
npm i occulto

Examples

RSA

import { RSA } from 'occulto'

const pair = await RSA.generateKeyPair()
const encrypted = await RSA.encrypt('some text', pair.public)
const decrypted = await RSA.decrypt(encrypted, pair.private)

AES

Available Modes

import { Symmetric } from 'occulto'

const encrypted = await Symmetric.encryptEasy('some string', 'myPass')
const decrypted = await Symmetric.decryptEasy(encrypted, 'myPass')

Hash

Available hashes

import { Hash } from 'occulto'

const hash = Hash.digest('something')

const h = Hash.digest('something', Hash.Hashes.MD5)