occulto
TypeScript icon, indicating that this package has built-in type declarations

2.0.4 • Public • Published

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

import { RSA } from 'occulto'

const pair = await RSA.generateKeyPair(2 ** 11)
const bytes = Bytes.encode(message)

const encrypted = await RSA.encrypt(bytes, pair.public)
const decrypted = await RSA.decrypt(encrypted, pair.private)

Available Modes

There is an easy API, that will take care of everything for you.

import { AES } from 'occulto'

const password = 'foobar'
const message = 'this is a secret'

const encrypted = await AES.encryptEasy(message, password)
const decrypted = await AES.decryptEasy(encrypted, password)

The low level API is also exposed for advanced usages.

import { AES } from 'occulto'

const message = 'this is a secret'
const key = await AES.generateKey()
const data = Bytes.encode(message)

const ciphertext = await AES.encrypt(data, key)
const plaintext = await AES.decrypt(ciphertext, key)

Available hashes

import { Hash, Hashes } from 'occulto'

const hashed = await Hash.hash('Some value', Hashes.SHA_512)

Package Sidebar

Install

npm i occulto

Weekly Downloads

41

Version

2.0.4

License

MIT

Unpacked Size

39.7 kB

Total Files

35

Last publish

Collaborators

  • cupcakearmy