xs/vendor/github.com/jameskeane/bcrypt
Russ Magee 7a4560762d Added vendor/ dir to remove dependencies on gopkg.in (down Aug 12 2022) 2022-08-12 21:30:05 -07:00
..
.gitignore Added vendor/ dir to remove dependencies on gopkg.in (down Aug 12 2022) 2022-08-12 21:30:05 -07:00
LICENSE Added vendor/ dir to remove dependencies on gopkg.in (down Aug 12 2022) 2022-08-12 21:30:05 -07:00
README Added vendor/ dir to remove dependencies on gopkg.in (down Aug 12 2022) 2022-08-12 21:30:05 -07:00
bcrypt.go Added vendor/ dir to remove dependencies on gopkg.in (down Aug 12 2022) 2022-08-12 21:30:05 -07:00
cipher.go Added vendor/ dir to remove dependencies on gopkg.in (down Aug 12 2022) 2022-08-12 21:30:05 -07:00

README

Installation:
    goinstall github.com/jameskeane/bcrypt

Example use:
  package main

  import (
        "fmt"
        "github.com/jameskeane/bcrypt"
  )

  var password     = "WyWihatdyd?frub1"
  var bad_password = "just a wild guess"

  func main() {
        // generate a random salt with default rounds of complexity
        salt, _ := bcrypt.Salt()

        // generate a random salt with 10 rounds of complexity
        salt, _ = bcrypt.Salt(10)

        // hash and verify a password with random salt
        hash, _ := bcrypt.Hash(password)
        if bcrypt.Match(password, hash) {
                fmt.Println("They match")
        }

        // hash and verify a password with a static salt
        hash, _ = bcrypt.Hash(password, salt)
        if bcrypt.Match(password, hash) {
                fmt.Println("They match")
        }

        // verify a random password fails to match the hashed password
        if !bcrypt.Match(bad_password, hash) {
                fmt.Println("They don't match")
        }
  }

Todo:
    grep 'TODO' * -r

Notes: 
    * This library is derived from jBcrypt by Damien Miller <djm@mindrot.org>
    * bcrypt_test.go is from ZooWar.com