Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 2344|Jawab: 3

[Sumber] Mengenkripsi backend menggunakan algoritma RSA (. NET) didekripsi

[Salin tautan]
Dipaparkan pada 2024-9-6 08:44:03 | | | |
Persyaratan: Kata sandi asli pengguna dalam proyek harus diteruskan ke backend, karena backend harus memanggil antarmuka pihak ketiga dengan kata sandi. Jika kata sandi tidak dikirimkan dalam teks biasa dengan baik, jika tertangkap oleh alat penangkap paket, kata sandi akan bocor. Algoritma RSA akhirnya diadopsi, dengan front end mengenkripsi kata sandi menggunakan kunci publik dan back end menggunakan kunci pribadi untuk mendekripsinya.

Frontend menggunakan paket jsencrypt, alamat:Login hyperlink terlihat.

Jika backend adalah .NET 5 atau lebih tinggi, Anda dapat menggunakan fungsi bawaan, jika tidak, silakan gunakan parameter berikut:

Enkripsi dan dekripsi format .NET/C# RSA PEM
https://www.itsvse.com/thread-10602-1-1.html

Pertama, gunakan openssl untuk menghasilkan kunci publik dan pribadi, artikel ini dijalankan langsung di Linux (silakan unduh dan instal openssl pada sistem Windows), perintahnya adalah sebagai berikut:



kucing rsa_1024_priv.pem
-----MULAI KUNCI PRIBADI RSA-----
MIICXAIBAAKBgQDTyd/KP2JuidA0JA+7i8FCzKCdn2Gq/ChfLpnBFcHb9vKgZb6n
aK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQuNpop/FO9doiV5l/94Hcuj17f
2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH7VpuQyJRGHzWQu8HnwIDAQAB
AoGARat4Ifkd8U0Gn9BpGIIN7mKQR6nhoDTZNw6GZ903a5veDuPJhxrJVzDDAcuc
3znyxxy0qJzF9ZHkrvyBDwsv7AGyVfg6fwwLxvrsJS1MpwKLY3yqbPVk3hnaOECO
915XcbkVua+DGVjwtyX37CxPuSDaH2ut+kIQ3xci+BreSpkCQQD3FfgYELZgrHDk
JQaSiILCnFbld+NBuTm4CHPCN+XDZwzvC8sH4M9my7kznxAQosHbm+aGaOK1k4+k
zKgaiJzVAkEA223oSa7UMyMf/K/dEFmGjKBWQYP7gjLxcsxDHdwTpKHBEuZ32IT2
nuvYxsaOATqg8WABAJHWmT2Rj/joeAx8owJBANaLovLygAoNcbEIXV6bXj8xlVqG
8TO+a9narPk1pDI5psdijBb5I930g4nJUh+/02inRFHtfP2Bdbb5ZfY0LUkCQDxJ
iCamaBrcra8pSl1xm2wLqWc6seFlyby2rkIH80WqQ3fD5m2QqomjVt3WM7HWv91R
eTUE3KchqVqbEpPZKm0CQD7VMRAb1NNH+BNjuGxZB3AQSJvRXhpJ+w3ckSP6IX0L
N0OoHtvH5lvtm7hfB5nDUBYhqN3wj7wDNiK9Vrdyqow=
-----AKHIRI KUNCI PRIBADI RSA-----
kucing rsa_1024_pub.pem
-----MULAI KUNCI PUBLIK-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDTyd/KP2JuidA0JA+7i8FCzKCd
n2Gq/ChfLpnBFcHb9vKgZb6naK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQu
Npop/FO9doiV5l/94Hcuj17f2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH
7VpuQyJRGHzWQu8HnwIDAQAB
-----KUNCI PUBLIK AKHIRI-----

Buat halaman web index.html baru dengan kode sumber berikut:

Wisatawan, jika Anda ingin melihat konten tersembunyi dari posting ini, silakanJawab


Buat aplikasi konsol .NET 8 baru dengan kode sumber berikut:


Buka halaman web index.html menggunakan browser, uji enkripsi, dan gunakan aplikasi .NET untuk mendekripsinya, seperti yang ditunjukkan pada gambar berikut:



Catatan: Enkripsi dan dekripsi string yang sangat panjang akan gagal, dan enkripsi dan dekripsi tersegmentasi diperlukan. Untuk spesifiknya, Anda dapat merujuk ke:Login hyperlink terlihat.

(Akhir)




Mantan:Docker melihat versi spesifik terbaru (yang sesuai) dari gambar
Depan:Jenkins (7) Server Linux membangun Jenkins versi 2.462.1
 Tuan tanah| Dipaparkan pada 2024-10-14 15:51:48 |
Menghasilkan kunci publik dan pribadi dengan panjang 2048

 Tuan tanah| Dipaparkan pada 2024-10-14 17:10:13 |
Pustaka enkripsi dan dekripsi RSA front-end lainnya, node-forge, adalah implementasi asli sepenuhnya dari protokol TLS dalam JavaScript, seperangkat utilitas kriptografi, dan seperangkat alat untuk mengembangkan aplikasi web yang memanfaatkan sumber daya jaringan dalam jumlah besar.

https://www.npmjs.com/package/node-forge

Sudah digunakan di Angular, diinstal dengan npm sebagai berikut:

Kode frontend adalah sebagai berikut:

Kode .NET backend:



 Tuan tanah| Dipaparkan pada 2024-10-16 08:23:58 |
RSA mengenkripsi ukuran data maksimum
Login hyperlink terlihat.


Dalam algoritma enkripsi RSA, ukuran blok maksimum yang akan dikodekan tergantung pada panjang kunci yang dipilih. Secara umum, kunci RSA dapat berupa panjang 1024-bit, 2048-bit, atau 4096-bit.

Untuk kunci 1024-bit, ukuran blok maksimum adalah 117 byte. Ini berarti bahwa saat menggunakan kunci 1024-bit, blok data maksimum yang dapat Anda enkripsi adalah 117 byte.

Untuk kunci 2048-bit, ukuran blok maksimum adalah 245 byte. Artinya, saat menggunakan kunci 2048-bit, blok data maksimum yang dapat Anda enkripsi adalah 245 byte.

Untuk kunci 4096-bit, ukuran blok maksimum adalah 512 byte. Artinya, saat menggunakan kunci 4096-bit, blok data maksimum yang dapat Anda enkripsi adalah 512 byte.

Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com