Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 2344|Antwort: 3

[Quelle] Verschlüsseln Sie das Backend mit dem RSA-Algorithmus (. NET) entschlüsselt

[Link kopieren]
Veröffentlicht am 6.9.2024, 08:44:03 | | | |
Anforderungen: Das ursprüngliche Passwort des Benutzers im Projekt muss an das Backend weitergegeben werden, da das Backend eine Drittanbieter-Schnittstelle mit dem Passwort aufrufen muss. Wenn das Passwort nicht gut im Klartext übertragen wird, wird das Passwort geleakt, wenn es vom Paketerfassungstool erfasst wird. Der RSA-Algorithmus wurde schließlich übernommen, wobei das Frontend das Passwort mit dem öffentlichen Schlüssel verschlüsselte und das Backend den privaten Schlüssel zur Entschlüsselung nutzte.

Das Frontend verwendet das jsencrypt-Paket, adresse:Der Hyperlink-Login ist sichtbar.

Wenn das Backend .NET 5 oder höher ist, können Sie die eingebauten Funktionen verwenden; falls nicht, verwenden Sie bitte folgende Parameter:

Verschlüsselung und Entschlüsselung im .NET/C# RSA PEM-Format
https://www.itsvse.com/thread-10602-1-1.html

Zuerst verwenden Sie openssl, um öffentliche und private Schlüssel zu generieren, dieser Artikel wird direkt unter Linux ausgeführt (bitte laden Sie openssl auf dem Windows-System herunter und installieren), der Befehl lautet wie folgt:



Cat rsa_1024_priv.pem
-----START RSA PRIVATSCHLÜSSEL-----
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=
----- RSA-PRIVATSCHLÜSSEL BEENDEN-----
Cat rsa_1024_pub.pem
-----BEGINNE DEN ÖFFENTLICHEN SCHLÜSSEL-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDTyd/KP2JuidA0JA+7i8FCzKCd
n2Gq/ChfLpnBFcHb9vKgZb6naK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQu
Npop/FO9doiV5l/94Hcuj17f2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH
7VpuQyJRGHzWQu8HnwIDAQAB
-----ÖFFENTLICHER SCHLÜSSEL BEENDEN-----

Erstellen Sie eine neue index.html-Webseite mit folgendem Quellcode:

Touristen, wenn ihr den versteckten Inhalt dieses Beitrags sehen wollt, bitteAntwort


Erstellen Sie eine neue .NET 8-Konsolenanwendung mit folgendem Quellcode:


Öffnen Sie die index.html-Webseite mit einem Browser, testen Sie die Verschlüsselung und entschlüsseln Sie sie mit der .NET-Anwendung, wie in der folgenden Abbildung dargestellt:



Hinweis: Sowohl die Verschlüsselung als auch die Entschlüsselung sehr langer Strings werden versagen, und segmentierte Verschlüsselung und Entschlüsselung sind erforderlich. Für Einzelheiten können Sie sich auf folgende Informationen beziehen:Der Hyperlink-Login ist sichtbar.

(Ende)




Vorhergehend:Docker betrachtet die neueste spezifische (entsprechende) Version des Images
Nächster:Jenkins (7) Linux-Server baut Jenkins Version 2.462.1
 Vermieter| Veröffentlicht am 14.10.2024, 15:51:48 |
Generiere öffentliche und private Schlüssel in der Länge 2048

 Vermieter| Veröffentlicht am 14.10.2024, 17:10:13 |
Eine weitere Frontend-RSA-Verschlüsselungs- und Entschlüsselungsbibliothek, node-forge, ist eine vollständig native Implementierung des TLS-Protokolls in JavaScript, einer Reihe kryptografischer Dienstprogramme und einer Reihe von Werkzeugen zur Entwicklung von Webanwendungen, die große Netzwerkressourcen nutzen.

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

Bereits in Angular verwendet, mit npm wie folgt installiert:

Der Frontend-Code ist wie folgt:

Backend-.NET-Code:



 Vermieter| Veröffentlicht am 16.10.2024, 08:23:58 |
RSA verschlüsselt die maximale Datengröße
Der Hyperlink-Login ist sichtbar.


Im RSA-Verschlüsselungsalgorithmus hängt die maximal zu kodierende Blockgröße von der gewählten Schlüssellänge ab. Im Allgemeinen können RSA-Schlüssel 1024-Bit-, 2048-Bit- oder 4096-Bit-Länge haben.

Für einen 1024-Bit-Schlüssel beträgt die maximale Blockgröße 117 Bytes. Das bedeutet, dass bei Verwendung eines 1024-Bit-Schlüssels der maximal verschlüsselte Datenblock 117 Bytes beträgt.

Für 2048-Bit-Schlüssel beträgt die maximale Blockgröße 245 Bytes. Das bedeutet, dass bei Verwendung eines 2048-Bit-Schlüssels der maximal verschlüsselte Datenblock 245 Bytes beträgt.

Für 4096-Bit-Schlüssel beträgt die maximale Blockgröße 512 Bytes. Das bedeutet, dass bei Verwendung eines 4096-Bit-Schlüssels der maximal verschlüsselte Datenblock 512 Bytes beträgt.

Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com