# @theroyalwhee0/highseal

> Seal a Value into an Encrypted String

Latest version **0.2.0** (published 2023-01-26) · Apache-2.0 license · 0 weekly downloads

## Install

```sh
npm install @theroyalwhee0/highseal
pnpm add @theroyalwhee0/highseal
yarn add @theroyalwhee0/highseal
bun add @theroyalwhee0/highseal
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.2.0 |
| Published | 2023-01-26 |
| First published | 2022-12-13 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 106.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Adam Mill |
| Maintainers | theroyalwhee0 |
| Keywords | highseal, encrypt, decrypt |

## Links

- npm: https://www.npmjs.com/package/@theroyalwhee0/highseal
- npm.io page: https://npm.io/package/@theroyalwhee0/highseal

## Dependencies (1)

- [@theroyalwhee0/counters](https://npm.io/package/@theroyalwhee0/counters.md) 1.0.0

## Alternatives

- [@gemini-wallet/core](https://npm.io/package/@gemini-wallet/core.md) — 515.6K weekly downloads
- [utility](https://npm.io/package/utility.md) — 416.6K weekly downloads
- [@primno/dpapi](https://npm.io/package/@primno/dpapi.md) — 7.2K weekly downloads
- [pi-readseek](https://npm.io/package/pi-readseek.md) — 3.7K weekly downloads
- [@emilia-protocol/verify](https://npm.io/package/@emilia-protocol/verify.md) — 1.1K weekly downloads

## Recent versions

- 0.2.0 (latest) — 2023-01-26
- 0.1.1 — 2023-01-24
- 0.1.0 — 2022-12-18
- 0.0.3 — 2022-12-15
- 0.0.2 — 2022-12-15
- 0.0.1 — 2022-12-13

## README

# HighSeal - @theroyalwhee0/highseal

## What is this?
A library to seal and unseal a string value with a secret. The value is encrypted with aes-256-gcm, padded to a minimum of 32 bytes and padded to a multiple of 8 bytes beyond that.


## Installation
`npm install @theroyalwhee0/highseal`  


## CLI
The [Highseal CLI](https://www.npmjs.com/package/@theroyalwhee0/highseal-cli) install allows sealing and unsealing of values without writing code. 

`npm install --global @theroyalwhee0/highseal-cli`


## Usage
```ts
import { seal, unseal, isSealed } from '@theroyalwhee0/highseal';
const secret = 'marabou stork';
const initial = 'Leptoptilos crumenifer';
console.info('Initial Value:', initial);
const sealed = seal(initial, secret);
console.info('Sealed Value:', sealed);
console.info(`Value ${isSealed(sealed) ? 'appears' : 'does not appear'} to be sealed.`);
const [err, unsealed] = unseal(sealed, secret);
if(err) {
    console.error('Unable to unseal value:', err);
} else {
    console.info('Unsealed Value:', unsealed);
}
```


## Testing.
Running ```npm run test``` will run the test suite. Running ```npm run test-watch``` will run the test suite in watch mode.


## Security Notes
- This code has not been audited or verified by a third party.
- The sealed values timestamps leak metadata of when they were generated.
- The sealed values counters may leak metadata since incremented counters indicate batches.


## Links
- GitHub: [https://github.com/theroyalwhee0/highseal](https://github.com/theroyalwhee0/highseal)
- NPM: [https://www.npmjs.com/package/@theroyalwhee0/highseal](https://www.npmjs.com/package/@theroyalwhee0/highseal)
- Changelog: [https://github.com/theroyalwhee0/highseal/blob/main/changelog.md](https://github.com/theroyalwhee0/highseal/blob/main/changelog.md)
- Highseal CLI: [https://github.com/theroyalwhee0/highseal/tree/main/cli](https://github.com/theroyalwhee0/highseal/tree/main/cli)


## Legal & License
Copyright 2022-2023 Adam Mill

This library is released under Apache 2 license. See [LICENSE](https://github.com/theroyalwhee0/highseal/blob/main/LICENSE) for more details.

---
_Source: https://npm.io/package/@theroyalwhee0/highseal · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
