From bf5d18e73a8b416b86ee2984e993b0722fb74623 Mon Sep 17 00:00:00 2001 From: AJ ONeal Date: Tue, 18 Aug 2020 01:47:23 -0600 Subject: [PATCH] add hash subcommand --- README.md | 1 + cmd/hashcash/hashcash.go | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/README.md b/README.md index 17560b5..d8facf2 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,7 @@ Usage: hashcash new [subject *] [expires in 5m] [difficulty 10] hashcash parse hashcash solve + hashcash hash hashcash verify [subject *] ``` diff --git a/cmd/hashcash/hashcash.go b/cmd/hashcash/hashcash.go index 7a58b98..90d7eae 100644 --- a/cmd/hashcash/hashcash.go +++ b/cmd/hashcash/hashcash.go @@ -1,6 +1,8 @@ package main import ( + "crypto/sha256" + "encoding/hex" "encoding/json" "fmt" "os" @@ -15,6 +17,7 @@ func help() { fmt.Println("\thashcash new [subject *] [difficulty 10] [expires in 5m]") fmt.Println("\thashcash parse ") fmt.Println("\thashcash solve ") + fmt.Println("\thashcash hash ") fmt.Println("\thashcash verify [subject *]") } @@ -107,6 +110,17 @@ func main() { fmt.Println(h.String()) return + case "hash": + var token string + if 3 != nargs { + help() + os.Exit(1) + return + } + token = args[2] + hash := sha256.Sum256([]byte(token)) + fmt.Println(hex.EncodeToString(hash[:])) + return case "verify": var token string if nargs < 3 {