Base64 编码与加密
一个危险的常见误解是 Base64 提供安全性。它不提供。理解这种区别对于安全至关重要。
Base64 不是加密
Base64 提供零安全性。任何人都可以立即解码它。切勿使用 Base64"隐藏"敏感数据。 编码转换数据以实现兼容性。加密转换数据使其在没有密钥的情况下不可读。Base64 是编码,不是加密。 基本 HTTP 身份验证使用 Base64 编码的凭据。它们很容易解码——使用 HTTPS 进行保护。
何时使用 Base64
适当:在文本格式中嵌入二进制、数据 URI、电子邮件附件、URL 安全传输、序列化二进制数据。 不适当:隐藏密码、保护 API 密钥、混淆敏感数据、使数据"不可读"。 Base64 是格式转换,不是安全措施。
真正的加密
对于静态数据:使用带有密钥管理服务的 AES-256-GCM。对于传输中的数据:使用 TLS/HTTPS。对于密码:使用 bcrypt、scrypt 或 Argon2。 对于数字签名:使用 HMAC-SHA256 或 RSA/ECDSA。对于随机生成:使用加密安全生成器。 使用既定的安全框架。密码学很复杂。
试用工具
Base64编码/解码器