🔐 AES加密工具
专业的AES加密工具,支持AES-128/192/256多种密钥长度,提供CBC、ECB、CFB、OFB、GCM等多种加密模式,适用于安全数据加密解密
什么是AES加密?
AES(高级加密标准)是美国联邦政府采用的对称加密算法。它支持128、192和256位的密钥长度,提供不同级别的安全性。AES被广泛用于文件加密、数据库保护、网络通信等各种应用中的敏感数据保护。
密钥强度
- AES-128:128位密钥,性能快速
- AES-192:192位密钥,安全性增强
- AES-256:256位密钥,最高安全性
加密模式
- CBC:密码块链接模式(推荐)
- ECB:电子密码本模式(基础)
- CFB/OFB:流密码模式
- GCM:认证加密模式
应用场景
- 文件和数据库加密
- 安全通信(HTTPS、VPN)
- API密钥和凭证保护
- 支付和金融数据安全
安全最佳实践
始终使用强随机生成的密钥。不要在同一密钥下重复使用IV。避免在生产环境中使用ECB模式。考虑使用像GCM这样的认证加密模式。此工具仅执行客户端加密 - 您的数据不会离开浏览器。
算法和模式设置
密钥长度:256 bits
安全性:很高
IV长度:128 bits
密钥和IV管理
必需
必需
输入数据
字符数: 0
加密结果
输出长度: 0
AES算法详情与实现示例
算法信息
算法:AES-256-CBC
密钥长度:256 bits
IV长度:128 bits
安全级别:很高
性能:良好
推荐:common.yes
模式特性
• CBC(密码块链接)使用前一个密文块加密每个块
• 提供良好的安全性并广泛支持
• 每次加密操作都需要唯一的IV
• 适用于大多数通用加密需求
使用场景与建议
文件加密
文档加密、数据库加密、备份保护
传统系统
与旧系统和标准的兼容性
通用目的
一般加密需求的最常用模式
代码实现示例
JavaScript (Node.js + crypto)
const crypto = require('crypto'); class AESCrypto { constructor() { this.algorithm = 'aes-256-cbc'; } // Generate random key generateKey() { return crypto.randomBytes(32); // 256 bits } // Generate random IV generateIV() { return crypto.randomBytes(16); // 128 bits for CBC } // Encrypt data encrypt(plaintext, key, iv) { const cipher = crypto.createCipher(this.algorithm, key); cipher.setAutoPadding(true); let encrypted = cipher.update(plaintext, 'utf8', 'base64'); encrypted += cipher.final('base64'); return { encrypted, key: key.toString('hex'), iv: iv.toString('hex') }; } // Decrypt data decrypt(encrypted, key, iv) { const decipher = crypto.createDecipher(this.algorithm, Buffer.from(key, 'hex')); let decrypted = decipher.update(encrypted, 'base64', 'utf8'); decrypted += decipher.final('utf8'); return decrypted; } } // Usage example const aes = new AESCrypto(); const key = aes.generateKey(); const iv = aes.generateIV(); const plaintext = "Sensitive data to encrypt"; const result = aes.encrypt(plaintext, key, iv); console.log('Encrypted:', result.encrypted); const decrypted = aes.decrypt(result.encrypted, result.key, result.iv); console.log('Decrypted:', decrypted);