go加密算法:非对称加密(二)--Hash
关于一些加密算法的应用和信息,可以在以下博客中查找到:
https://www.cnblogs.com/charlesblc/p/6130141.html
// MyHash
package main import (
"crypto/md5"
"crypto/sha512"
"encoding/hex"
"fmt"
"io"
) func SumGeniHash(src []byte) string {
newsrc := md5.Sum(src)
mysrc := hex.EncodeToString(newsrc[:])
//mysrc := fmt.Sprintf("%x", newsrc)
return mysrc
} func NewGeniHash(src []byte) string {
myHash := md5.New()
//2.添加数据m
io.WriteString(myHash, string(src))
//myHash.Write(src) res := myHash.Sum(nil) return hex.EncodeToString(res[:])
} func Sumsha512Hash(src []byte) string {
newsrc := sha512.Sum512(src)
mysrc := hex.EncodeToString(newsrc[:])
//mysrc := fmt.Sprintf("%x", newsrc)
return mysrc
} func Newsha512Hash(src []byte) string {
myHash := sha512.New()
//2.添加数据m
io.WriteString(myHash, string(src))
//myHash.Write(src) res := myHash.Sum(nil) return hex.EncodeToString(res[:])
} func main() { scr := []byte("少壮不努力,老大徒伤悲")
fmt.Println(SumGeniHash(scr))
//fmt.Println(src2)
fmt.Println(NewGeniHash(scr)) fmt.Println(Sumsha512Hash(scr))
fmt.Println(Sumsha512Hash(scr)) }
运行的结果是:
/*
6e534d701bc50487b9f7b14ac465ae93
6e534d701bc50487b9f7b14ac465ae93
b82a63eea6aaa48d5b5d0debe525a5e290caf0e1444d6f3b56ce6f89ae58987f91ad8a56a7d8fd22f17e8ad7566eeec4c532a87428488c68b5bd4ef84a409053
b82a63eea6aaa48d5b5d0debe525a5e290caf0e1444d6f3b56ce6f89ae58987f91ad8a56a7d8fd22f17e8ad7566eeec4c532a87428488c68b5bd4ef84a409053
*/
go加密算法:非对称加密(二)--Hash的更多相关文章
- 探究公钥、私钥、对称加密、非对称加密、hash加密、数字签名、数字证书、CA认证、https它们究竟是什么,它们分别解决了通信过程的哪些问题。
一.准备 1. 角色:小白.美美.小黑. 2. 剧情:小白和美美在谈恋爱:小黑对美美求而不得.心生怨念,所以从中作梗. 3. 需求:小白要与美美需通过网络进行通信,联络感情,所以必须保证通信的安全性. ...
- go加密算法:非对称加密(一)--RSA
椭圆曲线加密__http://blog.51cto.com/11821908/2057726 // MyRas.go package main import ( "crypto/rand&q ...
- go加密算法:非对称加密(三)--Elliptic
看了2星期的区块链原理与运行机制,加密这里开始变得有些生疏,花了一天时间复习了一些;看到了之前忽略的,也学会了椭圆曲线加密. //基础板:浅显易懂package main import ( " ...
- openssl 下的对称加密和非对称加密
对称加密: 在加密和解密过程中使用相同的密钥, 或是两个可以简单地相互推算的密钥的加密算法. 非对称加密: 也称为公开加密, 它需要一个密钥对, 一个是公钥, 一个是私钥, 一个负责加密, 一个负责解 ...
- 非对称加密RSA的C#实现
1.对称加密算法 对称加密是最快速.最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key). 对称加密有很多种算法,由于它效率很高,所 ...
- 加密算法之非对称加密RSA
一:非对称加密的由来 RSA公钥加密算法是1977年由Ron Rivest.Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的.RSA取名来自开发他们三者的名字.RSA是目前最有 ...
- 常见的哈希Hash算法 & MD5 & 对称非对称加密 & 海明码
参考 Link 另外,这篇文章也提到了利用Hash碰撞而产生DOS攻击的案例: http://www.cnblogs.com/charlesblc/p/5990475.html DJB的算法实现核心是 ...
- 对称加密与非对称加密,及Hash算法
一 , 概述 在现代密码学诞生以前,就已经有很多的加密方法了.例如,最古老的斯巴达加密棒,广泛应用于公元前7世纪的古希腊.16世纪意大利数学家卡尔达诺发明的栅格密码,基于单表代换的凯撒密码.猪圈密码, ...
- 如何综合运用对称加密技术、非对称加密技术(公钥密码体制)和Hash函数 保证信息的保密性、完整性、可用性和不可否认性?
一.几个问题 在提出问题之前,先创建一个使用场景,发送方(甲方)要给接收方(乙方)发送投标书.大家知道,投标书都包括发送方的标的,这个标的是不能被竞标者知晓,更不能被竞标者修改的.在传输的投标书时,提 ...
随机推荐
- Oracle基础之分析表
analyze table tablename compute statistics; analyze index indexname compute statistics; (analyze 不会重 ...
- js结构化命名的思考
var koooke ={androidShare:{ show : function() {alert(1000)}}};koooke.androidShare.show(); 以上JS是偶然缩写. ...
- laravel where筛选会判断类型吗?
laravel where筛选会判断类型吗? laravel where筛选会判断类型吗? laravel where筛选会判断类型吗? 这个说会判断不对,说不会判断也不对. 当字符串'1'和数值1是 ...
- Google Colab 免费的谷歌GPU for deep learning
Who wants to use a free GPU for deep learning?Google Colab is a free cloud service and now it suppor ...
- July 15th 2017 Week 28th Saturday
If I can't hear your heartbeat, you are too far away. 如果我听不见你的心跳,那是因为你离我太远了. Only when the two tight ...
- ERROR Review:Unsupported major.minor version 52.0
最近将AS从2.1.2升级至2.2版本后,项目编译报出了如下错误: java.lang.UnsupportedClassVersionError: com/android/build/gradle/L ...
- TB5上正常使用msfconsole
在TB上使用系统自带的msfconsole,给出以下错误 [-] Failed to connect to the database: could not connect to server: Con ...
- 使用log4j让日志写入数据库
之前做的一个项目有这么个要求,在日志管理系统里,需要将某些日志信息存储到数据库里,供用户.管理员查看分析.因此我就花了点时间搞了一下这一功能,各位请看. 摘要:我们知道log4j能提供强大的可配置的记 ...
- datetime中时间的formatter整理
datetime是个很常用的模块,这个连python初学者都应该知道,datetime中有两个函数:strftime和strptime,里面都有个参数format,可以将输出的时间格式化.例如 pri ...
- maven工程src/main/java目录无法创建问题
在项目上右键选择properties,然后点击Javabuild path,在Librarys下,编辑JRE System Library,选择 workspace default jre 即可