All Projects → danang-id → simple-crypto-js

danang-id / simple-crypto-js

Licence: MIT License
Simplified AES cryptography for safer and easier encryption and decryption processes of any JavaScript objects.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to simple-crypto-js

Easycrypt
Android cryptography library with SecureRandom patches.
Stars: ✭ 102 (+30.77%)
Mutual labels:  encryption, decryption
Underlock
Underlock makes it dead simple to encrypt and decrypt your data and files. It comes with little to no dependencies and has a very small API surface.
Stars: ✭ 128 (+64.1%)
Mutual labels:  encryption, decryption
Py7zr
7zip in python3 with ZStandard, PPMd, LZMA2, LZMA1, Delta, BCJ, BZip2, and Deflate compressions, and AES encryption.
Stars: ✭ 110 (+41.03%)
Mutual labels:  encryption, decryption
Python-File-Encryptor
Encrypt and Decrypt files using Python (AES CBC MODE)
Stars: ✭ 51 (-34.62%)
Mutual labels:  encryption, decryption
jose-simple
Jose-Simple allows the encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard.
Stars: ✭ 50 (-35.9%)
Mutual labels:  encryption, decryption
Sharedchamber
Android Secure SharedPreferences Using Facebook Conceal Encryption
Stars: ✭ 96 (+23.08%)
Mutual labels:  encryption, decryption
Cross Platform Aes
Simple cross-platform encryption and decryption using AES
Stars: ✭ 127 (+62.82%)
Mutual labels:  encryption, decryption
Simon speck ciphers
Implementations of the Simon and Speck Block Ciphers
Stars: ✭ 74 (-5.13%)
Mutual labels:  encryption, decryption
Pgsodium
Modern cryptography for PostgreSQL using libsodium.
Stars: ✭ 202 (+158.97%)
Mutual labels:  encryption, decryption
Helm Secrets
Successor of zendesk/helm-secrets - A helm plugin that help manage secrets with Git workflow and store them anywhere
Stars: ✭ 165 (+111.54%)
Mutual labels:  encryption, decryption
Encryptor4j
Strong encryption for Java simplified
Stars: ✭ 92 (+17.95%)
Mutual labels:  encryption, decryption
Laravel Database Encryption
A package for automatically encrypting and decrypting Eloquent attributes in Laravel 5.5+, based on configuration settings.
Stars: ✭ 238 (+205.13%)
Mutual labels:  encryption, decryption
Hybrid Crypto Js
RSA+AES hybrid encryption implementation for JavaScript. Works with Node.js, React Native and modern browsers.
Stars: ✭ 87 (+11.54%)
Mutual labels:  encryption, decryption
kms-env
A tool to encrypt and decrypt environment variables using KMS
Stars: ✭ 16 (-79.49%)
Mutual labels:  encryption, decryption
Cryptr
A simple shell utility for encrypting and decrypting files using OpenSSL.
Stars: ✭ 81 (+3.85%)
Mutual labels:  encryption, decryption
Cryption
In-Browser AES File Encryption 🔐 with Data Integrity Check 🔍
Stars: ✭ 114 (+46.15%)
Mutual labels:  encryption, decryption
Helm Secrets
DEPRECATED A helm plugin that help manage secrets with Git workflow and store them anywhere
Stars: ✭ 1,129 (+1347.44%)
Mutual labels:  encryption, decryption
Lazysodium Android
An Android implementation of the Libsodium cryptography library. For the lazy dev.
Stars: ✭ 69 (-11.54%)
Mutual labels:  encryption, decryption
Padding Oracle Attacker
🔓 CLI tool and library to execute padding oracle attacks easily, with support for concurrent network requests and an elegant UI.
Stars: ✭ 136 (+74.36%)
Mutual labels:  encryption, decryption
Jsrsasign
The 'jsrsasign' (RSA-Sign JavaScript Library) is an opensource free cryptography library supporting RSA/RSAPSS/ECDSA/DSA signing/validation, ASN.1, PKCS#1/5/8 private/public key, X.509 certificate, CRL, OCSP, CMS SignedData, TimeStamp, CAdES JSON Web Signature/Token in pure JavaScript.
Stars: ✭ 2,760 (+3438.46%)
Mutual labels:  encryption, decryption

SimpleCrypto

GitHub Release Build Distribution Coverage Status Dependencies Status

NPM Version License Monthly Downloads

SimpleCrypto is a JavaScript library that simplify the process of encryption and decryption of JavaScript objects, as simple as just calling encrypt() and decrypt() function. This library implements brix's crypto-js library. This library is pure JavaScript library built with TypeScript targeting CommonJS ECMAScript 5 (ES5), so it is compatible with most NodeJS back-end applications or JavaScript front-end (client browser).

Breaking Changes

v2.3.0: New Algorithm

SimpleCrypto v2.3.0 onward will use a new algorithm, because the older one was vulnerable to chosen cipher attack. Any data that encrypted using v2.2.0 and earlier will NOT be able to be decrypted using v2.3.0 onward; vice versa: data encrypted using v2.3.0 onward will NOT be able to be decrypted using v2.2.0 and earlier.

v3.0.0: New Native Crypto Module

SimpleCrypto v3.0.0 onward will use new crypto-js dependency version ^4.0.0. This version of crypto-js replaces Math.random() method with native crypto module. Because of this, SimpleCrypto might not be able to run on some environments without native crypto module support, such as IE 10 (and earlier) or React Native.

Please read more here.

List of Contents

What's New?

What's New in 3.0.1 (latest current)

  • Upgrade crypto-js dependency to version 4.1.1.
  • Improving typings.

What's New in 2.5.1 (latest legacy)

  • Improving typings.

For full change-log, please refer to CHANGELOG file.

Getting Started

This library is available through jsDelivr CDN and package manager (like npm or yarn).

Vanilla JavaScript + HTML

To get started, add SimpleCrypto script to your HTML page. Only legacy version of SimpleCrypto is supported.

<head>
    <!-- Another line -->
    <script src="//cdn.jsdelivr.net/npm/simple-crypto-js@legacy/dist/SimpleCrypto.min.js"></script>
    <!-- Another line -->
</head>

Then, your script section, you may use SimpleCrypto as Class to create a new SimpleCrypto instance.

<body>
<!-- Another line -->
<script lang="js">
    var simpleCrypto = new SimpleCrypto("a very secret key")
    <!-- Do your cryptographic logic here  -->
</script>
<!-- Another line -->
</body>

NodeJS

If you are using NodeJS, add simple-crypto-js as your project dependency.

# If you're using NPM
npm install --save simple-crypto-js

# If you're using Yarn
yarn add simple-crypto-js

Then, include SimpleCrypto your project.

var SimpleCrypto = require("simple-crypto-js").default

If you are using Babel or TypeScript that support import statement, you could go that way.

import SimpleCrypto from "simple-crypto-js"

How to Use SimpleCrypto

Full documentation about SimpleCrypto API is available here.

Built With

Written in TypeScript, built into ECMAScript 5 using the TypeScript compiler and webpack bundler.

Contribution

To contribute, simply fork this project, and issue a pull request. However, before issuing a pull request, you have to make sure that your changes will not break current API, its parameter and its expected output.

You may test your changes by running the test script.

npm run test

If all tests were passed, you are good to go.

Version Management

We use Semantic Versioning for version management. For the versions available, see the tags on this repository.

Authors

  • Danang Galuh Tegar Prasetyo - Initial work - danang-id

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details

Acknowledgments

  • This library was developed to support and simplify the Secure Cookies library.
  • Made available by open source and of course brix's crypto-js library
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].