import (
"crypto/rsa"
+ "crypto/rand"
"crypto/x509"
"encoding/pem"
"flag"
func main() {
flag.Parse()
- urandom, err := os.Open("/dev/urandom", os.O_RDONLY, 0)
- if err != nil {
- log.Exitf("failed to open /dev/urandom: %s", err)
- return
- }
-
- priv, err := rsa.GenerateKey(urandom, 1024)
+ priv, err := rsa.GenerateKey(rand.Reader, 1024)
if err != nil {
log.Exitf("failed to generate private key: %s", err)
return
KeyUsage: x509.KeyUsageKeyEncipherment | x509.KeyUsageDigitalSignature,
}
- derBytes, err := x509.CreateCertificate(urandom, &template, &template, &priv.PublicKey, priv)
+ derBytes, err := x509.CreateCertificate(rand.Reader, &template, &template, &priv.PublicKey, priv)
if err != nil {
log.Exitf("Failed to create certificate: %s", err)
return