code style

This commit is contained in:
Lightczx
2024-05-07 13:36:04 +08:00
parent 5be958ff64
commit e04542606e
11 changed files with 15 additions and 38 deletions

View File

@@ -1,25 +0,0 @@
// Copyright (c) DGP Studio. All rights reserved.
// Licensed under the MIT license.
using System.Security.Cryptography;
using System.Text;
namespace Snap.Hutao.Core;
/// <summary>
/// 支持Md5转换
/// </summary>
[HighQuality]
internal static class Convert
{
/// <summary>
/// 获取字符串的MD5计算结果
/// </summary>
/// <param name="source">源字符串</param>
/// <returns>计算的结果</returns>
public static string ToMd5HexString(string source)
{
byte[] hash = MD5.HashData(Encoding.UTF8.GetBytes(source));
return System.Convert.ToHexString(hash);
}
}

View File

@@ -4,7 +4,6 @@
using Snap.Hutao.Win32.System.Com;
using Snap.Hutao.Win32.UI.Shell;
using System.IO;
using System.Runtime.InteropServices;
using static Snap.Hutao.Win32.Macros;
using static Snap.Hutao.Win32.Ole32;
using static Snap.Hutao.Win32.Shell32;

View File

@@ -8,12 +8,17 @@ namespace Snap.Hutao.Core.IO.Hashing;
internal static class Hash
{
public static string SHA1HexString(string input)
public static unsafe string SHA1HexString(string input)
{
return HashCore(System.Convert.ToHexString, SHA1.HashData, Encoding.UTF8.GetBytes, input);
return HashCore(Convert.ToHexString, SHA1.HashData, Encoding.UTF8.GetBytes, input);
}
private static TResult HashCore<TInput, TResult>(Func<byte[], TResult> resultConverter, Func<byte[], byte[]> hashMethod, Func<TInput, byte[]> bytesConverter, TInput input)
public static unsafe string MD5HexString(string input)
{
return HashCore(Convert.ToHexString, System.Security.Cryptography.MD5.HashData, Encoding.UTF8.GetBytes, input);
}
private static unsafe TResult HashCore<TInput, TResult>(Func<byte[], TResult> resultConverter, Func<byte[], byte[]> hashMethod, Func<TInput, byte[]> bytesConverter, TInput input)
{
return resultConverter(hashMethod(bytesConverter(input)));
}

View File

@@ -34,6 +34,6 @@ internal static class MD5
public static async ValueTask<string> HashAsync(Stream stream, CancellationToken token = default)
{
byte[] bytes = await System.Security.Cryptography.MD5.HashDataAsync(stream, token).ConfigureAwait(false);
return System.Convert.ToHexString(bytes);
return Convert.ToHexString(bytes);
}
}

View File

@@ -18,6 +18,6 @@ internal static class SHA256
public static async ValueTask<string> HashAsync(Stream stream, CancellationToken token = default)
{
byte[] bytes = await System.Security.Cryptography.SHA256.HashDataAsync(stream, token).ConfigureAwait(false);
return System.Convert.ToHexString(bytes);
return Convert.ToHexString(bytes);
}
}

View File

@@ -3,6 +3,7 @@
using Microsoft.Web.WebView2.Core;
using Microsoft.Win32;
using Snap.Hutao.Core.IO.Hashing;
using Snap.Hutao.Core.Setting;
using System.IO;
using System.Security.Principal;
@@ -50,7 +51,7 @@ internal sealed class RuntimeOptions
{
string userName = Environment.UserName;
object? machineGuid = Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\", "MachineGuid", userName);
return Convert.ToMd5HexString($"{userName}{machineGuid}");
return Hash.MD5HexString($"{userName}{machineGuid}");
});
private readonly LazySlim<(string Version, bool Supported)> lazyWebViewEnvironment = new(() =>

View File

@@ -1,6 +1,8 @@
// Copyright (c) DGP Studio. All rights reserved.
// Licensed under the MIT license.
using Snap.Hutao.Core.IO.Hashing;
namespace Snap.Hutao.Web.Hoyolab.DataSigning;
internal static class DataSignAlgorithm
@@ -19,7 +21,7 @@ internal static class DataSignAlgorithm
}
#pragma warning disable CA1308
string check = Core.Convert.ToMd5HexString(dsContent).ToLowerInvariant();
string check = Hash.MD5HexString(dsContent).ToLowerInvariant();
#pragma warning restore CA1308
return $"{t},{r},{check}";

View File

@@ -1,10 +1,8 @@
// Copyright (c) DGP Studio. All rights reserved.
// Licensed under the MIT license.
using Microsoft.UI.Composition;
using Snap.Hutao.Win32.Foundation;
using Snap.Hutao.Win32.Graphics.Gdi;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace Snap.Hutao.Win32.System.WinRT.Graphics.Capture;

View File

@@ -3,7 +3,6 @@
using Snap.Hutao.Win32.Foundation;
using Snap.Hutao.Win32.Graphics.Gdi;
using System.Runtime.InteropServices;
using Windows.Graphics.Capture;
namespace Snap.Hutao.Win32.System.WinRT.Graphics.Capture;

View File

@@ -2,7 +2,6 @@
// Licensed under the MIT license.
using Snap.Hutao.Win32.Foundation;
using Snap.Hutao.Win32.System.Com;
using Snap.Hutao.Win32.UI.Shell.Common;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

View File

@@ -2,7 +2,6 @@
// Licensed under the MIT license.
using Snap.Hutao.Win32.Foundation;
using Snap.Hutao.Win32.System.Com;
using Snap.Hutao.Win32.System.Com.StructuredStorage;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;