Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Boleh Menyulitkan dan Menyahsulit Kekunci RSA dalam Go?

Bagaimanakah Saya Boleh Menyulitkan dan Menyahsulit Kekunci RSA dalam Go?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-05 01:42:10627semak imbas

How Can I Encrypt and Decrypt RSA Keys in Go?

Menyulitkan dan Menyahsulit Kekunci RSA

Bahasa pengaturcaraan Go menyediakan pakej crypto/rsa untuk mengendalikan kunci RSA. Walau bagaimanapun, ia mungkin tidak dapat dilihat dengan segera cara menyimpan dan memuatkan kunci ini dengan berkesan untuk kegunaan kemudian.

Mengekodkan Kekunci RSA Peribadi

Untuk menukar rsa.PrivateKey kepada []bait, pakej crypto/x509 menawarkan fungsi tertentu:

func MarshalPKCS1PrivateKey(key *rsa.PrivateKey) []byte

Fungsi ini marshals kunci persendirian ke dalam tatasusunan bait. Untuk memulihkan kunci daripada bait, gunakan:

func ParsePKCS1PrivateKey(der []byte) (key *rsa.PrivateKey, err error)

Marshaling the Key dalam Format PEM

Amalan biasa ialah mengekod kunci marshaled ke dalam fail PEM . Contoh kod berikut menunjukkan ini:

pemdata := pem.EncodeToMemory(
    &pem.Block{
        Type: "RSA PRIVATE KEY",
        Bytes: x509.MarshalPKCS1PrivateKey(key),
    },
)

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyulitkan dan Menyahsulit Kekunci RSA dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn