<h1>一、android加密的数据服务器上无法解密?</h1>

“算法/模式/填充”

  • android的rsa加密方式是--------RSA/ECB/NoPadding或者RSA/None/NoPadding
  • 标准jdk的rsa加密方式是-------- RSA/ECB/PKCS1Padding或者RSA/None/PKCS1Padding

加密时要设置标准jdk的加密方式

        /*加密方式,android的*/
public static final String mAlgorithm= "RSA/ECB/NoPadding";
public static final String mAlgorithm= "RSA/None/NoPadding";
          /*加密方式,标准jdk的*/
public static final String mAlgorithm= "RSA/ECB/PKCS1Padding";
public static final String mAlgorithm= "RSA/None/PKCS1Padding";

加解密数据 两种均可,亲测

    Cipher cp = Cipher.getInstance("RSA/ECB/PKCS1Padding");
Cipher cp = Cipher.getInstance("RSA/None/PKCS1Padding");

所以能否配置为可配置的算法模式填充?

其他的解决方案:

源码中,Base64加密使用Default模式,这导致编码后会出现“+”、“\r\n”等字符。

在HTTP传输的过程中,“+”等,可能会被忽略,这导致源签名/加密数据 和服务器实际收到的不一致,最终导致解密不出来。

建议使用Base64.URL_SAFE模式,将“+”等字符替换为"_-"。或者使用jutil包下java.util.Base64.getUrlEncoder()、getUrlDecoder替换源码中的Base64编码方案。

原文地址:https://github.com/GcsSloop/encrypt/issues/2

最新文章

  1. bzoj3048+3049+3050
  2. words
  3. Windows Server 2012部署Enterprise Solution 5.4
  4. 7z命令行参数中的路径
  5. SharePoint 2013 配置HTTPS(SSL)
  6. 操作系统开发系列—13.a.进程 ●
  7. fragment入门
  8. Jenkins 安装与配置
  9. 均值,方差: 概率质量函数PMF
  10. 另一种数据库连接字符串的编写方式(Sqlbuilder)
  11. Object-c学习之路(oc点语法)
  12. View学习(二)-View的测量(measure)过程
  13. 前端系列之CSS基础知识概述
  14. 为什么java中用枚举实现单例模式会更好
  15. springboot + redis(单机版)
  16. php解析ini,conf文件
  17. Win7开机卡在Windows Update 35%的解决办法
  18. Spring+SpringMVC+MyBatis+easyUI整合进阶篇(八)线上Mysql数据库崩溃事故的原因和处理
  19. Docker实战-为镜像添加SSH服务
  20. 三点估算和PERT技术

热门文章

  1. 7.Linux 输入子系统分析
  2. MFC 任务托盘经常消失问题
  3. ActiveMQ学习总结(6)——ActiveMQ集成Spring和Log4j实现异步日志
  4. manjaro安装virtualbox教程
  5. asp.net Code学习二(使用vs 2015 update 3)
  6. HDU 4869 Turn the pokers(思维+组合公式+高速幂)
  7. diff命令具体解释
  8. Android睡眠唤醒机制--Kernel态
  9. Spring MVC基础了解
  10. Android 网络图片Url 转 Bitmap