feat(Config): Verzeichnis erstellt und Params verschoben
This commit is contained in:
7
DigitalData.Core.Security/Config/AsymCryptParams.cs
Normal file
7
DigitalData.Core.Security/Config/AsymCryptParams.cs
Normal file
@@ -0,0 +1,7 @@
|
||||
namespace DigitalData.Core.Security.Config
|
||||
{
|
||||
public class AsymCryptParams : RSAFactoryParams
|
||||
{
|
||||
public IEnumerable<ReadOrCreateDirectory> ReadOrCreateDirs { get; init; } = new List<ReadOrCreateDirectory>();
|
||||
}
|
||||
}
|
||||
34
DigitalData.Core.Security/Config/RSAFactoryParams.cs
Normal file
34
DigitalData.Core.Security/Config/RSAFactoryParams.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using System.Security.Cryptography;
|
||||
|
||||
namespace DigitalData.Core.Security.Config
|
||||
{
|
||||
public class RSAFactoryParams
|
||||
{
|
||||
public string EncryptedPrivateKeyFileTag { get; init; } = "enc-private";
|
||||
|
||||
public string PrivateKeyFileTag { get; init; } = "private";
|
||||
|
||||
public string PublicKeyFileTag { get; init; } = "public";
|
||||
|
||||
public string RSAKeyNameSeparator { get; init; } = "-_-";
|
||||
|
||||
public int KeySizeInBits { get; init; } = 2048;
|
||||
|
||||
public string PbePassword { internal get; init; } = Secrets.PBE_PASSWORD;
|
||||
|
||||
public PbeEncryptionAlgorithm PbeEncryptionAlgorithm { get; init; } = PbeEncryptionAlgorithm.Aes256Cbc;
|
||||
|
||||
public HashAlgorithmName PbeHashAlgorithmName { get; init; } = HashAlgorithmName.SHA256;
|
||||
|
||||
public int PbeIterationCount { get; init; } = 100_000;
|
||||
|
||||
public string EncryptedPrivateKeyPemLabel { get; init; } = "ENCRYPTED PRIVATE KEY";
|
||||
|
||||
private readonly Lazy<PbeParameters> _lazyPbeParameters;
|
||||
|
||||
public PbeParameters PbeParameters => _lazyPbeParameters.Value;
|
||||
|
||||
public RSAFactoryParams()
|
||||
=> _lazyPbeParameters = new(() => new PbeParameters(PbeEncryptionAlgorithm, PbeHashAlgorithmName, PbeIterationCount));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user