openssl 명령 genrsa는 RSA 키를 생성합니다. crypto/rsa 패키지를 사용하여 Go에서 동일한 기능을 달성할 수 있습니다. 이 글에서는 Go에서 RSA 키 쌍을 생성하고 이를 별도의 파일에 작성하는 방법에 대한 자세한 안내를 제공합니다.
import ( "crypto/rand" "crypto/rsa" "crypto/x509" "encoding/pem" "io/ioutil" )
filename := "key" bitSize := 4096 // Generate RSA keypair key, err := rsa.GenerateKey(rand.Reader, bitSize)
pub := key.Public()
// Encode private key to PKCS#1 ASN.1 PEM keyPEM := pem.EncodeToMemory( &pem.Block{ Type: "RSA PRIVATE KEY", Bytes: x509.MarshalPKCS1PrivateKey(key), }, ) // Encode public key to PKCS#1 ASN.1 PEM pubPEM := pem.EncodeToMemory( &pem.Block{ Type: "RSA PUBLIC KEY", Bytes: x509.MarshalPKCS1PublicKey(pub.(*rsa.PublicKey)), }, )
// Write private key to file if err := ioutil.WriteFile(filename+".rsa", keyPEM, 0700); err != nil { panic(err) } // Write public key to file if err := ioutil.WriteFile(filename+".rsa.pub", pubPEM, 0755); err != nil { panic(err) }
위에 설명된 단계를 따르면 Openssl genrsa 명령과 유사하게 Go에서 쉽게 RSA 키 쌍을 생성하고 별도의 파일에 쓸 수 있습니다. 이 포괄적인 가이드는 Go 애플리케이션에서 RSA 키를 사용하기 위한 견고한 기반을 제공합니다.
위 내용은 Go에서 RSA 키 쌍을 생성하고 이를 별도의 파일에 쓰는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!