Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/outofsyncstudios/aescrypt-helper
Simple tools to deal with the AES-256-CBC encryption and decryption of data with arbitrary lengths
https://github.com/outofsyncstudios/aescrypt-helper
nodejs npm open-source
Last synced: about 2 months ago
JSON representation
Simple tools to deal with the AES-256-CBC encryption and decryption of data with arbitrary lengths
- Host: GitHub
- URL: https://github.com/outofsyncstudios/aescrypt-helper
- Owner: OutOfSyncStudios
- License: mit
- Created: 2018-01-22T21:34:07.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2023-01-16T05:02:07.000Z (almost 2 years ago)
- Last Synced: 2024-10-29T19:59:25.265Z (2 months ago)
- Topics: nodejs, npm, open-source
- Language: JavaScript
- Homepage:
- Size: 821 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# aescrypt-helper
[![NPM](https://nodei.co/npm/@outofsync/aescrypt-helper.png?downloads=true)](https://nodei.co/npm/@outofsync/aescrypt-helper/)
[![Actual version published on npm](http://img.shields.io/npm/v/@outofsync/aescrypt-helper.svg)](https://www.npmjs.org/package/@outofsync/aescrypt-helper)
[![Total npm module downloads](http://img.shields.io/npm/dt/@outofsync/aescrypt-helper.svg)](https://www.npmjs.org/package/@outofsync/aescrypt-helper)
[![Master build](https://github.com/OutOfSyncStudios/aescrypt-helper/actions/workflows/build-master.yml/badge.svg)](https://github.com/OutOfSyncStudios/aescrypt-helper/actions/workflows/build-master.yml)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/eebdf6aed1a14a3e9a44a017e4ac8ac2)](https://www.codacy.com/gh/OutOfSyncStudios/aescrypt-helper/dashboard?utm_source=github.com&utm_medium=referral&utm_content=OutOfSyncStudios/aescrypt-helper&utm_campaign=Badge_Grade)
[![Codacy Coverage Badge](https://app.codacy.com/project/badge/Coverage/eebdf6aed1a14a3e9a44a017e4ac8ac2)](https://www.codacy.com/gh/OutOfSyncStudios/aescrypt-helper/dashboard?utm_source=github.com&utm_medium=referral&utm_content=OutOfSyncStudios/aescrypt-helper&utm_campaign=Badge_Coverage)
[![Dependencies badge](https://david-dm.org/gh/OutOfSyncStudios/aescrypt-helper.svg)](https://david-dm.org/OutOfSyncStudios/aescrypt-helper?view=list)`aescrypt-helper` is a pure Node.js set of simple tools to deal with the AES-256-CBC encryption and decryption of data with arbitrary lengths.
# [Installation](#installation)
```shell
npm install @outofsync/aescrypt-helper
``````js
const AESCryptHelper = require('@outofsync/aescrypt-helper');const secret = '41e8c08ff31f97547ac11cc47c29f8ce5cb187a70ef09226c0f025c25c55b5b3';
const iv = '3816d1474cf82f3182b83c390d3e8eb5';
const creds = { secret: null, iv: null };creds.secret = Buffer.from(secret, 'hex');
creds.iv = Buffer.from(iv, 'hex');
const aescyptHelper = new AESCryptHelper(creds.secret, creds.iv);console.log(aescryptHelper.decryptiv(aescryptHelper.encryptiv('Test Message')));
```## AESCryptHelper constructor(secret, iv[, separator]) ⟾ instanceof AESCryptHelper
Create an instance of AESCryptHelper using the `secret`, and `iv` (initialization vector). A `separator`
may also be specified to indicate how blocks are separated; however, this is unnecessary and only included
for backwards compatibility. By default, no separator is used.***Note***: The `iv` should exactly 16 bytes in length and the `secret` should be exactly 32 bytes in length.
## AESCryptHelper.encryptiv(data [, secret] [, iv]) ⟾ Buffer
Encrypt the `data` Buffer with the configured `secret` or the optionally passed `secret` and the configured `iv` or the optionally passed `iv`. Returns the encrypted data in a Buffer.## AESCryptHelper.decryptiv(encryptedData [, secret] [, iv]) ⟾ Buffer
Decrypts the `encryptedData` Buffer with the configured `secret` or the optionally passed `secret` and the configured `iv` or the optionally passed `iv`. Returns the decrypted data in a Buffer.Copyright (c) 2018-2021 Out of Sync Studios LLC -- Licensed under the MIT license.