summaryrefslogtreecommitdiff
path: root/pkg/model
diff options
context:
space:
mode:
authorJulien Dessaux2024-11-17 00:05:22 +0100
committerJulien Dessaux2024-11-17 00:05:22 +0100
commit206182fcb9c4ab2b49e8e44c6a2711a988e3f968 (patch)
tree5cfc55047d833400028fb69a7f069f5cedecaacd /pkg/model
parentfix(tfstated): hash passwords instead of relying on the database encryption key (diff)
downloadtfstated-206182fcb9c4ab2b49e8e44c6a2711a988e3f968.tar.gz
tfstated-206182fcb9c4ab2b49e8e44c6a2711a988e3f968.tar.bz2
tfstated-206182fcb9c4ab2b49e8e44c6a2711a988e3f968.zip
chore(tfstated): refactored helpers to their own package
Diffstat (limited to 'pkg/model')
-rw-r--r--pkg/model/account.go19
1 files changed, 2 insertions, 17 deletions
diff --git a/pkg/model/account.go b/pkg/model/account.go
index 4336dfa..7a69685 100644
--- a/pkg/model/account.go
+++ b/pkg/model/account.go
@@ -1,17 +1,10 @@
package model
import (
- "crypto/sha256"
"crypto/subtle"
"time"
- "git.adyxax.org/adyxax/tfstated/pkg/scrypto"
- "golang.org/x/crypto/pbkdf2"
-)
-
-const (
- PBKDF2Iterations = 600000
- SaltSize = 32
+ "git.adyxax.org/adyxax/tfstated/pkg/helpers"
)
type AccountContextKey struct{}
@@ -28,14 +21,6 @@ type Account struct {
}
func (account *Account) CheckPassword(password string) bool {
- hash := HashPassword(password, account.Salt)
+ hash := helpers.HashPassword(password, account.Salt)
return subtle.ConstantTimeCompare(hash, account.PasswordHash) == 1
}
-
-func GenerateSalt() []byte {
- return scrypto.RandomBytes(SaltSize)
-}
-
-func HashPassword(password string, salt []byte) []byte {
- return pbkdf2.Key([]byte(password), salt, PBKDF2Iterations, 32, sha256.New)
-}