Giter VIP home page Giter VIP logo

handshakejs's Introduction

HandshakeJS

Introduction

HandshakeJS is a JavaScript library designed to enhance security in web applications through end-to-end encrypted communication. Leveraging modern cryptographic standards, HandshakeJS offers developers an easy-to-use interface for implementing both symmetric and asymmetric encryption directly within their applications. Whether you're building a secure chat application or need to protect sensitive data in transit, HandshakeJS provides the necessary tools to ensure your data remains confidential and secure.

Features

  • Asymmetric Encryption: Utilize RSA encryption for secure message exchanges, ensuring that only the intended recipient can decrypt the message.
  • Symmetric Encryption: Implement AES encryption for efficient, high-speed encryption and decryption of messages.
  • Key Management: Generate, store, and manage cryptographic keys securely, including both public/private key pairs and symmetric keys.
  • Flexible Configuration: Customize encryption settings, including key sizes and storage options, to fit the needs of your application.
  • Debugging Support: Integrated debugging capabilities to assist in development and troubleshooting.

Basic Usage

Setting Up Key Management

import { KeyManager } from 'handshakejs';

// Set up storage for keys (example uses local storage)
KeyManager.asymmetric.setStore(new Util.LocalStore());

// Generate asymmetric keys
await KeyManager.asymmetric.generateKeys();

// Retrieve keys
const keys = await KeyManager.asymmetric.getKeys();
console.log(keys.pubKey, keys.priKey);

Encrypting and Decrypting Messages

import { Cryptography } from 'handshakejs';

// Encrypt a message using AES
const encryptedMessage = await Cryptography.AES.encrypt({ key: 'your_symmetric_key' }, 'Hello, world!');

// Decrypt the message
const decryptedMessage = await Cryptography.AES.decrypt(encryptedMessage, 'your_symmetric_key');
console.log(decryptedMessage); // 'Hello, world!'

handshakejs's People

Contributors

sahandhnj avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.