如何從檔案中讀取 RSA 金鑰
要使用 RSA 私鑰來簽署 JWT,您需要從檔案中提取它。本文將引導您完成從文件中預先產生的密鑰建立密鑰結構的過程。
產生RSA 金鑰
中提供的範例金鑰該問題是使用以下指令產生的:
openssl genrsa 2048 | openssl pkcs8 -topk8 -nocrypt
讀取RSA 金鑰檔案
要從檔案讀取金鑰,您可以使用pem.Decode 和x509.ParsePKCS1PrivateKey 的以下組合:
package main import ( "crypto/x509" "encoding/pem" "fmt" ) func main() { // Replace `pemString` with the actual contents of your key file. pemString := `-----BEGIN RSA PRIVATE KEY----- ...` block, _ := pem.Decode([]byte(pemString)) key, _ := x509.ParsePKCS1PrivateKey(block.Bytes) fmt.Println(key.N) // This prints the key's modulus. }
PKCS#8 的替代方案編碼密鑰
如果您有PKCS# ,您可以使用x509.ParsePKCS8PrivateKey讀取它:
func main() { pemString := `-----BEGIN PRIVATE KEY----- ...` block, _ := pem.Decode([]byte(pemString)) parseResult, _ := x509.ParsePKCS8PrivateKey(block.Bytes) key := parseResult.(*rsa.PrivateKey) fmt.Println(key.N) // This prints the key's modulus. }
這些解決方案可讓您從檔案存取 RSA 私鑰,並使用它來簽署 JWT 或執行其他加密操作。
以上是如何從檔案中讀取 RSA 金鑰以進行 JWT 簽章?的詳細內容。更多資訊請關注PHP中文網其他相關文章!