1 Star 0 Fork 0

WisdomClassroom / core

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
sha.go 1.54 KB
一键复制 编辑 原始数据 按行查看 历史
哔u哔u 提交于 2020-03-03 11:27 . 类型:feature
/*******************************************************************************
* Copyright 2020 huanggefan.cn
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
******************************************************************************/
package core
import (
"crypto/md5"
"crypto/sha1"
"crypto/sha256"
"crypto/sha512"
"encoding/hex"
"hash"
)
const (
_MD5 int = iota
_SHA1
_SHA256
_SHA512
)
// 32
func StringToMD5(v string) (c string) {
return stringToSha(v, _MD5)
}
// 40
func StringToSha1(v string) (c string) {
return stringToSha(v, _SHA1)
}
// 64
func StringToSha256(v string) (c string) {
return stringToSha(v, _SHA256)
}
// 128
func StringToSha512(v string) (c string) {
return stringToSha(v, _SHA512)
}
func stringToSha(v string, shaType int) (c string) {
var sum hash.Hash
switch shaType {
case _MD5:
sum = md5.New()
case _SHA1:
sum = sha1.New()
case _SHA256:
sum = sha256.New()
case _SHA512:
sum = sha512.New()
default:
sum = md5.New()
}
sum.Write([]byte(v))
c = hex.EncodeToString(sum.Sum(nil))
return c
}
1
https://gitee.com/WisdomClassroom/core.git
git@gitee.com:WisdomClassroom/core.git
WisdomClassroom
core
core
v0.7.1

搜索帮助