From 4c379c2d4d7531a9e99195e624de9d2f821ae1d4 Mon Sep 17 00:00:00 2001 From: Developer 02 Date: Mon, 18 Nov 2024 17:56:21 +0100 Subject: [PATCH] =?UTF-8?q?feat(RSAExtensions)=20:=20Methoden=20hinzugef?= =?UTF-8?q?=C3=BCgt,=20um=20einen=20Verschl=C3=BCsseler=20anhand=20seines?= =?UTF-8?q?=20Ausstellers=20und=20seiner=20Zielgruppe=20aus=20einem=20W?= =?UTF-8?q?=C3=B6rterbuch=20zu=20erhalten?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DigitalData.Core.Security.Extensions.csproj | 4 ++++ DigitalData.Core.Security.Extensions/RSAExtensions.cs | 9 ++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/DigitalData.Core.Security.Extensions/DigitalData.Core.Security.Extensions.csproj b/DigitalData.Core.Security.Extensions/DigitalData.Core.Security.Extensions.csproj index a06fc69..b3d5f11 100644 --- a/DigitalData.Core.Security.Extensions/DigitalData.Core.Security.Extensions.csproj +++ b/DigitalData.Core.Security.Extensions/DigitalData.Core.Security.Extensions.csproj @@ -6,4 +6,8 @@ enable + + + + diff --git a/DigitalData.Core.Security.Extensions/RSAExtensions.cs b/DigitalData.Core.Security.Extensions/RSAExtensions.cs index 344c7f6..cd6d68a 100644 --- a/DigitalData.Core.Security.Extensions/RSAExtensions.cs +++ b/DigitalData.Core.Security.Extensions/RSAExtensions.cs @@ -1,4 +1,5 @@ -using System.Security.Cryptography; +using DigitalData.Core.Abstractions.Security; +using System.Security.Cryptography; namespace DigitalData.Core.Security.Extensions { @@ -10,5 +11,11 @@ namespace DigitalData.Core.Security.Extensions rsa.ImportFromPem(pem); return rsa; } + + public static bool TryGetEncryptor(this IDictionary pairs, string issuer, string audience, out IRSAEncryptor? encryptor) + => pairs.TryGetValue($"{issuer}:{audience}", out encryptor); + + public static IRSAEncryptor? GetEncryptor(this IDictionary pairs, string issuer, string audience) + => pairs.TryGetEncryptor(issuer: issuer, audience: audience, out var encryptor) ? encryptor : null; } } \ No newline at end of file