21// The seed is set only once at the beginning of the program.
22
23func Random(array []int) {
24 rand.Seed(time.Now().UnixNano())25 for i := 0; i < len(array); i++ {
26 array[i] = rand.Intn(100)
27 }
As math/rand
uses a statistical random number generator, using a low entropy
seed (such as constants and the current system time) may allow an attacker to
predict what the following number generated is.
package main
import (
"math/rand"
"time"
)
func main() {
rand.Seed(42) // constant seeds are bad
rand.Seed(time.Now().Unix()) // time based seeds don't have sufficient entropy
}