summaryrefslogtreecommitdiff
path: root/LibTSforge/Crypto/CryptoUtils.cs
diff options
context:
space:
mode:
authorWitherOrNot2025-04-24 16:13:10 +0000
committerGitHub2025-04-24 16:13:10 +0000
commitf81edcb3171d1f80da1c67abdf7193d871b18378 (patch)
tree993d3ea250c9d264c61252dd388fee5e5447e218 /LibTSforge/Crypto/CryptoUtils.cs
parent8aa1f9078d786a7b20d2b92bbeefdd77a93dd828 (diff)
parent912f83c11b75c93f38b7966d7b727144eee7f23d (diff)
downloadTSforge-f81edcb3171d1f80da1c67abdf7193d871b18378.zip
Merge pull request #5 from massgravel/longhorn1.1.0
Longhorn
Diffstat (limited to 'LibTSforge/Crypto/CryptoUtils.cs')
-rw-r--r--LibTSforge/Crypto/CryptoUtils.cs13
1 files changed, 12 insertions, 1 deletions
diff --git a/LibTSforge/Crypto/CryptoUtils.cs b/LibTSforge/Crypto/CryptoUtils.cs
index 4851570..11c2413 100644
--- a/LibTSforge/Crypto/CryptoUtils.cs
+++ b/LibTSforge/Crypto/CryptoUtils.cs
@@ -106,10 +106,21 @@ namespace LibTSforge.Crypto
public static bool HMACVerify(byte[] key, byte[] data, byte[] signature)
{
- HMACSHA1 hmac = new HMACSHA1(key);
return Enumerable.SequenceEqual(signature, HMACSign(key, data));
}
+ public static byte[] SaltSHASum(byte[] salt, byte[] data)
+ {
+ SHA1 sha1 = SHA1.Create();
+ byte[] sha_data = salt.Concat(data).ToArray();
+ return sha1.ComputeHash(sha_data);
+ }
+
+ public static bool SaltSHAVerify(byte[] salt, byte[] data, byte[] checksum)
+ {
+ return Enumerable.SequenceEqual(checksum, SaltSHASum(salt, data));
+ }
+
public static byte[] SHA256Hash(byte[] data)
{
using (SHA256 sha256 = SHA256.Create())