aboutsummaryrefslogtreecommitdiff
path: root/hotline/user.go
diff options
context:
space:
mode:
authorJeff Halter <868228+jhalter@users.noreply.github.com>2022-05-28 11:35:50 -0700
committerJeff Halter <868228+jhalter@users.noreply.github.com>2022-05-28 11:35:50 -0700
commitaebc4d3647b9823ae8cbb57b21b1af83bfd011fb (patch)
tree6fa8871ec45654b68e6b018d6d06969d21b7278f /hotline/user.go
parentdecc2fbf5db4a05aec93462ad35d890930bddd04 (diff)
Misc cleanup
* Removed some unnecessary user of pointers * Removed dead cruft * Reorganized code
Diffstat (limited to 'hotline/user.go')
-rw-r--r--hotline/user.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/hotline/user.go b/hotline/user.go
index 5d09b2d..00fe98c 100644
--- a/hotline/user.go
+++ b/hotline/user.go
@@ -2,6 +2,8 @@ package hotline
import (
"encoding/binary"
+ "golang.org/x/crypto/bcrypt"
+ "log"
)
// User flags are stored as a 2 byte bitmap with the following values:
@@ -68,3 +70,18 @@ func negateString(clearText []byte) []byte {
}
return obfuText
}
+
+func hashAndSalt(pwd []byte) string {
+ // Use GenerateFromPassword to hash & salt pwd.
+ // MinCost is just an integer constant provided by the bcrypt
+ // package along with DefaultCost & MaxCost.
+ // The cost can be any value you want provided it isn't lower
+ // than the MinCost (4)
+ hash, err := bcrypt.GenerateFromPassword(pwd, bcrypt.MinCost)
+ if err != nil {
+ log.Println(err)
+ }
+ // GenerateFromPassword returns a byte slice so we need to
+ // convert the bytes to a string and return it
+ return string(hash)
+}