diff options
| author | bt <bt@rctt.net> | 2026-05-24 19:17:10 +0200 |
|---|---|---|
| committer | bt <bt@rctt.net> | 2026-05-24 19:17:10 +0200 |
| commit | bd2ebe456996a51ad4230ea9c69f2d7c0879cf9d (patch) | |
| tree | eb105aa9bf2fa07b0d4d9b637b8181bcd3f4914b /core/internal.go | |
| parent | 51c603afe0373f45f8d389c99cac9d3aec959b75 (diff) | |
| download | solec-bd2ebe456996a51ad4230ea9c69f2d7c0879cf9d.tar.gz solec-bd2ebe456996a51ad4230ea9c69f2d7c0879cf9d.zip | |
[daemon] Authorize using database
Diffstat (limited to 'core/internal.go')
| -rw-r--r-- | core/internal.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/core/internal.go b/core/internal.go index e00c0f2..7c80ca9 100644 --- a/core/internal.go +++ b/core/internal.go @@ -2,6 +2,7 @@ package core import ( "encoding/base64" + "log" "golang.org/x/crypto/bcrypt" ) @@ -22,3 +23,17 @@ func HashPass(pass string) (string, error) { hash, err := bcrypt.GenerateFromPassword([]byte(pass), 12) return base64.StdEncoding.EncodeToString(hash), err } + +func CheckPass(pass, hash string) bool { + hashBytes, err := base64.StdEncoding.DecodeString(hash) + if err != nil { + log.Println("cannot decode base64 string:", err) + return false + } + + if bcrypt.CompareHashAndPassword(hashBytes, []byte(pass)) != nil { + return false + } + + return true +} |
