.NET 8 introduce il supporto all'algoritmo di hashing SHA-3. Le classi che permettono di sfruttare questo algoritmo sono SHA3_256, SHA3_384 e SHA3_512 e sono tutte contenute nel namespace System.Security.Cryptography. Il loro utilizzo è molto semplice in quanto basta utilizzare il metodo statico HashData passando in input i dati da cui estrarre l'hash, sotto forma di array di byte o di stream.
var hash = SHA3_256.HashData("DataTohash"u8);
Occorre tenere a mente che .NET si appoggia al sistema operativo per effettuare l'hahsing, quindi prima di usare questo algoritmo dobbiamo essere sicuri che sia supportato dal sistema operativo. Al momento della scrittura di questo script, SHA-3 è supportato su Linux con OpenSSL 1.1.1 e successivi e su Windows 11 Build 25324 e succesive. Per verificare se l'algoritmo è supportato dal sistema operativo abbiamo a disposizione la proprietà statica IsSupported.
string hash; if (SHA3_256.IsSupported) { hash = SHA3_256.HashData("DataTohash"u8); } else { hash = SHA256.HashData("DataTohash"u8); }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire progetti .NET + React in .NET Aspire
Ricevere notifiche sui test con Azure Load Testing
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Proteggere le risorse Azure con private link e private endpoints
Anonimizzare i dati sensibili nei log di Azure Front Door
La gestione della riconnessione al server di Blazor in .NET 9
Gestione CSS in Blazor con .NET 9
Recuperare le subissue e il loro stato di completamento in GitHub
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API