sha1加密算法【收藏】

public static String getSha1(String str){
        if (null == str || 0 == str.length()){
            return null;
        }
        char[] hexDigits = { ‘0‘, ‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘, ‘7‘, ‘8‘, ‘9‘,
                ‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘, ‘f‘};
        try {
            MessageDigest mdTemp = MessageDigest.getInstance("SHA1");
            mdTemp.update(str.getBytes("UTF-8"));
             
            byte[] md = mdTemp.digest();
            int j = md.length;
            char[] buf = new char[j * 2];
            int k = 0;
            for (int i = 0; i < j; i++) {
                byte byte0 = md[i];
                buf[k++] = hexDigits[byte0 >>> 4 & 0xf];
                buf[k++] = hexDigits[byte0 & 0xf];
            }
            return new String(buf);
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return null;
    }

时间: 2024-08-22 13:51:30

sha1加密算法【收藏】的相关文章

SHA-1加密算法的识别

通过SHA-1加密算法原理的介绍,会了解到SHA-1在加密的过程中,有几个固定的流程(特征),在逆向分析的过程中通过这些特征可以识别出当前使用的是SHA-1的加密算法,从而更高效的分析还原算法. 整理下SHA-1加密的几个特征: 1. 处理的数据是512位为1组,补位数据的填充方式 2. 5个初始常数 H0 = 0x67452301, H1 = 0x0xefcdab89, H2 = 0x98badcfe, H3 = 0x10325476, H4 = 0xc3d2e1f0 (4个初始常数的值为主要

如何应对SHA-1加密算法升级为SHA-256

经过权威机构证实,sha1加密算法的不安全性越来越高,sha指纹造假成本越来越低,随即微软.谷歌等IT巨头相继发布弃用sha1加密算法声明,第三方认证机构自2016年1月1日起,将全面停止签发SHA1算法的数字证书.这一切表明都表明从1995年诞生至今的SHA1算法将被SHA-256所取代. 对于SSL证书和代码签名证书用户,从颁发时间点上来说,一般2014年12月之前颁发的数字证书很有可能使颁发的签名指纹为sha1加密算法的证书,2015年1月之后,一般颁发的签名指纹为sha256加密算法的证

iOS sha1加密算法

最近在项目中使用到了网络请求签名认证的方法,于是在网上找关于OC sha1加密的方法,很快找到了一个大众使用的封装好的方法,以下代码便是 首先需要添加头文件 #import<CommonCrypto/CommonDigest.h> 然后直接使用下面的方法就可以了 //sha1加密方式 - (NSString *) sha1:(NSString *)input { const char *cstr = [input cStringUsingEncoding:NSUTF8StringEncodin

iOS 13、MacOS Catalina不再支持SHA-1加密算法

继网络大厂.微软及Mozilla之后,苹果周三宣布,最新操作系统iOS 13及macOS 10.15(Catalina)也将不再支持SHA-1加密算法.苹果网页公布最新iOS及macOS对信任凭证的要求.所有TLS服务器证书及发布的凭证认证机构(CA)都必须使用SHA-2哈希算法.预订今年秋天释出的行动和桌机操作系统将不再信任SHA-1签章的凭证,即不再支持使用SHA-1签章产生的HTTPS联机.任何没升级到SHA-2的TLS服务器,新iPhone及Mac计算机连接这些服务器时,将出现联机失败.

MD5和sha1加密算法

在很多电子商务和社区应用中,我们都要存放很多的客户的资料,其中包括了很多的隐私信息和客户不愿被别人看到的信息,当然好有客户执行各种操作的密码,此时就需要对客户的信息进行加密再存储,目前有两种比较好的加密算法:MD5和sha1. 这两种加密算法都属于散列加密技术.所谓散列加密就是无论输入的字符串是什么,有多大,加密后都将变成唯一的定长的加密串. 首先介绍一下MD5,MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Secu

MD5和sha1加密算法--散列加密技术 MD5:128bit的大整数

在很多电子商务和社区应用中,我们都要存放很多的客户的资料,其中包括了很多的隐私信息和客户不愿被别人看到的信息,当然好有客户执行各种操作的密码,此时就需要对客户的信息进行加密再存储,目前有两种比较好的加密算法:MD5和sha1. 这两种加密算法都属于散列加密技术.所谓散列加密就是无论输入的字符串是什么,有多大,加密后都将变成唯一的定长的加密串. 首先介绍一下MD5,MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Secu

iOS:Objective-c的MD5/SHA1加密算法的实现

介绍: Objective-c实现MD5和SHA1算法相对还是比较简单的,可以直接调用系统的C/C++共享库来实现调用MD5即Message Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致.是计算机广泛使用的杂凑算法之一SHA即Secure Hash Algorithm(安全散列算法) 是美国国家安全局 (NSA) 设计,美国国家标准与技术研究院 (NIST) 发布的一系列密码散列函数. 链接:http://m.111cn.net/art-53370.htm

SHA-1加密算法原理

SHA-1是一种能够根据上限为2^64位的消息计算出160比特的散列值的单向散列函数,它的分组及对数据的填充方式与MD5是一样的,512位为1组,填充数据时先填1,后面填0,一直填满448位,最后64位表示原始数据长度. 1. SHA-1: 填充 以Hello.这条长度为6字节的消息进行填充. Hello. = 48 65 6C 6C 6F 2E,写成二进制形式如下: 01001000 01100101 01101100 01101100 01101111 00101110 原始数据长度为6字节

本文实例讲述了JavaScript实现SHA-1加密算法的方法--------调用方法:hex_sha1即可

1 /* 2 3  * 4 5  * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined 6 7  * in FIPS PUB 180-1 8 9  * 10 11  * By lizq 12 13  * 14 15  * 2006-11-11 16 17  * 18 19  */ 20 21 /* 22 23  * 24 25  * Configurable variables. 26 27