summary refs log tree commit diff stats
path: root/auth/checkpass.go
diff options
context:
space:
mode:
Diffstat (limited to 'auth/checkpass.go')
-rw-r--r--auth/checkpass.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/auth/checkpass.go b/auth/checkpass.go
new file mode 100644
index 0000000..64e3c9f
--- /dev/null
+++ b/auth/checkpass.go
@@ -0,0 +1,14 @@
+package auth
+
+import (
+	"golang.org/x/crypto/bcrypt"
+)
+
+// checkPass takes a string and hash as input and returns an error. If
+// the error is not nil then the consider the password wrong. We're
+// returning error instead of a bool so that we can print failed
+// logins to log and logging shouldn't happen here.
+func checkPass(password, hash string) error {
+	err := bcrypt.CompareHashAndPassword([]byte(hash), []byte(password))
+	return err
+}