1.0.5 • Published 3 years ago
@zozoto/encrypto v1.0.5
About Project
End to End encryption (RSA e2ee) for multiple languages (cross-platform) and Value password protection (DES encryption) specially for local file encryption!
| Icon | Item |
|---|---|
| 🎃 | Usage |
| 📺 | Preview |
| 🥳 | Upcoming |
| ⚖️ | License |
| 📝 | ChangeLog |
| 😋 | For HTML |
Usage(JavaScript)
Implementation:-
npm i @zozoto/encrypto
or For HTML
RSA
RSA Init
import Encrypto from '@zozoto/encrypto';
let encrypto = new Encrypto('RSA', 128);
//this generates public and private keys for e2ee, the default bitlength is 256
//keep the bitlength low if you are going to use it in web.Get ZotPublicKey
let publicKeyString = encrypto.getSterilizedPublicKey();
//returns a base64 encoded public key which you can send to all other clients
//to convert above publicKeyString to ZotPublicKey use:
let pubKey = encrypto.deSterilizeZotPublicKey(publicKeyString);
// pass the public key string which you recieved from the client.
//another method to get the public key directly is:
let publicKey = encrypto.getZotPublicKey();
//returns a map with public exponent and modulusRSA Encrypt
let val = "alo";
let base64encrypted = encrypto.encrypt(val, pubKey);
//passing public key as 2nd parameter is MANDATORY for RSA encryptionRSA Decrypt
let decrypted = encrypto.decrypt(base64encrypted);
console.log(decrypted);
//prints original message i.e. "alo"Other methods for RSA
| Sr. number | Methods | Info |
|---|---|---|
| 1 | getPublicKey() | is a method that returns generated ZotPublicKey |
| 2 | getDeSterilizePublicKey() | is a method which converts ZotPublicKey string to ZotPublicKey |
| 3 | getSterilizePublicKey() | returns a ZotPublicKey string which can be sent to the other person. |
| 4 | encrypt(value, ZotPublicKey) | used to encrypt String with RSA |
| 5 | decrypt(value) | used to decrypt string using the password or ZotPrivateKey (no need to pass ZotPrivateKey) |
DES
DES Init
Encrypto encrypto = new Encrypto(Encrypto.DES, "the moon is scary sometimes");
//MANDATORY to pass password as 2nd parameter for DES
//It's suggested to pass the hash of the password instead of plain textDES Encrypt
- Unsupported for Encrypto v1.*
HTML
- To use Encrypto in HTML script tag click here for
encrypto.min.jsCDN link - To use Encrypto in HTML script tag click here for
encrypto.jsCDN link - To import file directly (without npm) just copy the
encrypto.jsfile from here and use it the folloring way:
//foo.js (foo = name of the file you use in your html code)
import Encrypto from "./encrypto.js";
let encrypto = new Encrypto('RSA', 128);
let enc = encrypto.encrypt('alo from js', encrypto.getZotPublicKey());
console.log(enc);
let dec = encrypto.decrypt(enc);
console.log(dec);Upcoming
| Supported Languages | Status |
|---|---|
| Java | Completed and available here |
| Flutter | Completed and available here |
| Rust | Pending |