我知道如何使用符文和播种rand生成随机字符串。使用time.UnixNano()
。我的问题是,是否可以(使用stdlib)在不使用当前时间戳(安全)的情况下播种rand?
此外,我问,因为不只是依靠时间为敏感操作不安全/漏洞生成随机字符串?
你可以用任何东西播种它,只需要一个整数。时间是常用的,因为它会发生变化并且没有很多来源可以获得不均匀的优质随机种子 - 如果使用相同的种子,您将获得相同的值序列,因此通常您需要更改的内容。
它不安全吗?绝对!如果您需要安全随机数生成,则必须使用crypto/rand
:https://golang.org/pkg/crypto/rand/
crypto/rand
没有提供播种方法,因为它是使用系统的加密强随机数生成器播种的。