Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Membaca Kunci RSA dari Fail untuk Menandatangani JWT?
Cara Membaca Kunci RSA daripada Fail
Untuk menggunakan kunci persendirian RSA untuk menandatangani JWT, anda perlu mengekstraknya daripada fail . Artikel ini akan membimbing anda melalui proses membina struktur kunci daripada kunci pra-jana dalam fail.
Menjana Kunci RSA
Kekunci contoh yang disediakan dalam soalan dijana menggunakan arahan berikut:
openssl genrsa 2048 | openssl pkcs8 -topk8 -nocrypt
Membaca Kunci RSA daripada Fail
Untuk membaca kunci daripada fail, anda boleh menggunakan gabungan pem.Decode dan 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. }
Alternatif untuk PKCS#8 Kekunci Dikodkan
Jika anda mempunyai PKCS#8 yang dikodkan kunci, anda boleh membacanya menggunakan 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. }
Penyelesaian ini membolehkan anda mengakses kunci peribadi RSA daripada fail dan menggunakannya untuk menandatangani JWT atau melakukan operasi kriptografi lain.
Atas ialah kandungan terperinci Bagaimana untuk Membaca Kunci RSA dari Fail untuk Menandatangani JWT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!