add readme for each package

This commit is contained in:
Aneurin Barker Snook
2024-06-21 21:54:44 +01:00
parent 6d049e7941
commit 0aed2fb5d8
2 changed files with 36 additions and 10 deletions
+34
View File
@@ -0,0 +1,34 @@
# Go Hash
Simple wrapper functions which take arbitrary string input and return string hashes in hex encoding.
The author is aware that this package is somewhat perfunctory, but likes not having to think about the `crypto` packages.
## Example
```go
package main
import (
"errors"
"fmt"
"os"
"github.com/annybs/go/hash"
)
func main() {
if len(os.Args) < 2 {
fmt.Println(errors.New("input required"))
os.Exit(1)
}
fmt.Println(hash.SHA256(os.Args[1]))
}
```
Execute `go run main.go "any test string you like"` to create SHA256 output.
## License
See [LICENSE.md](../LICENSE.md)
+2 -10
View File
@@ -9,19 +9,11 @@ import (
// SHA256 creates a hex-encoded SHA256 checksum for a string input.
func SHA256(value string) string {
sum := sha256.Sum256([]byte(value))
hash := []byte{}
for _, b := range sum {
hash = append(hash, b)
}
return hex.EncodeToString(hash)
return hex.EncodeToString(sum[0:])
}
// SHA512 creates a hex-encoded SHA512 checksum for a string input.
func SHA512(value string) string {
sum := sha512.Sum512([]byte(value))
hash := []byte{}
for _, b := range sum {
hash = append(hash, b)
}
return hex.EncodeToString(hash)
return hex.EncodeToString(sum[0:])
}