Go를 사용하여 Openssl과 동일한 방식으로 RSA 키 생성
OpenSSL 명령 openssl genrsa는 RSA 키 쌍을 생성하여 한 파일에는 개인 키가 있고 다른 파일에는 공개 키가 있습니다. Go에서 이 기능을 구현하려면 다음 단계를 따르세요.
import "crypto/rand" key, err := rsa.GenerateKey(rand.Reader, bitSize) if err != nil { panic(err) }
import "crypto/rsa" pub := key.Public()
import ( "encoding/pem" "crypto/x509" ) keyPEM := pem.EncodeToMemory( &pem.Block{ Type: "RSA PRIVATE KEY", Bytes: x509.MarshalPKCS1PrivateKey(key), }, ) pubPEM := pem.EncodeToMemory( &pem.Block{ Type: "RSA PUBLIC KEY", Bytes: x509.MarshalPKCS1PublicKey(pub.(*rsa.PublicKey)), }, )
import "io/ioutil" err := ioutil.WriteFile(filename+".rsa", keyPEM, 0700) err := ioutil.WriteFile(filename+".rsa.pub", pubPEM, 0755)
이 코드는 각각 개인 및 공개 RSA 키를 포함하는 filename.rsa 및 filename.rsa.pub라는 두 개의 파일을 생성합니다. 키는 PEM 형식이므로 쉽게 가져와서 다른 애플리케이션에서 사용할 수 있습니다.
위 내용은 OpenSSL의 `openssl genrsa` 명령과 유사하게 Go에서 RSA 키 쌍을 생성하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!