mirror of
https://github.com/xiaoqidun/ihash.git
synced 2025-03-14 19:44:38 +08:00
Compare commits
16 Commits
Author | SHA1 | Date | |
---|---|---|---|
77e1a1c941 | |||
d2f1959972 | |||
a810c78009 | |||
810a5ece4f | |||
a7ce1f92b7 | |||
3f456588b2 | |||
23d553f47a | |||
0ac527751a | |||
43dc0d59b8 | |||
fd8fcc7930 | |||
f32f4ae2ab | |||
ee1a2b25b3 | |||
70dd9ba8e4 | |||
7dc36a0b0d | |||
2ed0f9bac2 | |||
c56c6c7e55 |
10
.drone.yml
10
.drone.yml
@ -1,20 +1,22 @@
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: default
|
||||
|
||||
node:
|
||||
region: cn
|
||||
steps:
|
||||
- name: generate
|
||||
pull: if-not-exists
|
||||
image: hkccr.ccs.tencentyun.com/xiaoqidun/build
|
||||
image: ccr.ccs.tencentyun.com/xiaoqidun/build
|
||||
commands:
|
||||
- build -f build.sh -i ihash.go -o release/ihash
|
||||
- name: build
|
||||
pull: if-not-exists
|
||||
image: xiaoqidun/goenv
|
||||
image: ccr.ccs.tencentyun.com/xiaoqidun/goenv
|
||||
commands:
|
||||
- ./build.sh
|
||||
- name: upload
|
||||
image: xiaoqidun/gocos
|
||||
pull: if-not-exists
|
||||
image: ccr.ccs.tencentyun.com/xiaoqidun/gocos
|
||||
settings:
|
||||
secret_id:
|
||||
from_secret: cos_secret_id
|
||||
|
@ -17,6 +17,7 @@ go build ihash.go
|
||||
- md5sum
|
||||
- sha1sum
|
||||
- sha256sum
|
||||
- sha384sum
|
||||
- sha512sum
|
||||
- sha3sum224
|
||||
- sha3sum256
|
||||
|
6
go.mod
6
go.mod
@ -1,7 +1,7 @@
|
||||
module github.com/xiaoqidun/ihash
|
||||
|
||||
go 1.17
|
||||
go 1.22.4
|
||||
|
||||
require golang.org/x/crypto v0.0.0-20210817164053-32db794688a5
|
||||
require golang.org/x/crypto v0.24.0
|
||||
|
||||
require golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 // indirect
|
||||
require golang.org/x/sys v0.21.0 // indirect
|
||||
|
13
go.sum
13
go.sum
@ -1,9 +1,4 @@
|
||||
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5 h1:HWj/xjIHfjYU5nVXpTM0s39J9CbLn7Cc5a7IC5rwsMQ=
|
||||
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 h1:SrN+KX8Art/Sf4HNj6Zcz06G7VEz+7w9tdXTPOZ7+l4=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI=
|
||||
golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM=
|
||||
golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws=
|
||||
golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
|
65
ihash.go
65
ihash.go
@ -19,6 +19,18 @@ import (
|
||||
"strings"
|
||||
)
|
||||
|
||||
const (
|
||||
md5sum = "md5sum"
|
||||
sha1sum = "sha1sum"
|
||||
sha256sum = "sha256sum"
|
||||
sha384sum = "sha384sum"
|
||||
sha512sum = "sha512sum"
|
||||
sha3sum224 = "sha3sum224"
|
||||
sha3sum256 = "sha3sum256"
|
||||
sha3sum384 = "sha3sum384"
|
||||
sha3sum512 = "sha3sum512"
|
||||
)
|
||||
|
||||
var (
|
||||
args []string
|
||||
author bool
|
||||
@ -26,14 +38,15 @@ var (
|
||||
)
|
||||
|
||||
var typeList = []string{
|
||||
"md5sum",
|
||||
"sha1sum",
|
||||
"sha256sum",
|
||||
"sha512sum",
|
||||
"sha3sum224",
|
||||
"sha3sum256",
|
||||
"sha3sum384",
|
||||
"sha3sum512",
|
||||
md5sum,
|
||||
sha1sum,
|
||||
sha256sum,
|
||||
sha384sum,
|
||||
sha512sum,
|
||||
sha3sum224,
|
||||
sha3sum256,
|
||||
sha3sum384,
|
||||
sha3sum512,
|
||||
}
|
||||
|
||||
func init() {
|
||||
@ -91,21 +104,23 @@ func InArray(value interface{}, array interface{}) int {
|
||||
func StrHash(hashType string, hashData []byte) string {
|
||||
var sum interface{}
|
||||
switch hashType {
|
||||
case "md5sum":
|
||||
case md5sum:
|
||||
sum = md5.Sum(hashData)
|
||||
case "sha1sum":
|
||||
case sha1sum:
|
||||
sum = sha1.Sum(hashData)
|
||||
case "sha256sum":
|
||||
case sha256sum:
|
||||
sum = sha256.Sum256(hashData)
|
||||
case "sha512sum":
|
||||
case sha384sum:
|
||||
sum = sha512.Sum384(hashData)
|
||||
case sha512sum:
|
||||
sum = sha512.Sum512(hashData)
|
||||
case "sha3sum224":
|
||||
case sha3sum224:
|
||||
sum = sha3.Sum224(hashData)
|
||||
case "sha3sum256":
|
||||
case sha3sum256:
|
||||
sum = sha3.Sum256(hashData)
|
||||
case "sha3sum384":
|
||||
case sha3sum384:
|
||||
sum = sha3.Sum384(hashData)
|
||||
case "sha3sum512":
|
||||
case sha3sum512:
|
||||
sum = sha3.Sum512(hashData)
|
||||
}
|
||||
return fmt.Sprintf("%x", sum)
|
||||
@ -127,21 +142,23 @@ func FileHash(hashType string, hashFile string) {
|
||||
readBytes := make([]byte, 8192)
|
||||
var hashHandle interface{}
|
||||
switch hashType {
|
||||
case "md5sum":
|
||||
case md5sum:
|
||||
hashHandle = md5.New()
|
||||
case "sha1sum":
|
||||
case sha1sum:
|
||||
hashHandle = sha1.New()
|
||||
case "sha256sum":
|
||||
case sha256sum:
|
||||
hashHandle = sha256.New()
|
||||
case "sha512sum":
|
||||
case sha384sum:
|
||||
hashHandle = sha512.New384()
|
||||
case sha512sum:
|
||||
hashHandle = sha512.New()
|
||||
case "sha3sum224":
|
||||
case sha3sum224:
|
||||
hashHandle = sha3.New224()
|
||||
case "sha3sum256":
|
||||
case sha3sum256:
|
||||
hashHandle = sha3.New256()
|
||||
case "sha3sum384":
|
||||
case sha3sum384:
|
||||
hashHandle = sha3.New384()
|
||||
case "sha3sum512":
|
||||
case sha3sum512:
|
||||
hashHandle = sha3.New512()
|
||||
}
|
||||
for {
|
||||
|
Reference in New Issue
Block a user