Csharp/C Sharp by API/System.Security.Cryptography/KeyedHashAlgorithm
KeyedHashAlgorithm.ComputeHash
using System;
using System.IO;
using System.Text;
using System.Security.Cryptography;
class MainClass {
public static void Main(string[] args) {
byte[] key = Encoding.Unicode.GetBytes(args[2]);
using (KeyedHashAlgorithm hashAlg = KeyedHashAlgorithm.Create(args[1])) {
hashAlg.Key = key;
using (Stream file = new FileStream(args[0], FileMode.Open, FileAccess.Read)) {
byte[] hash = hashAlg.ruputeHash(file);
Console.WriteLine(BitConverter.ToString(hash));
}
}
}
}
KeyedHashAlgorithm.Create
using System;
using System.IO;
using System.Text;
using System.Security.Cryptography;
class MainClass {
public static void Main(string[] args) {
byte[] key = Encoding.Unicode.GetBytes(args[2]);
using (KeyedHashAlgorithm hashAlg = KeyedHashAlgorithm.Create(args[1])) {
hashAlg.Key = key;
using (Stream file = new FileStream(args[0], FileMode.Open, FileAccess.Read)) {
byte[] hash = hashAlg.ruputeHash(file);
Console.WriteLine(BitConverter.ToString(hash));
}
}
}
}