使用 Web Crypto API 在浏览器中生成 RSA-2048 或 RSA-4096 密钥对。密钥以标准 PEM 格式导出,可直接用于 OpenSSL、SSH 以及任何语言的加密库。
采用 RSA-OAEP 配合 SHA-256——现代且安全的 RSA 加密方案。OAEP 在加密前加入随机填充,即使明文和密钥相同,每次的密文也各不相同。
粘贴任意 PEM 编码的 RSA 公钥或私钥(PKCS#8 / SubjectPublicKeyInfo 格式),即可使用现有密钥进行加密或解密。兼容 OpenSSL、Node.js、Python 和 Java 生成的密钥。
密钥、明文和密文绝不会离开你的浏览器。密钥生成、加密或解密过程中不会与服务器通信。可安全地使用真实密钥进行测试。
RSA 是一种使用公钥/私钥对的非对称加密算法。用公钥加密的数据只能用对应的私钥解密。RSA 广泛用于安全密钥交换、数字签名,以及加密少量敏感数据(如对称密钥)。
RSA-OAEP(最优非对称加密填充)是一种在加密前加入随机填充的填充方案,使其达到语义安全。OAEP 是现代标准,推荐用它替代较旧、易受某些攻击的 PKCS#1 v1.5 填充。
RSA-2048 使用 2048 位密钥,目前对大多数应用被认为是安全的。RSA-4096 使用 4096 位密钥,提供更高安全性,但代价是密钥生成更慢、运算更慢。长期数据保护推荐使用 RSA-4096。
使用 RSA-OAEP-SHA256 时,最大明文大小为密钥字节数减去 66。RSA-2048 为 190 字节,RSA-4096 为 446 字节。对于更大的数据,请使用混合加密:用 AES 加密数据,只用 RSA 加密 AES 密钥。