背景: RSA キーは、安全な通信のための暗号化で広く使用されています。 RSA ベースのシステムを実装する場合、多くの場合、認証または署名の目的でファイルから既存の秘密キーをロードする必要があります。ただし、ファイルから事前に生成されたキーに基づいてキー構造を構築する方法についての包括的な手順を見つけるのは難しい場合があります。
解決策: ファイルから RSA キーを読み取るには、次のようにします。次の手順を利用できます:
オプション 1: PKCS#1 エンコードされたキー
オプション 2: PKCS#8 エンコード キー
コード例:
// PKCS#1 Encoded Key Example package main import ( "crypto/rsa" "crypto/x509" "encoding/pem" ) func main() { keyPEMString := `-----BEGIN RSA PRIVATE KEY----- ... (Your PKCS#1 key here) -----END RSA PRIVATE KEY-----` keyData, _ := pem.Decode([]byte(keyPEMString)) key, _ := x509.ParsePKCS1PrivateKey(keyData.Bytes) fmt.Println(key.N) // Access the RSA modulus } // PKCS#8 Encoded Key Example package main import ( "crypto/rsa" "crypto/x509" "encoding/pem" ) func main() { keyPEMString := `-----BEGIN PRIVATE KEY----- ... (Your PKCS#8 key here) -----END PRIVATE KEY-----` keyData, _ := pem.Decode([]byte(keyPEMString)) key, _ := x509.ParsePKCS8PrivateKey(keyData.Bytes) rsaKey := key.(*rsa.PrivateKey) fmt.Println(rsaKey.N) // Access the RSA modulus }
これらのメソッドに従うと、ファイルから RSA キーを正常に読み取ってインスタンス化し、アプリケーションで RSA ベースの操作を実行できるようになります。
以上がGo でファイルから RSA キーを読み取る方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。