.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
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Utilizzare il nuovo modello GPT-4o con Azure OpenAI
Filtering sulle colonne in una QuickGrid di Blazor
Scrivere selettori CSS più semplici ed efficienti con :is()
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Utilizzare QuickGrid di Blazor con Entity Framework
Usare le navigation property in QuickGrid di Blazor
La gestione della riconnessione al server di Blazor in .NET 9
Configurare lo startup di applicazioni server e client con .NET Aspire
Creare una libreria CSS universale - Rotazione degli elementi
Rendere i propri workflow e le GitHub Action utilizzate più sicure