4 Commits

10 changed files with 13 additions and 7 deletions
+4 -1
View File
@@ -1,7 +1,10 @@
# GoPass # GoPass
An easy to use command-line password generator that creates secure passwords (Version 1.1 adds proper cryptographic seeding of math/rand)
An easy to use command-line password generator that creates secure passwords (Version 1.1 adds proper cryptographic
seeding of math/rand)
# Usage: # Usage:
<code>./gopass [number of characters]</code><br> <code>./gopass [number of characters]</code><br>
<hr> <hr>
eg: eg:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+9 -6
View File
@@ -1,6 +1,6 @@
// GoPass // GoPass
// Author: Maximilian Patterson // Author: Maximilian Patterson
// Version: 1.1 // Version: 1.2
package main package main
import ( import (
@@ -15,13 +15,16 @@ import (
var runes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890`~!@#$%^&*()_+[]\\{}|;':,./<>?") var runes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890`~!@#$%^&*()_+[]\\{}|;':,./<>?")
func main() { func main() {
// Take OS arg (only accepts one arg) // Take OS arg (only accepts one arg) handle errors
arg := os.Args[1] args := os.Args[1:]
if len(args) != 1 {
panic("No password length specified! (ex: ./gopass 16)")
}
// Convert String arg to int // Convert String arg to int
size, err := strconv.Atoi(arg) size, err := strconv.Atoi(args[0])
if err != nil { if err != nil {
panic(err) panic("Argument supplied must be an integer! (ex: 16)")
} }
// Make empty array of runes with size of size // Make empty array of runes with size of size
@@ -31,7 +34,7 @@ func main() {
var b [8]byte var b [8]byte
_, err = cryptorand.Read(b[:]) _, err = cryptorand.Read(b[:])
if err != nil { if err != nil {
panic("Error securely seeding rand!") panic("Error securely seeding crypto/rand!")
} }
mathrand.Seed(int64(binary.LittleEndian.Uint64(b[:]))) mathrand.Seed(int64(binary.LittleEndian.Uint64(b[:])))