Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 2344|Răspunde: 3

[Sursă] Criptează backend-ul folosind algoritmul RSA (. NET) decriptat

[Copiază linkul]
Postat pe 2024-9-6 08:44:03 | | | |
Cerințe: Parola originală a utilizatorului din proiect trebuie transmisă backend-ului, deoarece backend-ul trebuie să apeleze o interfață terță cu parola. Dacă parola nu este transmisă foarte bine în text clar, dacă este detectată de instrumentul de capturare a pachetelor, parola va fi scursă. Algoritmul RSA a fost adoptat în cele din urmă, front-end-ul criptând parola folosind cheia publică, iar back-end-ul folosind cheia privată pentru a o decripta.

Frontend-ul folosește pachetul jsencrypt, adresa:Autentificarea cu hyperlink este vizibilă.

Dacă backend-ul este .NET 5 sau superior, poți folosi funcțiile încorporate; dacă nu, te rugăm să folosești următorii parametri:

Criptarea și decriptarea în format .NET/C# RSA PEM
https://www.itsvse.com/thread-10602-1-1.html

În primul rând, folosește openssl pentru a genera chei publice și private, acest articol este executat direct pe Linux (vă rugăm să descărcați și să instalați openssl pe sistemul Windows), comanda este următoarea:



Cat rsa_1024_priv.pem
-----ÎNCEPE CHEIA PRIVATĂ 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=
-----SFÂRȘITUL CHEII PRIVATE RSA-----
Cat rsa_1024_pub.pem
-----ÎNCEPE CHEIA PUBLICĂ-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDTyd/KP2JuidA0JA+7i8FCzKCd
n2Gq/ChfLpnBFcHb9vKgZb6naK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQu
Npop/FO9doiV5l/94Hcuj17f2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH
7VpuQyJRGHzWQu8HnwIDAQAB
-----SFÂRȘITUL CHEII PUBLICE-----

Creează o nouă pagină web index.html cu următorul cod sursă:

Turiști, dacă vreți să vedeți conținutul ascuns al acestei postări, vă rogRăspunde


Creează o nouă aplicație de consolă .NET 8 cu următorul cod sursă:


Deschide pagina web index.html folosind un browser, testează criptarea și folosește aplicația .NET pentru a o decripta, așa cum se arată în figura următoare:



Notă: Atât criptarea, cât și decriptarea șirurilor foarte lungi vor eșua, iar criptarea segmentată și decriptarea sunt necesare. Pentru detalii specifice, puteți consulta la:Autentificarea cu hyperlink este vizibilă.

(Sfârșit)




Precedent:Docker analizează cea mai recentă versiune specifică (corespunzătoare) a imaginii
Următor:Jenkins (7) Serverul Linux construiește Jenkins versiunea 2.462.1
 Proprietarul| Postat pe 2024-10-14 15:51:48 |
Generează chei publice și private cu lungimea 2048

 Proprietarul| Postat la 2024-10-14 17:10:13 |
O altă bibliotecă de criptare și decriptare RSA de front-end, node-forge, este o implementare complet nativă a protocolului TLS în JavaScript, un set de utilitare criptografice și un set de instrumente pentru dezvoltarea aplicațiilor web care profită de cantități mari de resurse de rețea.

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

Deja folosit în Angular, instalat cu npm după cum urmează:

Codul frontend este următorul:

Cod backend .NET:



 Proprietarul| Postat la 2024-10-16 08:23:58 |
RSA criptează dimensiunea maximă a datelor
Autentificarea cu hyperlink este vizibilă.


În algoritmul de criptare RSA, dimensiunea maximă a blocului care trebuie codificat depinde de lungimea cheii aleasă. În general, cheile RSA pot avea lungimi de 1024 biți, 2048 biți sau 4096 biți.

Pentru o cheie de 1024 biți, dimensiunea maximă a blocului este de 117 octeți. Aceasta înseamnă că, folosind o cheie de 1024 de biți, blocul maxim de date pe care îl poți cripta este de 117 octeți.

Pentru cheile de 2048 de biți, dimensiunea maximă a blocului este de 245 de octeți. Aceasta înseamnă că, folosind o cheie de 2048 de biți, blocul maxim de date pe care îl poți cripta este de 245 de octeți.

Pentru cheile de 4096 de biți, dimensiunea maximă a blocului este de 512 octeți. Aceasta înseamnă că, folosind o cheie de 4096 de biți, blocul maxim de date pe care îl poți cripta este de 512 octeți.

Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com