.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
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Ottimizzazione dei block template in Angular 17
Generare una User Delegation SAS in .NET per Azure Blob Storage
Eseguire query in contemporanea con EF
Creare un webhook in Azure DevOps
Utilizzare un numero per gestire la concorrenza ottimistica con SQL Server ed Entity Framework
Collegare applicazioni server e client con .NET Aspire
Utilizzare Azure Cosmos DB con i vettori
Utilizzare WhenEach per processare i risultati di una lista di task
Usare le navigation property in QuickGrid di Blazor
Path addizionali per gli asset in ASP.NET Core MVC
Utilizzare Copilot con Azure Cosmos DB