Ich brauche die folgenden .NET-Code zu .Net-Core zu konvertieren:KeyedHashAlgorithm in .net Kern
static byte[] HmacSHA256(String data, byte[] key)
{
String algorithm = "HmacSHA256";
KeyedHashAlgorithm kha = KeyedHashAlgorithm.Create(algorithm);
kha.Key = key;
return kha.ComputeHash(Encoding.UTF8.GetBytes(data));
}
Die obige Snippet verwendet wird für Amazon AWS Keysigning und wird von here genommen.
Ich benutze System.Security.Cryptography.Primitives 4.3.0 und KeyedHashAlgorithm.Create-Methode existiert nicht. Mit Blick auf den github kann ich, dass das Verfahren gibt es jetzt erstellen sehen, aber es wird nicht unterstützt:
public static new KeyedHashAlgorithm Create(string algName)
{
throw new PlatformNotSupportedException();
}
Die Frage ist, was zu KeyedHashAlgorithm.Create meine Alternative ist (string algName) in .Net-Core?
Vielen Dank! Ich denke, das würde funktionieren, nur das Wort 'new' fehlt im Code:' new HMACSHA256 (key); ' – Ross
@Ross Right - reparierte es;) – tpeczek
Vergessen Sie nicht, es in einen using-Block zu werfen – ArcadeRenegade