using System.ComponentModel.DataAnnotations; namespace StellaOps.Cryptography.Plugin.OpenSslGost; public sealed class OpenSslGostKeyOptions { [Required] public string KeyId { get; set; } = string.Empty; [Required] public string Algorithm { get; set; } = SignatureAlgorithms.GostR3410_2012_256; [Required] public string PrivateKeyPath { get; set; } = string.Empty; /// /// Optional environment variable containing the passphrase for the private key PEM (avoids inline secrets). /// public string? PrivateKeyPassphraseEnvVar { get; set; } /// /// Optional certificate (PEM/DER/PFX) to populate JWK x5c entries. /// public string? CertificatePath { get; set; } public string? CertificatePasswordEnvVar { get; set; } public GostSignatureFormat SignatureFormat { get; set; } = GostSignatureFormat.Der; }