diff --git a/src/Speckle.Sdk/Models/Blob.cs b/src/Speckle.Sdk/Models/Blob.cs
index c357a8aa..b9626e63 100644
--- a/src/Speckle.Sdk/Models/Blob.cs
+++ b/src/Speckle.Sdk/Models/Blob.cs
@@ -49,7 +49,7 @@ public class Blob : Base
{
if ((_isHashExpired || _hash == null) && filePath != null)
{
- _hash = Utilities.HashFile(filePath);
+ _hash = HashUtility.HashFile(filePath);
}
return _hash;
diff --git a/src/Speckle.Sdk/Models/HashUtility.cs b/src/Speckle.Sdk/Models/HashUtility.cs
new file mode 100644
index 00000000..a129aa3b
--- /dev/null
+++ b/src/Speckle.Sdk/Models/HashUtility.cs
@@ -0,0 +1,26 @@
+using System.Diagnostics.CodeAnalysis;
+using System.Security.Cryptography;
+
+namespace Speckle.Sdk.Models;
+
+public static class HashUtility
+{
+ public enum HashingFunctions
+ {
+ SHA256,
+ MD5
+ }
+
+ public const int HASH_LENGTH = 32;
+
+ [SuppressMessage("Security", "CA5351:Do Not Use Broken Cryptographic Algorithms")]
+ public static string HashFile(string filePath, HashingFunctions func = HashingFunctions.SHA256)
+ {
+ using HashAlgorithm hashAlgorithm = func == HashingFunctions.MD5 ? MD5.Create() : SHA256.Create();
+
+ using var stream = File.OpenRead(filePath);
+
+ var hash = hashAlgorithm.ComputeHash(stream);
+ return BitConverter.ToString(hash, 0, HASH_LENGTH).Replace("-", "").ToLowerInvariant();
+ }
+}
diff --git a/src/Speckle.Sdk/Models/Utilities.cs b/src/Speckle.Sdk/Models/Utilities.cs
deleted file mode 100644
index 79b42380..00000000
--- a/src/Speckle.Sdk/Models/Utilities.cs
+++ /dev/null
@@ -1,61 +0,0 @@
-using System.Collections;
-using System.Diagnostics.CodeAnalysis;
-using System.Security.Cryptography;
-
-namespace Speckle.Sdk.Models;
-
-public static class Utilities
-{
- public enum HashingFunctions
- {
- SHA256,
- MD5
- }
-
- public const int HASH_LENGTH = 32;
-
- [SuppressMessage("Security", "CA5351:Do Not Use Broken Cryptographic Algorithms")]
- public static string HashFile(string filePath, HashingFunctions func = HashingFunctions.SHA256)
- {
- using HashAlgorithm hashAlgorithm = func == HashingFunctions.MD5 ? MD5.Create() : SHA256.Create();
-
- using var stream = File.OpenRead(filePath);
-
- var hash = hashAlgorithm.ComputeHash(stream);
- return BitConverter.ToString(hash, 0, HASH_LENGTH).Replace("-", "").ToLowerInvariant();
- }
-
- ///
- /// Utility function to flatten a conversion result that might have nested lists of objects.
- /// This happens, for example, in the case of multiple display value fallbacks for a given object.
- ///
- ///
- /// Assuming native objects are not inherited from IList.
- ///
- /// Object to flatten
- /// Flattened objects after to host.
- public static List