发布时间:2020-11-06 05:23:17
加密
最近公司将整个项目做了安全漏洞扫描,1万多个漏洞,简直崩溃,其中也包括非对称加密的问题。项目要求非对称加密使用算法RSA,大小2048,不推荐使用1024。这两天一直在纠结,如果使用2048,那加解密性能不是要下降一节。非对称加密随着密钥变长,安全性上升的同时性能也会有所下降。所以赶紧动起手来,测试以下性能jiu'j究竟怎么样?
1024位加解密耗时:
1024位加解密耗时
2048位加解密耗时:
2048位加解密耗时
总结:1024位加解密耗时差不都,2048位加解密耗时相差有点大,主要是在解密耗时。不过从中可以看出2048位解密所耗时间还是可以接受。当然安全,性能也要在具体的业务场景下进行取舍。
末尾附上测试源码:
@Testpublic void testRSA(){ try{ // 生成密钥对 KeyPair keyPair = RSAUtil.getKeyPair(); String privateKey = new String(Base64.encodeBase64(keyPair.getPrivate().getEncoded())); String publicKey = new String(Base64.encodeBase64(keyPair.getPublic().getEncoded())); System.out.println("私钥:" + privateKey); System.out.println("公钥:" + publicKey); // RSA加密 String data = "您好啊 RSA!"; System.out.println("加密前内容:" + data); //开始计时 long startTime = System.currentTimeMillis() ; List
欢迎分享转载 →rsa加密 RSA非对称加密2048与1024对比,性能差在哪里