feat: implement machine key provider
- implement logic for hashing machine key - extracted interfaces
This commit is contained in:
+13
-1
@@ -1,5 +1,17 @@
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
|
||||
namespace StevanFreeborn.Extensions.Configuration.Secure.Cryptography;
|
||||
|
||||
internal sealed class MachineIdKeyProvider
|
||||
internal sealed class MachineIdKeyProvider(IMachineIdKeyGenerator generator) : IEncryptionKeyProvider
|
||||
{
|
||||
private readonly IMachineIdKeyGenerator _generator = generator;
|
||||
|
||||
public byte[] GetKey()
|
||||
{
|
||||
var machineId = _generator.GetId();
|
||||
var @bytes = Encoding.UTF8.GetBytes(machineId);
|
||||
using var sha256 = SHA256.Create();
|
||||
return sha256.ComputeHash(@bytes);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user