一、公钥加密过程

/*** RSA公钥加密** @param str       加密字符串* @param publicKey 公钥* @return 密文* @throws Exception 加密过程中的异常信息*/public static String encrypt(String str, String publicKey) throws Exception {//base64编码的公钥byte[] decoded = Base64.decodeBase64(publicKey.getBytes());RSAPublicKey pubKey = (RSAPublicKey) KeyFactory.getInstance("RSA").generatePublic(new X509EncodedKeySpec(decoded));//RSA加密Cipher cipher = Cipher.getInstance("RSA");cipher.init(Cipher.ENCRYPT_MODE, pubKey);
//        String outStr = Base64.encodeBase64String(cipher.doFinal(str.getBytes("UTF-8")));return new String(Base64.encodeBase64(cipher.doFinal(str.getBytes("UTF-8"))));
//        return outStr;}

二、私钥解密过程

 /*** RSA私钥解密** @param str        加密字符串* @param privateKey 私钥* @return 铭文* @throws Exception 解密过程中的异常信息*/public static String decrypt(String str, String privateKey) throws Exception {//64位解码加密后的字符串byte[] inputByte = Base64.decodeBase64(str.getBytes("UTF-8"));//base64编码的私钥byte[] decoded = Base64.decodeBase64(privateKey.getBytes());RSAPrivateKey priKey = (RSAPrivateKey) KeyFactory.getInstance("RSA").generatePrivate(new PKCS8EncodedKeySpec(decoded));//RSA解密Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");cipher.init(Cipher.DECRYPT_MODE, priKey);String outStr = new String(cipher.doFinal(inputByte));return outStr;}

Android RSA公钥加密和私钥解密方法相关推荐

  1. RSA公钥加密与私钥解密算法

    首先是随机生成一个密钥对(一个公钥和一个私钥) package com.zy.demo1.secretTest;import lombok.extern.slf4j.Slf4j; import org ...

  2. Java使用RSA的公钥加密,私钥解密;私钥加密,公钥解密

    Java使用RSA的公钥加密,私钥解密:私钥加密,公钥解密 import lombok.extern.slf4j.Slf4j; import org.apache.commons.codec.bina ...

  3. RSA公钥加密和私钥加密的区别

    概念: rsa加密算法是一种非对称加密,对称加密是指加密解密都是使用同一个秘钥,非对称加密是两个秘钥进行加密解密.这两个秘钥公钥和私钥是成对出现的. 公钥就是可以公开的秘钥,私钥是私密的,一般只有一个 ...

  4. 公钥加密,私钥解密;私钥签名,公钥验签

    数字签名是什么? 鲍勃有两把钥匙,一把是公钥,另一把是私钥. 鲍勃把公钥送给他的朋友们----帕蒂.道格.苏珊----每人一把. 苏珊要给鲍勃写一封保密的信.她写完后用鲍勃的公钥加密,就可以达到保密的 ...

  5. rsa php前台加密后台解密源码,使用RSA实现前端公钥加密后端私钥解密

    项目中在用户登录时需要进行用户名和密码加密,这里选用了RSA非对称加密的方式. 公钥私钥:OpenSSL的公钥私钥(Node crypto模块限制) 前端: jsencrypt库加密 后端: Node ...

  6. android RSA公钥加密

    为了个公钥加密 浪费了一天的时间 特此记录一下 // 导包 import android.util.Base64/*** @params str 要加密的字符串*/ public static Str ...

  7. 公钥加密,私钥解密;私钥签名,公钥验签。

    加密.解密:这个好理解.例如 A.B之间相互传东西,A拥有A的私钥.B的公钥:B拥有B的私钥.A的公钥:这样当A给B传信息的时候,用B的公钥加密,这样只有B才能解密,保证了信息的安全.同理,B给A传信 ...

  8. java 数字信封_GitHub - zhopen/eos-crypto-java: EOS 公钥加密,私钥解密。基于ECC+AES 实现的双向验证加解密。数字信封的 加解密。...

    /** * * sender * * EOS8g1u3ktAGHs4QsVp9aeaWNebFLtprQHwpaSjegx6iEuoTNhjXU * 5KTZYCDdcfNrmEpcf97SJBCtT ...

  9. java 数字信封_GitHub - yanjunli/eos-crypto-java: EOS 公钥加密,私钥解密。基于ECC+AES 实现的双向验证加解密。数字信封的 加解密。...

    /** * * sender * * EOS8g1u3ktAGHs4QsVp9aeaWNebFLtprQHwpaSjegx6iEuoTNhjXU * 5KTZYCDdcfNrmEpcf97SJBCtT ...

最新文章

  1. 最小二乘法多项式曲线拟合原理与实现--转
  2. 用Jackson进行Java JSON处理
  3. 手把手教你用ECharts画饼图和环形图
  4. MiniDao Framework 1.3.0 发布,J2EE持久化解决方案
  5. python通配符搜索文件_Python 如何查找特定类型文件
  6. 这台计算机似乎没有安装操作系统_【每日一练】计算机一级考试(一)
  7. Web 网页开发的一点心得
  8. Windows XP 系统中内置的AT命令
  9. Solr(一) Solr 简介及搜索原理
  10. idea注册账号_【Meta分析】Meta分析该不该注册?如何注册?什么时候注册?
  11. ASP.NET资源大全-知识分享
  12. Vue 使用 Apache Echarts 绘制地图(省市、地区)
  13. 2022年全球市场电镀金刚石线总体规模、主要生产商、主要地区、产品和应用细分研究报告
  14. 前端vs图片 3 jpg、png、gif 图片老三样系统总结
  15. 【数字电子技术 Digital Electronic Technology 2】—— 逻辑代数基础 之 逻辑函数以其描述方法解析
  16. 打开支付宝小程序、微信小程序
  17. 2021年中国不锈钢行业发展现状及重点企业对比分析[图]
  18. 如何求1^k+2^k+...+n^k
  19. Linux内核的misc框架
  20. braintree 整合国外信用卡支付(visa等)

热门文章

  1. 设计模式-责任链模式
  2. Vue在build编译时写在style中的路径问题
  3. js 获取上个月年月
  4. 在Ubuntu上安装CERTI
  5. 进程间通信笔记(2)—管道和FIFO
  6. 单晶xrd测试衍射仪法
  7. C++ Blah数集
  8. Adobe Photoshop (PS)修改图片像素教程
  9. 求矩阵各项绝对值的最大值
  10. 求一个有一千个元素的整数数组的最大子数组的和