求助,sha1加密及base64编码转换

问题描述

publicstaticstringTest(stringparam){stringresult=string.Empty;byte[]StrRes=Encoding.GetEncoding("iso-8859-1").GetBytes(param);HashAlgorithmiSHA=newSHA1CryptoServiceProvider();StrRes=iSHA.ComputeHash(StrRes);result=Convert.ToBase64String(StrRes);returnresult;}

待加密字符串:123java结果:QL0AFWMIX8NRZTKeof9cXsvb这个方法:QL0AFWMIX8NRZTKeof9cXsvbvu8=结尾差了几个字符这个要怎么处理?

解决方案

解决方案二:
这个问题是加密导致的还是base64转换的时候导致的?
解决方案三:
Microsoft安全通报(2880823)Microsoft根证书计划弃用SHA-1哈希算法发布时间:2013年11月12日版本:1.0一般信息摘要Microsoft宣布对Microsoft根证书计划进行策略更改。新策略不再允许根证书颁发机构颁发使用SHA-1哈希算法的X.509证书用于SSL目的,在2016年1月1日之后将对签名进行编码。在数字证书中使用SHA-1哈希算法可能允许攻击者欺骗内容、执行网页仿冒攻击或执行中间人攻击。建议:Microsoft建议证书颁发机构不再使用SHA-1哈希算法签署新生成的证书并开始迁移到SHA-2。Microsoft还建议客户尽早将SHA-1证书替换为SHA-2证书。有关详细信息,请参阅此通报的“建议措施”部分。
解决方案四:
您这ctrl+v真犀利。。。
解决方案五:
先导入importjava.security.MessageDigest;和importsun.misc.BASE64Encoder;然后用下面的方法就可以了,楼主的有可能是工具类补齐字符串的时候丢掉了.//密码加密,先sha1,然后base64,即base64(sha1("pass"))privateStringencodePassword(Stringpass)throwsException{StringencPass=pass;MessageDigestsha1=MessageDigest.getInstance("SHA1");byte[]sha1Passbytes=sha1.digest(encPass.getBytes());Stringbase64Sha1Passstr="";if(sha1Passbytes!=null){base64Sha1Passstr=newBASE64Encoder().encode(sha1Passbytes);}returnbase64Sha1Passstr;}

解决方案六:
http://blog.csdn.net/zhangfanfly/article/details/48971443我前一阵子做的base64sh1加密,希望帮到你
解决方案七:
首先确认下,在Java里的结果是QL0AFWMIX8NRZTKeof9cXsvb其次,对比下在2中语言中的编码方式是一致的
解决方案八:
显然你给的java的结果是错误的

时间: 2024-12-25 09:56:58

求助,sha1加密及base64编码转换的相关文章

c# sha 1 base64-C# 求先sha-1加密再base64加密方法

问题描述 C# 求先sha-1加密再base64加密方法 string a=""2010082108334600001"";string b=""2010-08-21T08:33:46Z"";string c=""123456""; string result=base64(sha-1(a+b+c)); 求sha-1和base64实现过程? 谢谢! 解决方案 实现过程都是算法定义好的,算

JavaScript实现Base64编码转换_javascript技巧

简介 Base64是一种基于64个可打印字符来表示二进制数据的表示方法.由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符.三个字节有24个比特,对应于4个Base64单元,即3个字节需要用4个可打印字符来表示.它可用来作为电子邮件的传输编码.在Base64中的可打印字符包括字母A-Z.a-z.数字0-9,这样共有62个字符,此外的两个可打印符号在不同的系统中而不同,一般为+和/. 转换原理 Base64的直接数据源是二进制序列(Binary Sequence).当然,你也可以

Base64 编码介绍、Base64编码转换原理与算法_其它综合

Base64编码,是我们程序开发中经常使用到的编码方法.它是一种基于用64个可打印字符来表示二进制数据的表示方法.它通常用作存储.传输一些二进制数据编码方法!也是MIME(多用途互联网邮件扩展,主要用作电子邮件标准)中一种可打印字符表示二进制数据的常见编码方法!它其实只是定义用可打印字符传输内容一种方法,并不会产生新的字符集!有时候,我们学习转换的思路后,我们其实也可以结合自己的实际需要,构造一些自己接口定义编码方式.好了,我们一起看看,它的转换思路吧! Base64实现转换原理 它是用64个可

急求 文件读取 base64编码转换问题

问题描述 服务器端,读取路径http://localhost/imageput/an_1328159468-39.jpg下的图片,进行编码变成类似:version="1.0"?><base64Binary>twJ3ZzQAAAPfn93/H93PVwHPK93fTsvfn53/NzWbT5n9/f3/H5m7ZsmrQ8n/K2mbV==</base64Binary>这种格式,然后传递到Sliverlight客户端使用,代码怎么写呢? 解决方案 解决方案二

JS实现的base64加密、md5加密及sha1加密详解_javascript技巧

本文实例讲述了JS实现的base64加密.md5加密及sha1加密.分享给大家供大家参考,具体如下: 1.base64加密 在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>base64加密</title> <script type="text/javascript" s

js对图片base64编码字符串进行解码并输出图像示例_javascript技巧

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu

js 显示base64编码的二进制流网页图片_javascript技巧

Data URI scheme. Data URI scheme是在RFC2397中定义的,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入.比如上面那串字符,其实是一张小图片,将这些字符复制黏贴到火狐的地址栏中并转到,就能看到它了,一张2*2的白色gif图片. 在上面的Data URI中,data表示取得数据的协定名称,image/gif是数据类型名称,base64 是数据的编码方法,逗号后面就是这个image/gif文件base64编码后的数据. 目前,Data URI sc

利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密

本文介绍了openssl的几个实用命令,利用openssl进行BASE64编码解码.md5/sha1摘要.AES/DES3加密解密. 一. 利用openssl命令进行BASE64编码解码(base64 encode/decode)      1. BASE64编码命令       对字符串'abc'进行base64编码:           # echo abc | openssl base64           YWJjCg==  (编码结果)        如果对一个文件进行base64编

利用PHP将图片转换成base64编码的实现方法_php实例

先来说一下为什么我们要对图片base64编码 base64是当前网络上最为常见的传输8Bit字节代码的编码方式其中之一.base64主要不是加密,它主要的用途是把某些二进制数转成普通字符用于网络传输.由于这些二进制字符在传输协议中属于控制字符,不能直接传送,所以需要转换一下.虽然图片可能直接传输,但是我们也可以将它变成字符串直接放在源码里,而不需要浏览器在读取到源码后再从服务器上下载. 如何使用PHP对图片进行base64解码输出 <?php $img = 'test.jpg'; $base64