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函数 保证信息的保密性、完整性、可用性和不可否认性?
一.几个问题 在提出问题之前,先创建一个使用场景,发送方(甲方)要给接收方(乙方)发送投标书.大家知道,投标书都包括发送方的标的,这个标的是不能被竞标者知晓,更不能被竞标者修改的.在传输的投标书时,提 ...
随机推荐
- JavaScript JSON AJAX 同源策略 跨域请求
网页和Ajax和跨域的关系 1 Ajax使网页可以动态地.异步地的与服务器进行数据交互,可以让网页局部地与服务器进行数据交互 2 Ajax强调的是异步,但是会碰到跨域的问题. 3 而有很多技术可以解决 ...
- Fiddler给网站“优化”
最近访问某知名网站的速度非常慢,有时候需要2分钟还没完全打开,页面展示了一半就卡住,然后等半天才继续显示下面部分.这种情况已经有几个月了,不知道是他们服务器原因还是我所在网络的问题,但是基本上在其他网 ...
- Dapper批量添加
Public void Add() { List<PPQuery> lists = GetDataByFile(tempFilePath); private static readonl ...
- Kettle数据抽取解决方案
一. Kettle介绍 1. Kettle简介 ETL即数据抽取(Extract).转换(Transform).装载(Load)的过程.Kettle的中文翻译为水壶.Kettle以元数据驱动的方式提供 ...
- leetcode Ch2-Dynamic Programming [2014]
1. Triangle class Solution { public: int minimumTotal(vector<vector<int> > &triangle ...
- pt-deadlock-logger使用
死锁监控pt-deadlock-logger 首先我们要创建一个表用来保存死锁的信息: CREATE TABLE deadlocks ( server ) NOT NULL, ts timestamp ...
- SVN常用功能介绍(二)
说明 上一章节主要描述了SVN的简介.安装搭建,和项目管理人员对SVN的常用操作. 这章主要讲解,SVN对应角色组员,在实际运用中的常用操作. 将SVN服务器项目导入到开发组员的本地电脑里 方式一: ...
- Hibernate初探之单表映射
http://www.imooc.com/video/7816 1.什么是ORM?为什么使用Hibernate? 对象关系映射:为了少写和底层数据库相关的sql语句,方便程序的维护.修改,提高跨平台性 ...
- SAP S/4HANA里如何创建Customer主数据以及执行后续处理
来自Jerry的同事Zhang Sean. 1, Launch tcode: BP and select the Organization 2, Maintain the information fo ...
- MATLAB入门学习(四)
今天我们开始学编程啦~ 点击左上角的这个进入编程界面 这是新建新的.m文件,也就是matlab命令文件, 一般命令文件不带输入和输出的参数,只是一些命令的组合,带有输入输出参数的文件是函数文件~ 下面 ...