Security library for Go, contains multihash-like library or encryption.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
gocrypto
gohash
LICENSE
README.md

README.md

gosecurity Go Report Card License

Library that contains security-related stuff.

gocrypto

Encrypt and decrypt stuff using authenticated state-of-the-art crypto.

usage

func GenerateKey() ([]byte, error)
func Encrypt(input []byte, key []byte) ([]byte, error)
func Decrypt(input []byte, key []byte) ([]byte, error)

format

<nonce(24b)><ciphertext>

gohash

Formats your password hashes in a standard (multihash-like) format so it keeps on working whenever you change algo. Defaults to Argon2id.

usage

func GetHash(input string) (string, error)
func VerifyHash(hash string, input string) (bool, error)
func NeedsRehash(hash string) (bool, error)

format

$argon2$i:4:65536$IO+amcBFUXUETmI=$GpiSk2q1+y2DyfRVsg13BmIGE/oM0GLcM0SOs0s/H/s=

$<algo>$<parameters>$salt$key$

Where parameters contains information for the specific hashing algorhitm, such as size/modus/memory.