New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

aes.js-wrapper

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

aes.js-wrapper

Encrypt and decrypt very secure and completely uniqe text from and to AES 256 CBC

  • 1.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

AES.js-wrapper

Encrypt and decrypt very secure and completely uniqe text from and to AES 256 CBC

Installation

# With NPM
npm i -S ihack2712/aes.js-wrapper

# With YARN
yarn add ihack2712/aes.js-wrapper

# With bower
bower install ihack2712/aes.js-wrapper

Example

const AES = require('aes.js-wrapper')

var password = 'secret'
  , text = 'Hello World'

var encrypted = AES.encrypt(text, password)
  , decrypted = AES.decrypt(encrypted, password)

console.log('AES Wrapper Example')
console.log('Password: "' + password + '"')
console.log('Dummy Text: "' + text + '"')
console.log('')
console.log('* Encrypted')
console.log(encrypted)
console.log()
console.log('* Decrypted')
console.log(decrypted)
Results In:
$ node example
AES Wrapper Example
Password: "secret"
Dummy Text: "Hello World"

* Encrypted
c9ea1bf12e83ecb5b06a2f9e1ebb4c7eea0fba8d48ffa4973bd4d4b65b809e648f0996c291dc7035ca1c41dcf39864188f41f5893bc00d73d4b376e74cdc9bf0a933df90723dc9f4510e4d6ad9936694

* Decrypted
Hello World

Properties

NameTypeDescription
_iv_BufferGet the default IV in a buffer.
dummyTextstringThis is the default dummy text to use when hashing and validating hashes.

Methods

constructor ()

The constructor method in this class is completely useless, it's not used for anything.

encrypt (value, password)

Encrypt normal text to a very uniqe, and very secure hex formatted string.

Params
NameTypeDescription
valuestringThis is the text to encrypt.
passwordstringThis is the raw text utf8 password to hash into a md5 hex that will also secure the encryption better.
Returns

string

Example
AESWrapper.encrypt('hello world', 'very secret password')
// '39f425031f850fcca2f0f4f56bf3143a8104fa1dd27eb143f64a4fd3f223b85ca6b5849a5b48e6dd4af9fb6ddba9ffbae41c4d165491f8358ae7167d7acc834e58cf97fbab413aef0165ea991a475809'

decrypt (data, password)

Decrypt encrypted text to the normal text using the very secret password.

Params
NameTypeDescription
datastringThis is the encrypted text to decrypt
passwordstringThis is the raw text utf8 password to hash into a md5 hex that will also secure the encryption better.
Returns

string

Example
AESWrapper.decrypt('39f425031f850fcca2f0f4f56bf3143a8104fa1dd27eb143f64a4fd3f223b85ca6b5849a5b48e6dd4af9fb6ddba9ffbae41c4d165491f8358ae7167d7acc834e58cf97fbab413aef0165ea991a475809', 'very secret password')
// 'hello world'

hash (key)

Hash text into a completely uniqe hash, that means hashing the same text again won't be equal to this one.

Params
NameTypeDescription
keystringThis key will be used to create the hash, this key will be encrypting dummy text.
Returns

string

Example
AESWrapper.hash('Hello World')
// c6ae556bd9a4d728f061ff66cd196e96e00792810061a528db8f4f74f229c60dc9bfc837fbe447eadb7c6353ffce18983849c70ffc7ac754ee3d2502ddc148827032ea83741d9647a6a2e8921cb1800c192381fe42d357de64d397c4e10c0b2eeee18d2255a7817cb36bb9ee97c17fb84ad48da3b2902d3b0953a357f6d0b9720c117474ea2bdf3cc9212645403f6ed94f8106cfb2db4b755ae15c3652721a108654fff81c06379fd092794dea8455019212cd25a983146cb8472049bba75d9a4e5777484c4360dabc233d6fa4c9923a

val (hash, key)

Check if a hash is valid by decrypting dummy text.

Params
NameTypeDescription
hashstringThis is the hash to match against, simply try to decrypt this hash into the dummy text and check if the decryption was successful.
keystringThis key will be used to decrypt the hash into dummy text.
Returns

string

Example
AESWrapper.val('c6ae556bd9a4d728f061ff66cd196e96e00792810061a528db8f4f74f229c60dc9bfc837fbe447eadb7c6353ffce18983849c70ffc7ac754ee3d2502ddc148827032ea83741d9647a6a2e8921cb1800c192381fe42d357de64d397c4e10c0b2eeee18d2255a7817cb36bb9ee97c17fb84ad48da3b2902d3b0953a357f6d0b9720c117474ea2bdf3cc9212645403f6ed94f8106cfb2db4b755ae15c3652721a108654fff81c06379fd092794dea8455019212cd25a983146cb8472049bba75d9a4e5777484c4360dabc233d6fa4c9923a', 'Hello World')
// true

getRandomBytes (length)

This is used to get a random IV, this also makes the encryption uniqe and very secure.

Params
NameTypeDescription
lengthnumberThis defines how many bytes that will be generated.
Returns

Buffer

hex (buffer)

This turns a buffer into a string

Params
NameTypeDescription
bufferBufferThe buffer to encode into a hex formatted text.
Returns

string

buffer (hex)

Decode HEX into a buffer.

Params
NameTypeDescription
hexstringThe hex data to decode.
Returns

Buffer

md5 (text)

Hash text into a md5 hash.

Params
NameTypeDescription
textstringThe text to hash to an MD5 hash.
Returns

string

Example
AESWrapper.md5('hello world')
// '5EB63BBBE01EEED093CB22BB8F5ACDC3'

FAQs

Package last updated on 24 Feb 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc