RSA Android加密的数据服务器上无法解密?
<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
RSA Android加密的数据服务器上无法解密?的更多相关文章
- 【转】Android 服务器之SFTP服务器上传下载功能
原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...
- 【转】Android 服务器之SFTP服务器上传下载功能 -- 不错
原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...
- android中返回数据给上一个活动,可以用来回显数据
(一)who简介:没错,就是startActivityForResult()方法,这个方法用来在活动被销毁的时候返回数据给上一个方法.参数说明: startActivityForResult(inte ...
- Android开发之下载服务器上的一张图片到本地java代码实现HttpURLConnection
package com.david.HttpURLConnectionDemo; import java.io.FileOutputStream; import java.io.IOException ...
- 使用 RSA 非对称加密保证数据不被篡改 java 例子代码
原理: 对原始数据 生成有序的json 字符串,然后取 摘要,然后 对摘要 进项 分对称加密.( 不对原数据加密是应为 原数据太大,加解密速度太慢,非对称加密都不 挺慢的.在摘要函数具有雪崩效应 ,原 ...
- Java中使用RSA算法加密
Java中使用RSA算法加密 概述 RSA加密算法是一种非对称加密算法 RSA加密的方式 使用公钥加密的数据,利用私钥进行解密 使用私钥加密的数据,利用公钥进行解密 RSA是一对密钥.分别是公钥和私钥 ...
- python实现RSA加密和签名以及分段加解密的方案
1.前言 很多朋友在工作中,会遇到一些接口使用RSA加密和签名来处理的请求参数,那么遇到这个问题的时候,第一时间当然是找开发要加解密的方法,但是开发给加解密代码,大多数情况都是java,c++,js等 ...
- Android转换集合数据(ArrayList)为Json格式并上传服务器
使用Gson上传集合数据到服务器,1.最外层用 ArrayMap<String, Object> 封装:2.通过 mRequestParam.put("cmdLineIds&q ...
- 我的Android进阶之旅------>Android采用AES+RSA的加密机制对http请求进行加密
前言 未加密的抓包截图 加密之后的抓包截图 基本需求及概念 AES算法 AES基本原理及算法流程 AES算法流程 RSA算法 RSA算法基本原理及流程 RSA算法实现流程 AES与RSA相结合数据加密 ...
随机推荐
- django 简单会议室预约(5)
再来看看views.py的后半部分,对数据库的增删改查 #获取学院列表 def get_acad_list(): room_list = ConfeRoom.objects.all() #对数据库的操 ...
- secureCRT The remote system refused the connection问题解决
问题: Ubuntu系统必须开启ssh服务后,XP或者其它的主机才干够远程登陆到Ubuntu系统. 1,安装软件包,运行sudo apt-get install openssh-server Ubun ...
- uiautomator_python使用汇总
1.判断按钮状态 if d(resourceId="id",enabled=False): #判断当前按钮是否为未激活状态,为True则为激活状态2.获取toast提示语 d.to ...
- 看<Asp.net夜话>随笔(2013-10-13)
1.Asp.net内置对象 1.1Request对象 封装了客户端请求信息 1.2Response对象 代表了服务器响应对象,可以向客户端返回数据 1.3Server对象 是用于获取服务器的相关信息的 ...
- 本文介绍C# BitmapData
本文介绍C# BitmapData,对于C# BitmapData,虽然BitmapData.Width还是等于Bitmap.Width,但大概是出于显示性能的考虑. 最近要转开发平台,正研究C# ...
- 【Codeforces Round #447 (Div. 2) A】QAQ
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] C语言程序练习题 [代码] #include <bits/stdc++.h> using namespace std; ...
- 【CS Round #46 (Div. 1.5) E】Ultimate Orbs
[链接]链接 [题意] n个人从左到右站在一条直线上.每个人都有一个能力值g[i],然后每个人可以将相邻的一个人打败. 然后它的能力值能够增加相应的能力值(就是打败了的那个人的能力值). A能够打败B ...
- MYSQL添加远程用户或允许远程访问三种方法
添加远程用户admin密码为password GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY \'password\' WIT ...
- Android开发之搜芽项目的图片载入问题(使用Volley进行网络图片载入)
搜芽的移动开发这几天进度相对来说很的快. 可是美中不足的就是网络图片的载入问题. 我有两套方案: 1)沿用迅雷动漫的图片载入.迅雷动漫也是用的一个开源的库.可是不知道是我使用出了问题还是真的是它的问题 ...
- Android RxJava基本流程和lift源码分析
基本结构 我们先来看一段最基本的代码,分析这段代码在RxJava中是如何实现的. Observable.OnSubscribe<String> onSubscriber1 = new Ob ...