golang使用单向散列函数

package main

import (
		"encoding/hex"
	"fmt"
		"io"
	"crypto/sha256"
	"crypto/sha512"
)

func sha256Str(x []byte) string {
	y:=sha256.Sum256(x)
	return hex.EncodeToString(y[:])
}

func sha256Str2(x []byte) string {
	y:=sha256.Sum256(x)
	return fmt.Sprintf("%x",y)
}

func sha256Str3(x []byte) string {
	myhash:=sha256.New()
	io.WriteString(myhash,string(x))
	y:=myhash.Sum(nil)
	return hex.EncodeToString(y)
}

func sha256Str4(x []byte) string {
	myhash:=sha256.New()
	myhash.Write(x)
	y:=myhash.Sum(nil)
	return hex.EncodeToString(y)
}

func sha224Str(x []byte) string {
	myhash:=sha256.New224()
	myhash.Write(x)
	y:=myhash.Sum(nil)
	return hex.EncodeToString(y)
}

func sha512Str(x []byte) string {
	myhash:=sha512.New()
	myhash.Write(x)
	y:=myhash.Sum(nil)
	return hex.EncodeToString(y)
}

func sha384Str(x []byte) string {
	myhash:=sha512.New384()
	myhash.Write(x)
	y:=myhash.Sum(nil)
	return hex.EncodeToString(y)
}

func main()  {
	x:=[]byte("少壮不努力,一生在朝鲜。英语学不牢,世代在青藏。")
	fmt.Println(sha256Str(x))
	fmt.Println(sha256Str2(x))
	fmt.Println(sha256Str3(x))
	fmt.Println(sha256Str4(x))
	x2:=sha224Str(x)
	fmt.Println(x2)
	fmt.Println(len(x2))
	x3:=sha384Str(x)
	fmt.Println(x3)
	fmt.Println(len(x3))
	x4:=sha512Str(x)
	fmt.Println(x4)
	fmt.Print(len(x4))
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值