crypto

package
v0.6.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 18, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GenerateID

func GenerateID() (string, error)

GenerateID generates a unique ID

func GenerateSessionToken

func GenerateSessionToken() (string, error)

GenerateSessionToken generates a session token

func GenerateVerificationToken

func GenerateVerificationToken() (string, error)

GenerateVerificationToken generates a verification token

Types

type Argon2Hasher

type Argon2Hasher struct {
	// contains filtered or unexported fields
}

Argon2Hasher implements PasswordHasher using Argon2id

func NewArgon2Hasher

func NewArgon2Hasher() *Argon2Hasher

NewArgon2Hasher creates a new Argon2 password hasher with recommended parameters

func (*Argon2Hasher) Hash

func (h *Argon2Hasher) Hash(password string) (string, error)

Hash hashes a password using Argon2id

func (*Argon2Hasher) Verify

func (h *Argon2Hasher) Verify(password, encodedHash string) (bool, error)

Verify verifies a password against a hash

type DefaultTokenGenerator

type DefaultTokenGenerator struct{}

DefaultTokenGenerator implements TokenGenerator

func NewTokenGenerator

func NewTokenGenerator() *DefaultTokenGenerator

NewTokenGenerator creates a new token generator

func (*DefaultTokenGenerator) Generate

func (g *DefaultTokenGenerator) Generate(length int) (string, error)

Generate generates a URL-safe base64 encoded token

func (*DefaultTokenGenerator) GenerateHex

func (g *DefaultTokenGenerator) GenerateHex(length int) (string, error)

GenerateHex generates a hex-encoded token

type PasswordHasher

type PasswordHasher interface {
	Hash(password string) (string, error)
	Verify(password, hash string) (bool, error)
}

PasswordHasher defines the interface for password hashing

type TokenGenerator

type TokenGenerator interface {
	Generate(length int) (string, error)
	GenerateHex(length int) (string, error)
}

TokenGenerator generates secure random tokens

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL