android rsa解密前面带乱码,C#rsa解密的解出来的结果乱码
关于C#rsa解密的问题,代码里面引用了BouncyCastle.CS文件,但是解出来的结果乱码
static void Main(string[] args)
{
var rsaHelper = new RsaHelper();
var test1 =
"i0s9lv0QuefmmXWkWxqIwJMcK1/uOjTTIpc0K2YWAwFGuMSbQ651Zfl4i7MY/Qi/vG8+J7SRyb3UWiS5CNP3M3MI2tC6l2CVAGv0godSMaeWbMqj9g17KwJr9r3EYtPvc8lRi8ec3qS8plkoPUCoz3PtsK LZ9hBlAXKD3f8qGDI=";
var key = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCxtkuwBI6novN6IKoP3AUe7vQnT +3NqYy0SJqGTf4u5sWuKj6jwpvBSf17DoBGAXPVfzQjtl3xNymn/87c7qzDzollBH1dXAdg5olwp0tAUVEWDKuCgaFGjsqnrTYxTvOqTf1J08mIQf3Tngkw1WuNBdADUiBsTlgpO9k+ffIL4wIDAQAB";
var source = rsaHelper.DecryptByPublibKey(test1, key);
Console.WriteLine("通过公钥解密后的原文是:{0}", source);
Console.ReadKey();
}
///
/// 公钥解密(key公钥解密)- 必须对应私钥加密
///
/// 加密后的数据(密文)
/// 公钥
///
public string DecryptByPublibKey(string source, string publicKey)
{
var publicInfoByte = Convert.FromBase64String(publicKey);
Asn1Object pubKeyObj = Asn1Object.FromByteArray(publicInfoByte);//这里也可以从流中读取,从本地导入
AsymmetricKeyParameter pubKey = PublicKeyFactory.CreateKey(SubjectPublicKeyInfo.GetInstance(pubKeyObj));
//开始解密
IAsymmetricBlockCipher cipher = new RsaEngine();
cipher.Init(false, pubKey);
//解密已加密的数据
byte[] encryptedData = Convert.FromBase64String(source);
encryptedData = cipher.ProcessBlock(encryptedData, 0, encryptedData.Length);
return Encoding.UTF8.GetString(encryptedData, 0, encryptedData.Length);
}
android rsa解密前面带乱码,C#rsa解密的解出来的结果乱码相关推荐
- java android rsa加密解密_Android RSA数据加密与Java服务端RSA私钥解密出错问题
1. 出错描述:服务RSA解密抛出javax.crypto.BadPaddingException: Decryption error 2.出错原因:Android系统使用的虚拟机(dalvik)跟S ...
- php rsa加密乱码_php RSA加解密
相关介绍 RSA算法属于非对称加密算法,非对称加密算法需要两个秘钥:公开密钥(publickey)和私有秘钥(privatekey).公开密钥和私有秘钥是一对, 如果公开密钥对数据进行加密,只有用对应 ...
- Android 在 NDK 层使用 OpenSSL 进行 RSA 加密
前言 需求:需要在NDK层对一个Java层的字符串进行RSA加密,然后对加密的结果进行Base64返回到Java层 方案:选择使用OpenSSL来实现. 编译libssl.a和libcrypto.a静 ...
- 叙述无保密机制的rsa签名过程_安全系列之——RSA的公钥私钥有多少人能分的清楚?RSA的签名验签与加密解密如何使用公私钥?...
在对接很多的互联网公司的开发平台时,这些互联网公司未来自身平台的安全,都会需要调用方签名确认调用方的身份是合法的,同时未来信息网络传输的安全可能还需要加密解密.比如对接支付宝.微信开放平台时,需要配置 ...
- RSA算法原理——(3)RSA加解密过程及公式论证
上期(RSA简介及基础数论知识)为大家介绍了:互质.欧拉函数.欧拉定理.模反元素 这四个数论的知识点,而这四个知识点是理解RSA加密算法的基石,忘了的同学可以快速的回顾一遍. 一.目前常见加密算法简介 ...
- java中使用openssl生成的rsa公私钥进行数据加解密_使用openssl生成RSA公钥和私钥对...
在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了. 首先需要进入openssl的交互界面 ...
- rsa实现js前台加密java后台解密
前段时间咱老大吩咐我写一个rsa前台加密到后台用java解密.(说实话这之前我还真没用过) 不过没办法啊,这是任务,于是研究了一下.圆满完成任务了,下面共享下实现思路: 准备工作:其实鄙人也没那么强啦 ...
- java 解密后为空_java RSA加密解密
该工具类中用到了BASE64,需要借助第三方类库:javabase64-1.3.1.jar注意:RSA加密明文最大长度117字节,解密要求密文最大长度为128字节,所以在加密和解密的过程中需要分块进行 ...
- RSA不对称加密,公钥加密私钥解密,私钥加密公钥解密
RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作. RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一 ...
最新文章
- 10 大受欢迎的全球顶级编程语言与薪资水平
- 【spring教程之中的一个】创建一个最简单的spring样例
- android 文件名 标题,有什么方法可以让Android的默认浏览器识别Content-Disposition:attachment下载中的非ASCII文件名?...
- win10 连接android,win10系统连接安卓手机usb没反应的解决方法
- jset编写测试vue代码_详解使用jest对vue项目进行单元测试
- WindowsPhone7开发简单豆瓣网应用程序之界面设计
- ip netns的使用及network namespace 简介
- Spring-tx-TransactionInterceptor类
- 从0开始,html5零基础入门教程,快来看看!
- matlab中与或非、等逻辑符号
- 爱你,我永远的 Elaine
- Android ICON生成及优化
- crt链接linux后不能输入退格,SecureCRT 退格键等不好用
- CDA Level1知识点总结之数据分析概述与职业操守
- 水面无人艇局部危险避障算法研究 参考文献
- 每日新闻早报简报十条和1条微语分享
- 基于ISTQB定义理解软件测试
- ffmpeg源码简析(十)libswscale中的SwsContext,sws_scale()
- Android中半圆形背景
- MySQL函数关键字(五)子查询 ANY/SOME/ALL/IN/EXISTS/USING