The crypter library makes easy to share encrypted data with a Laravel project.
npm install @izzius94/crypter



The crypter library makes easy to share encrypted data with a Laravel project.
- Genaration of encryption keys from command line
- Encryption of strings
- Decryption of strings
- aes-256-cbc (default)
- aes-128-cbc
- aes-256-gcm
- aes-128-gcm
> To mitigate this use php-serialize library.
> Full documentation here
``bash
npx @izzius94/crypter
`
This command will output a new encryption key in yor console. This command accept the algorithm to use as a parameter. If the algorithm is not supported it will exit with an error
To encrypt/decrypt strings use encrypt and decrypt methods passing the encryption key as the second parameter.
`typescript
import { encrypt, decrypt } from '@izzius94/crypter'
const key = readKey('8U6GU1Tp1/0Jb7/1BRCxpzQubzBKfs1Sm8V8Wtce4+U==')
const original = 'my-string'
const crypted = crypter.encrypt(original, key)
const decrypted = crypter.decrypt(crypted, key)
console.log(original === decrypted)
`
> To use a different algorithm pass it as the third parameter to the methods encrypt and decrypt.
Sometimes you will need to use the same key accross multiple classes. To help you do this you can use the class Crypter to share the same encryption key.
`typescript
import { Crypter, readKey } from '@izzius94/crypter'
const crypter = new Crypter(readKey('TkIRuk6C70E2ExHunuX+wg3CwX+kcgkbg59Yhwiqi7s='))
const original = 'my-string'
const crypted = crypter.encrypt(original)
const decrypted = crypter.decrypt(crypted)
// Will output true
console.log(original === decrypted)
`
> To use a different algorithm pass it as second parameter to the constructor of the class Crypter`