I'm attempting to generate a HMAC-SHA1 in my .Net Core application using the answer found to this question:
However, I am getting an error of byte[] does not contain a defintion for Concat
. I've tried searching around on here and I haven't seem to come across an answer.
This error occurs at the line var key2 = key1.Concat(oauth_consumer_secret).ToArray();
using (var sha1 = SHA1.Create())
{
var encodedStringAsByte = Encoding.UTF8.GetBytes(encodedString);
var key1 = sha1.ComputeHash(encodedStringAsByte);
var key2 = key1.Concat(oauth_consumer_secret).ToArray();
var key3 = sha1.ComputeHash(key2);
string signature = Convert.ToBase64String(key3);
}
Any insight and knowledge is appreciated, thank you.
oauth_consumer_secret
needs to be a byte[]
and you appear to be trying to pass a string
in. You should do this instead:
//snip
var encodedSecret = Encoding.UTF8.GetBytes(oauth_consumer_secret);
var key2 = key1.Concat(encodedSecret).ToArray();
//snip