예제 #1
0
func main() {
	pwd, err := pwd.PromptNewPassword(40.0)
	if err != nil {
		fmt.Println("Failed: ", err)
		return
	}

	salt := make([]byte, 32)
	if _, err := rand.Reader.Read(salt); err != nil {
		fmt.Println("Reading salt failed, you're likely doomed.")
		return
	}

	key := security.Scrypt([]byte(pwd), salt, 32)
	fmt.Printf("Key:  %x\nSalt: %x\n", key, salt)
}
예제 #2
0
파일: lock.go 프로젝트: disorganizer/brig
func generateKey(id, pwd string) []byte {
	return security.Scrypt([]byte(pwd), []byte(id), 32)
}
예제 #3
0
파일: shadow.go 프로젝트: disorganizer/brig
func hashPassword(salt []byte, password string) []byte {
	return security.Scrypt([]byte(password), salt, 32)
}