Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 2344|Odpověď: 3

[Zdroj] Zašifrujte backend pomocí algoritmu RSA (. NET) dešifrováno

[Kopírovat odkaz]
Zveřejněno 6. 9. 2024 08:44:03 | | | |
Požadavky: Původní heslo uživatele v projektu musí být předáno backendu, protože backend musí s tímto heslem volat rozhraní třetí strany. Pokud heslo není dobře přenášeno v otevřeném textu, pokud ho zachytí nástroj pro zachycení paketů, heslo bude uniknuto. Nakonec byl přijat algoritmus RSA, přičemž přední část šifrovala heslo veřejným klíčem a zadní část používala soukromý klíč k jeho dešifrování.

Frontend používá balíček jsencrypt, adresa:Přihlášení k hypertextovému odkazu je viditelné.

Pokud je backend .NET 5 nebo vyšší, můžete použít vestavěné funkce, pokud ne, použijte prosím následující parametry:

.NET/C# RSA PEM formát šifrování a dešifrování
https://www.itsvse.com/thread-10602-1-1.html

Nejprve použijte openssl k generování veřejných a soukromých klíčů, tento článek se vykonává přímo na Linuxu (prosím, stáhněte a nainstalujte openssl na Windows systém), příkaz je následující:



cat rsa_1024_priv.pem
-----ZAČNĚTE SOUKROMÝ KLÍČ 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=
-----KONEC SOUKROMÉHO KLÍČE RSA-----
cat rsa_1024_pub.pem
-----ZAHAJTE VEŘEJNÝ KLÍČ-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDTyd/KP2JuidA0JA+7i8FCzKCd
n2Gq/ChfLpnBFcHb9vKgZb6naK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQu
Npop/FO9doiV5l/94Hcuj17f2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH
7VpuQyJRGHzWQu8HnwIDAQAB
-----KONEC VEŘEJNÉHO KLÍČE-----

Vytvořte novou index.html webovou stránku s následujícím zdrojovým kódem:

Turisté, pokud chcete vidět skrytý obsah tohoto příspěvku, prosímOdpověď


Vytvořte novou konzolovou aplikaci .NET 8 s následujícím zdrojovým kódem:


Otevřete index.html webovou stránku v prohlížeči, otestujte šifrování a použijte aplikaci .NET k jejímu dešifrování, jak je znázorněno na následujícím obrázku:



Poznámka: Jak šifrování, tak dešifrování velmi dlouhých řetězců selžou a je vyžadováno segmentované šifrování a dešifrování. Pro konkrétní informace můžete nahlédnout:Přihlášení k hypertextovému odkazu je viditelné.

(Konec)




Předchozí:Docker se podívá na nejnovější konkrétní (odpovídající) verzi obrázku
Další:Jenkins (7) Linux server builds Jenkins verze 2.462.1
 Pronajímatel| Zveřejněno 14. 10. 2024 15:51:48 |
Vygenerujte veřejné a soukromé klíče délky 2048

 Pronajímatel| Zveřejněno 14. 10. 2024 v 17:10:13 |
Další front-endová RSA knihovna pro šifrování a dešifrování, node-forge, je plně nativní implementace protokolu TLS v JavaScriptu, sada kryptografických nástrojů a sada nástrojů pro vývoj webových aplikací, které využívají velké množství síťových zdrojů.

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

Již použito v Angularu, nainstalováno s npm následovně:

Frontendový kód je následující:

Backendový .NET kód:



 Pronajímatel| Zveřejněno 16. 10. 2024 08:23:58 |
RSA šifruje maximální velikost dat
Přihlášení k hypertextovému odkazu je viditelné.


V šifrovacím algoritmu RSA závisí maximální velikost bloku, který má být zakódován, na zvolené délce klíče. Obecně mohou být klíče RSA dlouhé 1024, 2048 bitů nebo 4096 bitů.

Pro klíč o délce 1024 bitů je maximální velikost bloku 117 bajtů. To znamená, že při použití 1024bitového klíče je maximální blok dat, který lze zašifrovat, 117 bajtů.

Pro klíče o délce 2048 bitů je maximální velikost bloku 245 bajtů. To znamená, že při použití 2048bitového klíče je maximální blok dat, který lze zašifrovat, 245 bajtů.

Pro 4096bitové klíče je maximální velikost bloku 512 bajtů. To znamená, že při použití 4096bitového klíče je maximální blok dat, který lze zašifrovat, 512 bajtů.

Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com