A TypeScript library for secure encryption using AES & RSA with automatic key rotation.
npm install secure-encryption-libSecureEncryption is a TypeScript library that provides robust encryption mechanisms using AES-256-CBC and RSA encryption. It ensures secure data handling with automatic key management.
---
Install the package using npm:
``sh`
npm install secure-encryption-lib
or using yarn:
`sh`
yarn add secure-encryption-lib
---
`ts`
import { SecureEncryption } from 'secure-encryption-lib'
`ts`
const secureEncryption = new SecureEncryption()
---
`ts
const secretKey = 'your-16-character-long-secret-key' // Must be 16 characters
const text = 'Hello, Secure World!'
const encryptedText = secureEncryption.encryptAES(text, secretKey)
console.log('Encrypted:', encryptedText)
`
`ts`
const decryptedText = secureEncryption.decryptAES(encryptedText, secretKey)
console.log('Decrypted:', decryptedText)
---
`ts`
const encryptedRSA = await secureEncryption.encryptRSA('Sensitive Data')
console.log('RSA Encrypted:', encryptedRSA)
`ts`
const decryptedRSA = await secureEncryption.decryptRSA(encryptedRSA)
console.log('RSA Decrypted:', decryptedRSA)
---
SecureEncryption supports optional configurations. You can provide a custom configuration object when initializing:
`ts
const config = {
redisConfig: { host: 'localhost', port: 6379 },
tokenExpiry: 3600
}
const secureEncryption = new SecureEncryption(config)
`
---
| Method | Description |
| -------------------------------------- | -------------------------------- |
| encryptAES(text, secretKey) | Encrypts text using AES-256-CBC. |decryptAES(encryptedText, secretKey)
| | Decrypts AES-encrypted text. |encryptRSA(text)
| | Encrypts text using RSA. |decryptRSA(encryptedText)` | Decrypts RSA-encrypted text. |
|
---
This project is licensed under the MIT License.
---
- Author: Vasanthkumar
- GitHub: @vasanthkumar10
- Email: vasizebron10@gmail.com