非对称加密和普通加密(比如 SM4)不一样,它有一对钥匙:公钥和私钥。公钥可以随便给别人,私钥自己藏好。用公钥加密的内容,只有私钥能解开;用私钥签的名,谁都能用公钥验证真伪。这样既能保护数据,又能证明身份。RSA 和 ECC 是最常见的两种非对称算法,用在 HTTPS、接口签名、支付、身份认证等很多地方。这个小工具就是帮你在本地做这些操作的。
主要功能
生成密钥对
点"生成公私钥对",工具会按你选的算法和长度,在本地生成一对新的公钥和私钥,分别填到左右两个框里。RSA 可以选 512、1024、2048、4096 位,一般用 2048 就够;ECC 会根据长度选对应的曲线。私钥可以设密码保护,不想设就留空。
四种算法可选
顶部选算法,有 RSA、DSA、DH、ECC。RSA 和 ECC 支持生成、加密、签名;DSA 和 DH 主要是签名和密钥交换,加密那块会提示不支持。
公钥加密,私钥解密
加密:把明文填进输入框,确认公钥在公钥框里,点"执行加密",密文(Base64)出现在输出框
解密:把密文填进输入框,确认私钥在私钥框里,点"执行解密",明文出现在输出框
顶部还能选填充方式:PKCS1(默认,最常用)、OAEP(更安全)、No Padding(不填充,数据长度要严格对齐)。加密和解密要选同一个填充方式,不然解不开。
私钥签名,公钥验签
签名:把原文填进输入框,私钥在私钥框,点"私钥签名",签名值(Base64)出现在输出框。RSA 用 SHA256 签名,ECC 用 ECDSA
验签:原文还在输入框里,签名值在输出框里,公钥在公钥框,点"公钥验签",提示签名是否有效
验证公私钥是不是一对
有时候手里有一对钥匙但不确定是不是配对的。点"验证公私钥对匹配",工具用私钥签一段测试数据,再用公钥验,能验通就说明配对,否则不配对。
复制和下载
公钥、私钥、输出结果旁边都有"复制"按钮,点一下内容复制走。公钥和私钥旁边还有"下载"按钮,能存成 .pem 文件,直接拿去用。
适合谁用
做接口对接的人,对方用 RSA 加密参数,用它能解开看内容、也能加回去;做支付、做签名的人,需要按约定签名或验签,用它能快速算出来对照;做开发、调试加密逻辑的人,改了参数立刻看到结果变化;学非对称加密的人,生成一对钥匙,试试加密、解密、签名、验签,直观理解 RSA 和 ECC 是怎么回事。
用起来什么感觉
界面分得很清楚:上面一排参数,中间左右两块分别放公钥/输入和私钥/输出,下面一排按钮控制各种操作。公钥加密配私钥解密,逻辑很自然。整个过程在浏览器本地完成,密钥和数据都不会上传到任何服务器,安全。按钮颜色区分得很明显——生成是蓝的,验对是青的,加密是绿的,解密是橙的,签名是紫的,验签是浅蓝的,一眼知道点哪个。手机上左右两块会变成上下排列,按钮加宽加高。按钮大、字清楚。不需要安装,打开网页就能使,用完关掉就行。