From 11ee3878eb2c321c788b9e9d836c8181ecf1ba50 Mon Sep 17 00:00:00 2001 From: mtmk Date: Tue, 10 Dec 2024 08:25:02 +0000 Subject: [PATCH] Add password support for PFX files (#694) * Add password support for PFX files * Remove callback * Add key file password --- ...slClientAuthenticationOptionsExtensions.cs | 29 ++- src/NATS.Client.Core/NatsTlsOpts.cs | 21 ++- tests/NATS.Client.Core.Tests/TlsOptsTest.cs | 15 +- .../resources/certs/ca-cert.pem | 58 +++--- .../certs/chainedclient-cert-bundle-pass.pfx | Bin 0 -> 6583 bytes .../certs/chainedclient-cert-bundle.pfx | Bin 6655 -> 6583 bytes .../resources/certs/chainedclient-cert.pem | 177 +++++++++--------- .../resources/certs/chainedclient-key.pem | 104 +++++----- .../certs/client-cert-bundle-pass.pfx | Bin 0 -> 3862 bytes .../resources/certs/client-cert-bundle.pfx | Bin 3936 -> 3862 bytes .../resources/certs/client-cert.pem | 56 +++--- .../resources/certs/client-key-pass.pem | 54 ++++++ .../resources/certs/client-key.pem | 104 +++++----- .../resources/certs/generate.sh | 6 + .../resources/certs/intermediate01-cert.pem | 60 +++--- .../certs/intermediate01-key-pass.pem | 54 ++++++ .../resources/certs/intermediate01-key.pem | 104 +++++----- .../resources/certs/intermediate02-cert.pem | 60 +++--- .../certs/intermediate02-key-pass.pem | 54 ++++++ .../resources/certs/intermediate02-key.pem | 104 +++++----- .../resources/certs/leafclient-cert.pem | 57 +++--- .../resources/certs/leafclient-key-pass.pem | 54 ++++++ .../resources/certs/leafclient-key.pem | 104 +++++----- .../resources/certs/server-cert.pem | 60 +++--- .../resources/certs/server-key.pem | 104 +++++----- 25 files changed, 846 insertions(+), 593 deletions(-) create mode 100644 tests/NATS.Client.Core.Tests/resources/certs/chainedclient-cert-bundle-pass.pfx create mode 100644 tests/NATS.Client.Core.Tests/resources/certs/client-cert-bundle-pass.pfx create mode 100644 tests/NATS.Client.Core.Tests/resources/certs/client-key-pass.pem create mode 100644 tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key-pass.pem create mode 100644 tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key-pass.pem create mode 100644 tests/NATS.Client.Core.Tests/resources/certs/leafclient-key-pass.pem diff --git a/src/NATS.Client.Core/Internal/SslClientAuthenticationOptionsExtensions.cs b/src/NATS.Client.Core/Internal/SslClientAuthenticationOptionsExtensions.cs index e5476cd55..fce04db4a 100644 --- a/src/NATS.Client.Core/Internal/SslClientAuthenticationOptionsExtensions.cs +++ b/src/NATS.Client.Core/Internal/SslClientAuthenticationOptionsExtensions.cs @@ -8,9 +8,18 @@ namespace NATS.Client.Core.Internal; internal static class SslClientAuthenticationOptionsExtensions { #if !NETSTANDARD - public static SslClientAuthenticationOptions LoadClientCertFromPem(this SslClientAuthenticationOptions options, string certPem, string keyPem, bool offline = false, SslCertificateTrust? trust = null) + public static SslClientAuthenticationOptions LoadClientCertFromPem(this SslClientAuthenticationOptions options, string certPem, string keyPem, bool offline = false, SslCertificateTrust? trust = null, string? password = null) { - var leafCert = X509Certificate2.CreateFromPem(certPem, keyPem); + X509Certificate2 leafCert; + if (!string.IsNullOrEmpty(password)) + { + leafCert = X509Certificate2.CreateFromEncryptedPem(certPem, keyPem, password); + } + else + { + leafCert = X509Certificate2.CreateFromPem(certPem, keyPem); + } + var intermediateCerts = new X509Certificate2Collection(); intermediateCerts.ImportFromPem(certPem); if (intermediateCerts.Count > 0) @@ -39,11 +48,21 @@ public static SslClientAuthenticationOptions LoadClientCertFromPem(this SslClien } #endif - public static SslClientAuthenticationOptions LoadClientCertFromPfxFile(this SslClientAuthenticationOptions options, string certBundleFile, bool offline = false, SslCertificateTrust? trust = null) + public static SslClientAuthenticationOptions LoadClientCertFromPfxFile(this SslClientAuthenticationOptions options, string certBundleFile, bool offline = false, SslCertificateTrust? trust = null, string? password = null) { - var leafCert = new X509Certificate2(certBundleFile); + X509Certificate2 leafCert; var intermediateCerts = new X509Certificate2Collection(); - intermediateCerts.Import(certBundleFile); + + if (password != null) + { + leafCert = new X509Certificate2(certBundleFile, password); + intermediateCerts.Import(certBundleFile, password, X509KeyStorageFlags.DefaultKeySet); + } + else + { + leafCert = new X509Certificate2(certBundleFile); + intermediateCerts.Import(certBundleFile); + } // Linux does not include the leaf by default, but Windows does // compare leaf to first intermediate just to be sure to catch all platform differences diff --git a/src/NATS.Client.Core/NatsTlsOpts.cs b/src/NATS.Client.Core/NatsTlsOpts.cs index 737184f56..760e6fca0 100644 --- a/src/NATS.Client.Core/NatsTlsOpts.cs +++ b/src/NATS.Client.Core/NatsTlsOpts.cs @@ -62,20 +62,30 @@ public sealed record NatsTlsOpts /// File path to PEM-encoded Private Key /// /// - /// Key should not be password protected + /// If key is password protected use . /// Must be used in conjunction with . /// public string? KeyFile { get; init; } + + /// + /// Key file password + /// + public string? KeyFilePassword { get; init; } #endif /// /// File path to PKCS#12 bundle containing X509 Client Certificate and Private Key /// /// - /// Bundle should not be password protected + /// Use to specify the password for the bundle. /// public string? CertBundleFile { get; init; } + /// + /// Password for the PKCS#12 bundle file + /// + public string? CertBundleFilePassword { get; init; } + /// /// Callback to configure /// @@ -159,14 +169,15 @@ internal async ValueTask AuthenticateAsClientOpt if (CertFile != null && KeyFile != null) { options.LoadClientCertFromPem( - await File.ReadAllTextAsync(CertFile).ConfigureAwait(false), - await File.ReadAllTextAsync(KeyFile).ConfigureAwait(false)); + certPem: await File.ReadAllTextAsync(CertFile).ConfigureAwait(false), + keyPem: await File.ReadAllTextAsync(KeyFile).ConfigureAwait(false), + password: KeyFilePassword); } #endif if (CertBundleFile != null) { - options.LoadClientCertFromPfxFile(CertBundleFile); + options.LoadClientCertFromPfxFile(CertBundleFile, password: CertBundleFilePassword); } if (InsecureSkipVerify) diff --git a/tests/NATS.Client.Core.Tests/TlsOptsTest.cs b/tests/NATS.Client.Core.Tests/TlsOptsTest.cs index 60c7666e0..8262ec8df 100644 --- a/tests/NATS.Client.Core.Tests/TlsOptsTest.cs +++ b/tests/NATS.Client.Core.Tests/TlsOptsTest.cs @@ -36,29 +36,34 @@ static async ValueTask ValidateAsync(NatsTlsOpts opts) } } - [Fact] - public async Task Load_client_cert_and_key() + [Theory] + [InlineData("client-cert-bundle.pfx", null, "client-key.pem", null)] + [InlineData("client-cert-bundle.pfx", "", "client-key.pem", "")] + [InlineData("client-cert-bundle-pass.pfx", "1234", "client-key-pass.pem", "5678")] + public async Task Load_client_cert_and_key(string pfxFile, string? pfxFilepassword, string keyFile, string? keyFilePassword) { const string clientCertFile = "resources/certs/client-cert.pem"; - const string clientCertBundleFile = "resources/certs/client-cert-bundle.pfx"; - const string clientKeyFile = "resources/certs/client-key.pem"; + var clientKeyFile = $"resources/certs/{keyFile}"; + var clientCertBundleFile = $"resources/certs/{pfxFile}"; await ValidateAsync(new NatsTlsOpts { CertFile = clientCertFile, KeyFile = clientKeyFile, + KeyFilePassword = keyFilePassword, }); await ValidateAsync(new NatsTlsOpts { CertBundleFile = clientCertBundleFile, + CertBundleFilePassword = pfxFilepassword, }); await ValidateAsync(new NatsTlsOpts { ConfigureClientAuthentication = async options => { - options.LoadClientCertFromPem(await File.ReadAllTextAsync(clientCertFile), await File.ReadAllTextAsync(clientKeyFile)); + options.LoadClientCertFromPem(await File.ReadAllTextAsync(clientCertFile), await File.ReadAllTextAsync(clientKeyFile), password: keyFilePassword); }, }); diff --git a/tests/NATS.Client.Core.Tests/resources/certs/ca-cert.pem b/tests/NATS.Client.Core.Tests/resources/certs/ca-cert.pem index 0f3a07f12..68f0f0c6f 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/ca-cert.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/ca-cert.pem @@ -1,29 +1,29 @@ ------BEGIN CERTIFICATE----- -MIIE+zCCAuOgAwIBAgIUaIS3fVNjOgYm5uFgS/kv6yuIKucwDQYJKoZIhvcNAQEL -BQAwDTELMAkGA1UEAwwCY2EwHhcNMjQwMzI3MTI1NjM3WhcNMzQwMzI1MTI1NjM3 -WjANMQswCQYDVQQDDAJjYTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB -ALV2DvN/xQMBcCpjXe2wXo5khlfbw6CzhsPnieQScDLw1onxuO0+uUN0l4YaMqC4 -gn560gct+Hb41wx2j40MU1zm6eYH0CalWuPpPDHx4f/sEVbd9LCHVem+IxrHAnyU -yp6RPQlJvsJr3m617YNIrZDANLrt0Ssk41XdvFsx6tFFTU5SgIYvWOHiIbqkNTAn -6iAdPKBKPM4jNRczocLWP+sbo8TtALMD+0blDjZ9Ue7WqUKnx6ns78oH4XQWyxD0 -Bgd6UPGCNbuSJ1BdnE31/M/x8DLOOvkczNCXRp4nCn0VBEvwu1uS77aHN6xrNtN9 -nWF/ykTMKlgw8oznSt1znD1QZU/uB2cwomnXGQZ/d4ocrSNW+gNM8JmxHTnO/FRk -UN5KWkRoHOFgzv7e4sW9p7UKzdmYAQRTHn+XgSg7/AFY7J0rQoj5ckrGgJ+MItTY -lVLNuPXPIi7x/bfXKiWDfhrXKMaP08hFB30gTCZ9vpMea7CEOJ6MhJH2yuZnKgjJ -ez65uCu7NMoFrN7y3IcDL/ZrEnaHRJLMBzvGgEoYZ6Ypf7oNJMi8uXnfhqclGpaj -SpLP+31yd2jHYkii2fAZAHzzXse+aT1OvVhShdlcNTSUFwjroMYlaTG92llX1FE4 -gn51oj13QGBK9lpfh/uLjfM6+4LDjmQbHDzhTOEQpkqhAgMBAAGjUzBRMB0GA1Ud -DgQWBBTdKnIqsIQL44dltqE1+aFtjASH2TAfBgNVHSMEGDAWgBTdKnIqsIQL44dl -tqE1+aFtjASH2TAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQAi -+NFuLAn7yjpuBvmncClbMMTuZDo1PH79PIBVESGid2gRye0vXFNqXm20VKEDsM71 -6o78bTu+zNBpXyqluqDVjSN+nkeiNytTqsKsUPPMUujtFibc7yC9j2Woj3j+akar -lc5OtDtW/Lkk7Ne9aBQGYa7l0bQuE5OuZquCRpn1HhovNV/otLuaLGJZWoiZ1fry -l0SV4JmEQi1D9T13SeJ2lu/KNHKfs9noCXzE4BjvHFcmk8kxInyfqxbBVJUOzAAl -ELVl83MRSFFX3FvYX3A1OWNY9F6w5TiuYSaGTFqMJwcWXL9KHm4F0gHxyjZCbgeI -O2HJtXq/MfCibgvXV3ghu8v/YPyMTmagAaxeWawMD/QyIJaNVeXdyoG6TnpccB58 -F2jiMgobYuN4whj6tpkVXSS6PGobJhl9EaT6hPjfmcIRpTn6j0hVZyKwDOO0cWon -XRY5XNLVpCqQCZNuvzkHc38s5KEuL+BLwPTygVg9OpC8OvbVXS+xhj26edLvwagq -+FxEatM20ytgX1+nl4XKMtcOxqS0eIwlWm0eQS6PjtCLw1GLU/A2cJA27TjjHw6C -EJkaOr5JAv0NSo7pjUW3hu/71frwq2AiCvBPAsKAsPi2pRwHhezyoUNYiaRgzrHX -4IKi1S1XOAy5OVRDZ6SI4iahfOz+/eJtBltk06V3dQ== ------END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIE+zCCAuOgAwIBAgIUIWMC5Ul+2Mlyo0La9R6WT4VRcZUwDQYJKoZIhvcNAQEL +BQAwDTELMAkGA1UEAwwCY2EwHhcNMjQxMjA5MjI0ODAyWhcNMzQxMjA3MjI0ODAy +WjANMQswCQYDVQQDDAJjYTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB +ANR/64xZwIoTnDFbv8fotCbUImuhwn3UcrTCc+kiXg8tFLnv3MuELzosJJYsYkJ6 +qZR82qBlpHlD6Tl8VSYVuaPFllXbukBL0+5shLKXePiw1OvI02NJ3IetjVnRQIsv +Z3HsHOhZb2JjQr5XOl0bGc9oXOOdZZxfdmSr/XP2CToNmWHfO7Aref/EQzDzjsQf +nJVRjov+jq6lVSUScga2FEjF3ICV+33YAnkdtMys9efPsYDhCMrEatX64wMk6wX6 +SWDFYdulNwCJ18ua+CKnPKtngEFv72Q89OSpLR3/3xYOy1dTtZ5TkkCGh4OznfUJ +J7qjZewKR4mBLjPGHehrwdF3IgAH7xgboD7sce3ERvw1NfmhL14LT12CT0CM1Z53 +jjglKL4ZbFRERENEgoqUsdDuXbr0VKwNJ+Gqo0mWF9EKk+BbgLJBpifyMkOCqP+R +VnL3QJdhQUUl8+AUlqcgzde0z77VwVmegL008Ahd6GPtZ6sKWXM/tvb0wfmFx371 +fGXVpy250AEU+W5Ie7OrrlZUbFcq/XIG9+S0lJiubv4POm5DjR2cm6L/XYt3Ixzb +htZfQWOwYx7u7qc5wXQjOc99dmFCHoGLyrcgOaJYC3vPc9jII2MAiPEDMcNMBauv +wOuqEoWInqzU5qKOuGuukQzoZTTp9hr7FqkzAgmBjLiPAgMBAAGjUzBRMB0GA1Ud +DgQWBBTNvA2CaWbBkPrv4t2ujpQTsgUhPTAfBgNVHSMEGDAWgBTNvA2CaWbBkPrv +4t2ujpQTsgUhPTAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQDB +AeBzxrAJebheaID80T4D0ojFazm96X+VLYc1Kf32rxae4Jg7bC//EyV4tS4N8bvi +ODKIk7vwJEcc/8xLlxGzwaMEIcy4oz2H0hlD3XbgD6lk0PKiLYv+qPrLrFz9u9W0 +rUFa5BN5qlYlW7RrzcJlaq8x6xMuJ8Clqmb/Y0vcGm9tFw5V1z7uYnKwsRwZ8M+7 +JPKGQvb/lYekYC5mkdn7dxZ2jrdVJhxWNAiUqQJDIqa1svEx0eM8PKvn0gDfnOD8 +Sn/K3GZpc+1aPx5h6Oxxnln7tmoD6rskPKa5XEjVT25m1uEfCKrGeJEGTVQItpQt +jWzyFUZKagU2ChSrA1h2AMfhY+jLQCqJGHRYnPnuLJ/iQSTz1OQusmsC7wIBOxdH +wzvTHf7lYsarR+I1aorn7AyVYF2bqXOecoNw88wrndYCdWKDs5dk6U8MPFeMMr1/ +l7ZVl5nIYaZhgAuqnsWy83Yey56mdHkBIEQMnEKPp9n3aTGON6O/CEqGfVmWG3fO +iG37NpcGdvtVKCglV4DPRf7zRkIfLoveQcI5sSiT36V7swJe9FK+vcmhDs8j1B1J +BZDlQJI33Ll0qZRdSNvw6rCryaIVUsfMWDX09qSaiaqkbsmS1MXlj2czYLgsbbUz +hF6eEvpiId/9SyCNvHV4eGFg3nSLUJ4JYADm+s5tmA== +-----END CERTIFICATE----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/chainedclient-cert-bundle-pass.pfx b/tests/NATS.Client.Core.Tests/resources/certs/chainedclient-cert-bundle-pass.pfx new file mode 100644 index 0000000000000000000000000000000000000000..21fa8a0c78c8a0d939b378ff51c0f80c3f777772 GIT binary patch literal 6583 zcmeI0WmJ@Hx5pV6Vn~rrX=!EKinVof3JOCYwh*Fe)rxt7)4i$4Zs1T=$!CCydf$fMt$te6CWjiPJ?WBD696SJ$zNvxh;XsMbPyUa6&{Wr z5Qmr);p}1U=45S!F!!(q3xkrjtFaKkL#n^{(cAm7Yhf4O@?)?6Jn#V0a!h86T0e{xP$Gkn|DMB629lXTy+tI zuJV#@XT)OUmzL|EYDl6ZBeGipgjeyS3r^MFn=krTAh%~+qf}qz+Jt|#Us0insM_=} z(wvODJ5ts%jyQThS28(6I;xZdvEP=*y2EEXVchMJs!A$aIsK)qdcL%x^<=59S1T#} zn86k#rhI?HrwpsCKogd)V`>~&qo9OlTJTAm?8pY_8Xh6$!7!{d9y)cth0zIujz|sG zag68HPdS(!-{UKd*-UhVTub8Y!jf)H40BoZZCe^$!A$p#0fHw`(J3Wi9+D2BY1}wp z)n~nM`IpX7Vj>UTd@yTL4jewtNr*!P8iNPz$Mj}5L&qR5a36=i372+*hW90z@Td9`CHTt=voe`_RAg!hz_qn;9dSJmldPNTv=+i{D!omojm}YEy zE4`B2@xh9hJjk$UN#+FV2hZh4i*9cFJMgsSAP;WcEU}d0wkrp(2N{4D%o#5u5{~jt z4!*oxOdi+&{Q>pALI%~du zTj=J)%Y|I!Ia>{1mp~cHm^$JFMLG4tI#1+}dg=*-)Om4NhP{dNNBeZ;Sy3nVarwg> z1z;3Z^2;j#|2GEx<( zEYq^ry;Wuk)V{91MA+xGJ)rGLLpC`Qqu@Oo!{qo7PB8mlZ~{?5sDYGkwc80Xv(`hr z4|x~3Quw`Ou`(O3VF>*VhPYzaqUb+ih|38?;j&)qOkflaZVnDM02`aq3qN(>d>X-) zSnK&inGN|lb^f&dH!J>YB0~O2MDYE85b-+v*QLV$mWn~EwpgLE;dtxpPc}1*SQZsV zJHHJl>?>r@3n(cR^1AOHxZw^x`Dx3Q!XCb_rsf1lJb3w(0+PMMP&Q+s#)_(vDJbnc zl}?F2zHhbATNxvIkiIl^Sf*C!KD9dl?OcFf3OwB0U%L)#ici&*~5~V&~`?Z?J7o%zOE97E^oVDt zIBd6Zz+u(JJ2)UiP>eAnf((lXL>>vz4SgIos>>x@{W6s-Bw}S*QDBI6MTsTFi4MEp zMGyX*SO_Z`>ZYt11*LH|_OJDi{Nf=c&Z*yw)pn&lh^!375!-OfL!rH5&8~qahpkh7@Yz!v8{-iQd0CB-M0KgTP=vPDr z1YY|$1kCg+AO&7ujBXJV0f{N_=zSVOHc)!(XXPFOS@5l2X?7qjm^y$`ad4;I&bpg+ zA&17CNUPz{lA9v(H>dvrUB5&X(0f&EipKC~zTBD}Y?&*6G9qXQB~)aK#!u z0s3TqY-+fScs;*OhS9#n1i`lsihW~e zkxt>}lQZW#8)tGoWqhW@OtYO-!FyE?h{c^ZM&BwMrFelJJkyppSLujkHhTCX|4?>W zk*y(#*WKvwNMr&_>xO~yTHQ>BUwyygMb~^;Z;&O?jrnwD7XqKi9u2)aH@88YEYsRH zOG!(CLyEOpR@5T~h&O1!jc=9uyqkU6%<+6nWVO56FK;x5{j5G##BB~$VdY+g8mG`_ zF+Nu6#oHdV*&mrq!0kzVLddsN4RVKT?2YovWOWw1vKU0FjRQZ8wl@`Y25e^4KP4J~ zFRSuIkSAVzEf?4KV=&m?6|A`Zlv@c|9=9GRQ5V^dlXBjoIwoOKaY$o|5$WmHauesL zOdZpyd3S%u;202YT@c{}Sa;d`axYEt>iuY|@5VZAd%8Ybu}6oyZQ;H=8oDiuhlHudTFqOUD6zCrweSHh;!jez zI)~1Kug{^DbVKjzeJwjXi9fYQ>ts7{F-DZf6|oQOE$i{_dMeKqBlrNd(Y@K z*Ua>99s`p=h`^w0UtZ6b*p}wM5%k_a33~5;At>bE5;W~tot=R~D_#KmWW2e>+hAEL zk%DfX&F<67r5;L(WBW&_lfD{-gj;G`J{nnW2Sd4j)bM28FLqZsOy7_CXEzFp9;^^^ zzj6{Lx*NmmYM9lPuo-_#vgR{^B=+ie3BQH*K}$eN16owG+__j*x@>H~dN)W(cr~=~ zCdbcchAVS)zKOVQHOZu6mCbp$!`|oAu$*9@$~v|>mACR5?sYTFFXn%K!z+Gm0(lgj zd`=-}y+GUJU(d&OK&z9#ptd%4?^$)PqR>ww9-oKQoJ6RP&?1i=44yI@G39OM$z5l@dNpr{4`1_`u z`RB054(8S0M#_c$oP|G)+bgO(b2)&D;U`ac5l?*tubBS9f-x?)auKP^^9 zB~aAhvP%8t?mq}h8&O4}TTxr8l^}yjUInevc`P-h-i6w~lpM{<=D_;xVu%IsACemr7ef{kC4-D&2vQ9|S)#DCVl zWsc||Yo7)4Tz_l(M>b=bb@@AorS!T0E)pXUJ@nZk7}xHPRH9&V^-+-$ttNP3i4FRXo4<<7)cJxBNm?09!D7N>XL zM~e~voo9iW8qf>!#Vas5Vwz$r3gIGaUAJ12HW1te3x}V#Fn&bV;=*{)luHCKxHx+6 zcD#j2%s?m$TMm~pZG*GpY*r7Qn~OFd~{lZCO0UPJ7(tjX593NFli@%lx*+r5WC*J1;$T;R8 zr{ZHeU%=fc|AObOyC6`jK>lIkTdYDvYUa^+SADX6fL=EwvLWa+Iu>NT2sl9JNW zsM*c_G}yJR+Cfhwi#^%*xlqYBHlwvHraT8@xakLcG@Inlva1(UwR%}HKg33+ncWD; z1gABJ!6;DLUt{a9l^zrUM1exD<-qI5|L<`9l~leK<*&D$zgy{gN4_q(#x98G*B>|VWH_QE4v>x^2#cxX(~>yV zMh;rrUbMy-DhV)abJBkL2CP@LzGPdunqM_(VY4PYGNGO%qt-ORQYy^;MyD=ok)V7; zR)eZtyJ$@xqm&`-O`xuQz5ASqW27;omx$_#E$VT<*Tw)eZeLp>T_h+%E#2AI8s>k) z0e8&FV2h86h0ds~`W;Rd^BB&C@8xIlOu(Ke#z5Tr$U1JeOr$R(N}#q_5pu@ZGu^H{ zW!bzm_e61jiE(^feo|o*78AX#xyw}{1*FYPbrb9%i@sxsVT4X$U^P)R>X!KXl9Xb6 zi;0B0%f704gmT&M^X2Tc`!^G6TIW*OW;m)lSi$VB<&69lQxkM0EaS~qPgyrp?Xn_I z=Us?KE~OpfhWr?N5yIM5YlSLXVLA`Z^AbGrK!ZvjqrS;ySP6~lKe$kzL{`3UuTx7A z)SOO%oEUy~(okl&=bAfta_zJ5!y^4Tf&chGnvsfOLEGCG!D-Z{ZL%rU-$0aUs znB#r3ZhUm~YWx7Cp>0{c)S>m9eOJ>tG-@1@n`aZMsU^fP4?N5ODYLV>S*G(U?-?-2 za^!Odg`29j5`T8#;6A}v)XTL>#3~Z)C)sHb`JQsmff3`TV-C#dVJ*-t*W z*SBGe0p1#Fu1`KE46be-(SL<_*f(R*+yB&}RakT1fyC2%?n7wi5yIlMglGEZbgl*e z3#YPa#iaxlBeMupaZU`YtHWJEE*;6BG|vmlLHaCEb)H8D-Vn6sozgmaOVLvF$)|^1 z0Yv`Qb*GNHyYMi*0xZIV$^gB#rHLaA%R+MRmKD&*YdUa!niJ?Y|Es|aFVBNF{WIEA z1Xeb0^8CIfayE!#@*L6K&1CD13ACmDwNL`snn24L`k8Ybp&VD^jP)#L6D|J+otYXG zF6#M56E>|{+X@t314mk`Nf-h)9&nhGi`xWNP%pQW!@_N*64IF zFfhY!Wq&hemq|^)TzM+4FY*0PT|u+Ah%i&((=*O|R%1?qIra^7yIs^~N!SbIur&xN zkV00zIUU$@wMBnd^{KYje$>av`<30Wi_qF*-UxB!?VsE~LRg_fa-TMr*6wuWw@dMF zUEu%Gg!~`x5eR{o2IRC-Ed{U%+(DGYGk(y$ERl)_z8Q|{VLp>{eCkwIa(r{{(>7}k zn?6Be*;S=|&O|5uo~dP;A@ig;H$i48)H+KU{gya&o#DPLH0J??wli!$KFK8mMmQO> zd5*>UBX{sG2DvOu%B4#Tf{yn5sUZ)WlfUkt@E*t65mggghAduwvp#(aH3YC0zo=d` z=}rpVVU?24G-Es$OTWBXx0yzBFE>ibk_vj>*1%eSd$$K~m8a6g!I_haQ&Q%uK^-UT zDLE&mO6)$&YCWXmF{BKOZw%%cZ&XFqCsm~RBMN{Es@*0{YJB!~_e@+5DdBZm4_|Yh z8vmmSo$TTK&jefWbQq+eN-GDKy?2kpPDr$WP7|=$hj+x@K4sFbOdG1&lR|zmxR>aeU;}^bIv7hLo zchh^4q0$mb!_96=#&Xptd*riKyNtn4Iri>PDUT2t#An2p-)6TMv5VGbqtdU?)+JB4 z4ACe#VbBd#&8achVWbkKJ(1kIuSdf;^??PD-jt?ECz{03={gK;#Z3(R31fD0^I4K} zzitASai43G{+4PYLM@?&yGUjsTWpb^I5d_BQ7eH||KRwAo$cKPKtRbhOc6EuotA$- zoa)LJKq&8(_VmaYU8o=kZ~cxdwV}r1H#J$n)sz@8>=Kfe3oH>I`hFpYGdby-?1HUS zf3Lv*407}V%>FjGEV1s$!iJ}H<2m3QxMyDao7^}oGH|di63+`EO0CWX_YFlus(}DpC>r8`59STNAACp( zAOPf`AxID!Vt6G#grdo7{*fXt1fj`uujEW98V`(5{AU#j5db#_4H|`_K|}aNe~Mt5 zt9OCkg3zGGE4>zq24(`O2t1Vb*PDGcX^aolO}f&hCdL3tP}0B701)HhKp`+%C^bH= z9tf9&4CUx%<>Fvvi86Duf(k>KX-S1eV8T#wVPTOwFqk1N>8)Sk?LR{(HH;EU@!zFH zkFCtCEgqw+9Nn&tX8Zdg06ZLAG>{zUN+$xMfdHJYxG`NdY~224$MsvHgbCmCBA1;6 z;mf>an;EfK`Gv)rr|MFei16$tf8k|<=zoz&QU5abFIU^*)83t4X;>t zGt?N56B{aN8buv`m?;{cA{$o9f!S@!DEjN zJ7TZ_i!0w*^D4n9DbPUV>zEh?R4FK7nC86F#@n(1x(0`+SttVMln0{5H#a;+*cPGA zI*N6_{3(a9<$H9gKAnjPmupI#o?FnZieWB^zG*|NE12op)<^gRE;^wk%tP8HG>I4I zt@5lJDIe(=B`$LB?MKrF<$%GXoP;=3fWC-`U(BLQ@=R&3H0muGXhd&%J!JHpnCBYf z9xc723+{49riAy9P>BJt6GZmo+(47w4k3LmzXl88!oGcMDm~JvLSTeodnUxx80nrA z2Xx7}u=8tq<>Gl>(12-sob6HT$u`eM9zdcz!9>Tm)k3MsgD`#~82>&s6-HED^MYr} zJ3;xu7|6)IJhaMbzJ@fPL*wtb@!!3F$crE;1j$& z6#`|^UL_wEd1bv=5}w^sMv3nDgK@O~`bS!#hx_=@0J0b>RAx5i9c=)O=8Ro zYFN8&zsk;Z6QED&Itu(0dAVgFTtcLte`6>>g!hD#qm~LIrs5D8vD|zsVSDuMQ5lIT zYQp$a8L|(7PUSnzVRv4*e$CvW_*JV1MDAPiYu_Vin7L6YI=}?N5Ww>VQT_EJ^dP>Y zR30DmF8)g=Wuj*zEf zAMnm`rSN;m;$+rc!4Uo%4DrOTMA3i35RVgt#$&zGnV@J~yc}F000^Y=AV}>yn?$iC zR=fXDX7l-)I(yRkn-%{x5n=x%BJ|Ebhr&x=OU1xt8=Mf?F#J{aC+iu8Eb|J( z?c0M1dkPu!0!j*nyskU@E_ee^e%f%Qu!rrbsyYA?_amQD!m_s*N~X+JSL`9CFHYRS=9XVsy_Y2>g zP~5|_2V?M#8=XhFsmYD8>JBKmcZ_;BbrhqFAz2Z?U77R3A7n4T+DbHtiYCQm*+lWa zc&)CRF};(gJ>Gult1d`hL$BrIU=<$tTAkKs+F!vP7!O;n(3}t-yJ0TvZloqQ*$^Pj zk9#jpDLsTXxYsp2LL8xRvnJa(;*~%tF_np#Gx90ABvob;naU30OWI@IUmrjcBy?|D zet*qXcHzlq`k-hkq?PghW(A{qPe+k`ho^0~(FguY0UwI?=VUyYk7bg@7BF9&l(0*a zNW@NkpZ&6vXOMq}pg3bjI5`dvm?8qE8}cZ0SeHwNr@%J0RrrG z(nCHc5yFXvyC^G0!D$_h{HpyTHr%8oI3G6Rv|MWU`#kTRccCrnQ+=6|E-iR}q(0Uh z21MCDY#1y++#p~>^>ibbLxriLLR%}N>wOddpkh7(Y6K;@`lK>Zg7BcY0Kg@b_*X;@ z0$uqx7|Qf3AOl@pj7||_0m%vI@EuwrHgJ0ESLH53S?G;lX?74Dl*XS*v45-8)~b_k zE{E2PShMcHf}1kpH>dvrUEjp};14Q5%KETp-rO2vD>J%1>=-|y=E=kaN8%xVXxR!q zA?A2?WMZ&{WHrAk8%(aA4X($if%WqU@B zBJIMB$ES|B)=uTRO887jn5NsQgLW(Kkw`eM4Zl-1Oz{BUd!{XKcE2rx+3>-O`~%rV zMYg&mURT3|Ly<8Y&1?F~D>YLYzO}uI=N+>p-GLUw*Jjh1od~@my43YTG9;Zquycw*S5lhyv(nMFTBbrke@xV536-G4o+_9<~6 za#4jRoFei3TdBlDUk3fX9l^4jPq~$RO5;}JBx@piaZ}EkR7NC?%MNHwup(WZnl2Lj zRH-96RqyX?=^p{YtO~*%0IN>B8@JP>E5Ot6Rn9e@ga`d-_ZsolaktZnz!)Jq?YGo8>tSBxRunU+fF z%SY>D5R^To_qo6oAn*Q8(_bRbZ#0Em(Ukg1r??{7@t-th_mGY6>^=)WJMRvZ*4{OI z!!<{Gn(jb#{H*7C+n7$wOPOlZby0=8a z{nA00SS*Iu*&wSUVLkqaRMl5PDd6&VN#D8FehWZK9Y$26)bX|K-I9?$tDQh4;pLF} z>l{C$87|E*`Nk5um89c}71n2A_PbwGLvw<>%4^ta?!S{)cdeOXelh!V8~^niW0+QS z@)@O^)f`=yUo9WoKAlefoa)NR?PrzUib6k$dAuIba1x_G!C$#;VeysONT_ZyC)ai{ zYQqM*r5UI>g~L;3T`3l`d?qypMtBuLLC(v0#7K`EreUHI|K+IuPl%mTxucl#MI_9d zftQbvd-VetH{bF$HfwpcOIrW&lZ=E8$5}^Lj2$2~`wh>M!nf1Ys1F~xKWl867=2%t zGy6Jn{*XFoPKa3QMAYz^oaEivLU+{zt^jWZ5oMe8Lo4GgOTS^Doc#L%KfWZ1C(vxs zn_n3HCPi;lZn1oys>t6cGJqTF`BHv-YSydwVn)967JfJKQ_ijc)3~drk$nTc;*hKe$(Q1moLe;s5t{B%P zN9m*LHJwZ#9`8%NWj71rnn!{De*4xw2zar+NA3TUp#LKv|4z`M7E(0Ix+CUf=kt7d zR03rc9;@_k?*4tUVU&^M_wHe`GV3Se3rFUs&zT5YOOx%gmDNbxSmx%kGwzudXMikWi|dPe7q& z+^ensRIKI$8^iQb%`RrIs!wJRq3w_dYep%02?ZLRBL}n z+iIcL3qGv}zV7=NpA@bm!G%e6i7*2_qei2hda}d3T4C+W3Rfn+${8Xp=wq?|SlsSC zFHJ^*_wEIzsvr;8hDShh_$1|*D3p_|Rn2lyT3=8HA`E%f#Q4dl8V|vPp;{nBASE!n zH{;EXWBNi^*mAg(>FOLGPiJ*OT%3#}ir>V(I-VOT>ox$UWsNtBDL66n#rJ09Sa-YY zv^GP)EZz>&uKlwCrckuz=}OrXw+R9TQU?T6U!Q!bIKOr@FVvJIqJuOuPNK&Hka5I8 zLCwc>Hix%Xx`FT7dpZEIjLu;dN%fEywV-CYf9X;JD=4$P%aIA_%hFrY>NcEtl9JL? zuhGf=G|0K7(q2y_i#^%ocQYP~F(AL2uk%r1oF zf|DA9P&7F0ud(&lN)HYPp}`?na=_K&_jkDdN-AH8@>ko=->r1DBVUzVVHeEvYY+O* zmi(VB`45_1IRS@=fhQ`$JX-b}G z`}AAcoHxf9C3UJL)2u=6O<3h ztI*Xe=gsLOR5E1U2{hGjcAgV+4Ap0J6H`C2K|kvCSnGqw?P*JHDnzW6GU3D|YV>PvVYTE$J5i1cJc2~@vUgq<>WO|~je zSTruoJWqHlA6HmM#6)ju>~NJygXl6-T?D(xqi-2t8Q~LHL{${6ngzk06qPvN zd?L}#qPI#OkzDqNd^ua~-t~m4=9v_>DUQlERw%o3DI}qPFESEQN+2-aA(t_bLC-TBDjG zs4n@SfukR@9Hzi za^!OdhMA}|lYDjJ;6BEh*UB|Z#wrr;CE2Qzc%4N^Uy79}fw9-;4JR;2LHnM$Ew5Q> z>r@~b0Kl0^w5~>*NnXaw>bI279pB3~CssNN*H=fm*!rj|DROMq2cg@Q6V!B8?8fii z?pZU!f^G~n)+V131ywcm9Q&!X1b&UL5OlE3e zn5g?7O<1>VZYfZB0~%_sBxNw@Z|M}iH2l8Dt+}z*qTSx}cG4WTkkY3ymibHZcD=)X zU*8nJrQP+E9VS%)Gv$f6p2QD7bp=h|p+ZfBPfj`WS&cXaX4uy-t+r9?MWHWz9{qHW zz27hD#*>B@kE&Vy z8dg=IJFt^j5RgwT8LweMDL?Co-9sbl-114%p?CctQbJ#}swmn>2K&};PJI&;2Q>%! z2&9mgu1^MZU4Ee#Q+cYbxfk^*;!b%d;yk4Kh&Nn9dGjatk6>1~klg3>g_TYOo_EG$wNS6|89p^?OF6z7*GcOY z`*p8C@$8D?9!KKiUiZ`zjo?|boa6k>dvm7?f0?J;*xr$ono~;Vn|=)^ z;wc3uwnF?4!g4jZ?Gda5hi?So9&cDd-6Q=<<3|(#4_v)TmQ?@j-Oj0mo{yx*NiA~4 zabon3CbYAM@jnx6!q;KA3s+j&zvvb_3Oy#({y9m=Vi(pHd-H@zyF6{6VprN{!|)nm zf1ZRpEfmGPQCEndm%Tgty{2WBttkVX!M=raz{IW)OF#jUS!{V($08#8~% zJlz<|o2_VPW~XlKRI>C_XnnG4PuQvtG+9gksDtcoGW3G`ERf*>a{7v=0oONdzHBei zN$K zD%IXD@H>SaeuT2W3o1#hIW)KCXq2}s<9*Ur-S*<5@8i_ zY1q;<+CAa!ki1|LN&V^{GeMkcB*S%0-S=K+hx$mb{wRyYmFAUq?QFRy^eFbbIZx}L zM*DyLTPO{M{Tj7QgYN^Za6!OdqZSKCqyr8P0pvhyu#1ecug_7eRMv&Ci8{^YJwzlL R2%EieT7>eTOKcy&kKq!h0oV*G{fei>q|EhwJ0PwR>U}l_1PeAgQNKB9W z7nlHq0s~!iv#Wlcio&kZ3PUErO8y)QqqU}XO|2tW$PgE5IP zz~~6@jY0Sj@_TMxPLEuj9PinAIldg$;}IQKG)w50f6!FQ9uejoK6Bn0RebhrivPMW}DIsJ7Za=^FuNO zQM<>49{zp2y_Fq8atNCA{TM@*Bn|ANux#rbHWW`mxBj3u;(Cx8d7* z5?@#EmhnPm*J4J?85HO1UXRqf-ReXAS@|Zo1m#_PAmpKVaj@=F(O-TxWUnnYMuPra z7oJe-VAZ%%nqUMqKYh!m_dWP3&vmU#AzCLlSRy){FO(c)OZ=i(gD)Jp+wNO6_1?c) z<&eBPdEO$nsC+T&j&Dl!6m%piHgn#nRicbDHm7m4c)BG(CA-Nu`E{`Ay-_UIwlf0w zcpCg`ecqjMxl3Lioe$$$?VoI-Q%m3=c`jg6ntDgkua?Mfd?|A&SFeq0!U+WcIq}fymto@_Gjl%*8;iaKY6w4CCggf)ghz1o-)YP8pAR6ak;YvSBkt=kp!ncwpCc+KCOXB~6B z?auOrt7R-jl-6#6GBIO6ay8wz%iQ%^d#12)j3#^gw@@u{6MlX%8Ogw3;pWhA$ zC@O;@Qg7;E{7S}6h_M;%b8MpbU!K#1-TV;ws`qY}MGPCg+WnqOfz``L@*HDUaum1n zE}qTp&S%(fD_%2PF-S`EqBdEPiz9$k&V6YxEI5TeG(}R=eS*r&g>iLMzxU%5LES%0 zA#$Q3cu;CxJC(3x3rpE-fo{3GyXXiEYg8B$NJ@AgG;>43F0@~(XZt%3G3}f6w)1Ko zlWPqLcg$t;$B-qVuc&E>a+4$FSM@*9CGNgdAIKPEO>%@h*CCfjMiP0plGy2p@WQzN z0XSkh5uCRwxlNuwya*=iSZHIB^zJigZ(u9H0aWvMs!HNS#BWsP#Zi?Lr$b>VeDGgX zm08Z+ARN3BZ~7U}Q9l2KmWM&5{5LE9d#Z~3MpgJfQx$Ih?@QtTk*u9)pD-+AJ|0`I zi07h2f_b>!pidezx5sO_wF&;-3yep0g7Hm8;S=_BmHFBxlgW~Zcn8w$x83(11wuq4 z@#$|DoprTU8{m0Z3q82mkLIlnYH^s+d&e%;=5b3^U1X{1K#QwlPwehXBSp_h;;Mqk z4f{y&W$hx6-)mxF;6YLbJU?&M_?%Snm99#_Tl%WnO+c_*8I_)-5k_ap`&_r;ftvml zi*hl8!YD@dk`1$Y&^W0;#@TptXU@r#u%&Y$XO)kED;|p&@+Xaq&6o_>uD}ReALnSO zxz%ec6fZmx&${a;I2F77Wx?ap@8|n00u6(7jwS506?D#1)hlt0L2yfGw7Cd^=kPLv zT;^dx{0&-F>HP!957pWn7b*OCL(cLmO#o~yuVxiZY*R(dY{^x>jn)L#spRN!yRIl+ zwNK3aenfGp*_|Z9kA?Wf7H(EY>nop0l9xtOA3)HUINfBIF}`Sq=6$mY*-zdnGqs}v zZ{tM2eR$`dJkHuN^b`LD*if5g&5R1a#ztLs<6*n;*Gihj3EtXF^~1UIt8bEbgE(_Y z1pTK4U1~~i$my${JHv1MkUxNt9_hm zljI=R_T(WG?02t(V%|S7)N%IsB&$&4Y3De4gKif*BI4&7`zKkgU=}dQFLcs?z%YCO z;1WjqE202_a8p6(-=O<1nfiC=_Id-*9EIep-bo$4qzS4#396E#zd8L6=pv%oGu48z z2P6f6NIZ9m#RU@ZkM^4u6w}oD{bm!;#-xu7MB?sua`j_?t~B@>pghvsbX(%h4+D0# z4|P)Dk0;q`K}1Ds{lv#w_vg$dDA=UdI;v>b8mFX?WJ5WZN$ou0@q;K$QvDbDsDkHG8w}zNToR+rpwIZDnXzDZwHMv(nPdT){_vSX2qB+sy%*bs`&xU)sZt+L!7oHLH zJocQLBn_Lbk(uYIc2(r%X<|#B9|$YOZR%%IQY3Fc`Qfvr_0mS^vQE~CO!ntmJXFA}Kp!dj@z6B+M+bJIOa6s98~t}op_3;dYMSF#S^XsjDz z8e)|E08VdIuMNr4mg|MCL+}GZ95?Q(7$1TY5z@VT@5nI6%t%PE$dg$p0Hn znQ%0v!|7BwlAZlUQ{I|MX%DU73Dz#ZhrEsHHUsa!bN? z{WZn+i1oy#E@QplcZT+7530h=*9TAKFQRRGc{Zo7Qq!h*e$_BnY`~jK6JjqtTL{1N zN*>~GI6=kp6KSyELZ!S_NXjuhbM)=Fj)#-i%GhNPs^n(MT2&i-GtP^UKS&)Y(i6Z) z786K;pw!MLQIzFMd5*WjDZ^Lru=v1v)DEIxbf9LWHWH0rO#MA5;{HQTq5J!UrS<;Z zcxjG8xvrvR>uXXM&J^IY4aGo~zBPrptgqp5=08ISxOO8pBQ&4sys!!?o)Aq~kXUyM_|Hni8g8oZD{+*zo1Re=gKPO!Zb85^%oaMN_0EJEe=I%cTTJ@a7g_!0$hNb7z zn}Gw*!19~VTkr9%@M;8l*EhB)C^Huz!lsuu58Pxc?;d5q(R+B4RY5@UDUWi6LQbVs zIi5G27B21xKwX|MvwTP%!VK1y9Tqn1+M@v|GPscyzxUX=!nhqoEfLwHayA)zdsfY6 zh(R6eA5bl{SpiwrNCpTT0X#nU^q^a`a<0bB5^24o{d_9x@B7nd@tF8bHXJcUwz-$L z5hldE&}raFCccNyMUhagYjk^b#7iX+X)^UL1!KD3#Xc%->9x`^ocJB_iVn@N0Y2*+ zkSiR(b_ssplF;v4D=ku6*cVvHwk}h-Bjmttl*1;z{z;x;5Pi>f@w|9CMV2R+9{q{$ zd|0PO4-AQVplv=r$uEST;{)<_J23+KR0ch6YwaVDdp-2xP3asDU!#g zeFmM}54;W%-dzG@NxWIA(!BWghj$$wAqdGD9f0I*wRBZ?{UZH0)&0LW2w=h++1H2e(Pi|$(e(X3Fm7rJI`sYAy66)Gnv6y@pjKHJ;I`QY;)5;g>x zb>#Y}GefKj^rkhsbe#*3h+RHG)KkWgY%0UEf}dT^~M3S-0&F zBzc*=XeQSZNa|K@iF%{8|Fvn6_py;{Z&|pPa5z>haC;}(pP%@2*L|AS za~fGFhBr0RR>SH1ZqS#Rq|V80Nd@P4Pnkq`%~9wL{zNAR_aF$l$*#NajVZ}hrOM>v_aYx8}nXM4*_6C}siRuF1q%6o6t z4oXC~Dew>jLP}S9!KO~O&IVBr-IxeuDX5~0NOhJzwe@hmOSFld>wTZ`%uLX%;?@U- zsXnzI63m-^XF2+Y8COQgec+X^95;BR%0TSN5=muHAPNA$J41wI;njmm>#~>V&5&tn zw`zQ~!UU-aYds{T_C2L}Cj#P}N3!S?X zn%6$w!qmnZ?4Gz6Ka+j1A*F#>l0Fsc$9yCT&!X0+ zf9fSsKdHkmj_(Xd>CW9!1+W$BhR`S_d?Y-EG?gm|v|2RlWoWrLV9M@kH>ezab2^ay zk}`2At)jwe)H`4$p(n!#xRXO!?7*DlM;+ln*dH4yV0xcCn&88D$Wnn`Uxww8sBO9& zLhJSZrRC+A+~;RstQD?vy&0Dgd%!+DttV^P=_%Zor-}bX75&{ych}4Bbky^PwEpY5 ztqMJlcZW)Xx3Hx#;$cnqtE*mzOog6a8O?Z9w~aSE(}rsT-c_M+iVHrX(A2~qchMYE z+U*a>B`a+R=}ltz;c_o%EHgN5?3X1cQbRajrRN)fpU-!JN405$<8GGC1O_fkk1G(% z2P%%z(Wf5DzAKrmEM{#f4u=nZy)>hXyed?Ssk-2Qug}sXYS=M6+^>pEh;Ek1qV}-q zC``te)sHAi`)u*yeVz58$?$}wZ1hv9W8ofeg%zj#mm@(_Nf?aM1BbUPUsxx^-3Kbi z6>cJ4AAT*n>+Lgr{@OQKn=ELni`IMArGIs1rgOEyT6^j&z&>{li9t^Y~33dO~FATcklsP!R7a>2i(H(^pUCgELIF`49OGWC%D; zAP_`7m}*(U+-TWO0Yn+r`^e}@LOwQjC@hqG(VF4T&i#B+XnX1z#Su`lg~UsrN}8@-MKy(Re32QmR+ojYxf%g( zY}L(Dl9l2Xu{G11aP0PCgIoZVtEyIsas$++o)&TBUMbk}gaV*)EcOtqAcGLg65pqe zc(t@;FEpCYV}dIz3$R#Z<>dF<>wG1Hqap>57n>cJ{t#umRKuS#oS`2XLzb?^x=>wH`uf$ZI(6tFrjn)oTcQD2z{~H`ylyU z`H57zY7DbeV-~7n^z)PH`qm?Gg%{bz&&%lScTvkT<0;WIW%e7>h$3>$L;e)$Sqs`5 zK}`)wMNU>-o~wZ7%fn?>do6TK0*9?yGt0^1!jM#0Hrpnd0hL=R6I2U{T^e_jb@_zW z+es!i{oZirZc2(k{=)jo+fX@X{?qH^*R`eTz<@=AG(kdv*c0&`Zhhkr`ea1`OV4Yg zm+ns=Fnpq$eRiq)*83Xr{3CTKx?0Y0z7-4LYZ7kVK*+N40 z>`Rsy>y&SL-}k(y@3-#{_K=Irlv0ITwMZV;}>95NO&y3W#8YX2c;BcnSRo z8eBrc3lV6tII;`CRMgFe#gUo&msam3g{0Co@WV$D(0_LTsmTEds3V_9@$m`5kI9(i)?~bP)EEtFaCVF0MCayJ^t>u zCBBBMQlN3#a`IPN=p!fK;zjC@s0+h6>$-K(HMdjXD!?J12#v)%KHo$|lpK^Y`gqfB zTe|jsc@Ua2vjF6OmsIya~tE;QG>3)%y86^F)Yaz@of ztKs@7){Wh<=}U9l$-T~5^LsKbjV;am{<9XclqBbU#P7hXX1eI6z1}KeY2gNiDcE$`Twc0J) z{T8ki2fzi5?WN~eHHa^{_RYeN&IlxCzY#;P<^SG+t|1l4 z7cSIeKDovASXSk+Kij9-jeUZ-Z?>Zu!42L5D-j>Y9Hr(_gts09=6>>a@ln^lp5D29 zZu9+MtX}l#vf`3*6c4B3?!Y$ot>cdNv>FdX;c*Pe{y@+v8>Z*pll$Vjh>_YRA7x!q z0s(nqs z>MmiMQB!Xw3jQ;SpTQOnq|fMc2}DSVaU$>8>MHpL#m#G!0n!Sx`FKLgf3$iJnFzf8Z@ z&IRB|4-2r$vm0;LqhML_W_%uZKi=7_yB!{6$c7JH3S9B)E1>mh00lUf4wZecqOv^e zXzn|+K#B4ouKa685GGM(@P&mh+R3~9zbYNkHk=yG6@(0jiBkj`lJRfZZ_9*4gVB%( z5{xEA(4W5en^Y%(%D>h1htZKdiPR!QV)#kS|6S?-uJpGnk(2-+zb3wI;ru+!(~XX4 zvEeN^H*C0PX6Xlq7TATkO%jJn?UJgAv>rnTJAS$a<2AyE&`Yh~~gd52%ko2iebHj5ciqATC$5-*joiN=&0RPI|yu~#g5vgo_<@|%%Jku0bf0wAxySqN7Uz>8s z+|FH^v~p+mrwkV26&tj@=il_kUibnkijBBmSyItZblEMm*RHuH^p7*)u~?YyzATHIkhv zVN&{1K|=!sQ%+cJlHk!c>?rUfD5XQ$pJw@mL)~Wh60*RQ1G;4dUvRc_usrIk;?C90 z)+jf3o}u;Sa5X$i||dkG8&{ zq)fK}(Gz6F_?REBPV;}3a*%F@#qe;jwj z{21Ty-YGC}s%J@g@XDE0=FUOBh?-^WXXbHf`(~l<**U{CQ}-diytT^xMyAIihG3k8 zVmSxVaZa9xw%Q6fkEk=Qd#tTNv()F(Ypbx+3ldWLz(P!Kh2Z7f*KdA7s*SM(uyK5U z@(}E{#n>c;pSW!F=kjjf(zBfL246$zo2Zj3T3+$zW&~B3M|3P8=Om)@Go^!>kO9x; z4rVs#+YI_IPjh+TwhaxF-DFweR_h8{2M#dGg4p_#?|&VkUj~lRp~VV?I@eHT z-)uA(>{RJW9LeIVf5oX)?%TIv>Ts@Zu8;PH#r2u1?R-q@&MV(#9vZy4F`~y4NWrPu zqwYGxffbHwmX;YVh_gvL%50j(h5Fgq+6nk3#+ykfQCq^^#M?Zq4ybANyQK!6Kw=xO z8cxb@^$P44C($1^`<|Z4S`*b@*Stul{IMKoF@M}`oAc_=vXn4sR$vnFUe^oXe`R*dSD^<^du%IQ+fV#~+k8ei-r+c|FR3}WeTiih%+R(d$&lEaCR%s) z1K-WY99R*lFsy4k)m18a;2u(TDL$oo4IV+TRBc~lF>NbQ+Y^46rQYTzr>Qn()v`r| zvT=wDh?jMGo)v~{=6gwSt&}%WL0aF7MddL7FuKct#I@>s;x4D^X6s*?Grylo^qWV} z-!Vx~aCMWBz&gh!qa7rU1RSMmXUC1QpIvL2s zQU{pN6+J_|em+;&n~IGuUWKygT_X>49-16Ax zUgu-S<6&AtmcP&o&a{2hf1TtZBF$Va1XCSuxx*(Rut^wV4Gpof#C%WG ze2Ep=++rR#TovBm2tKkj+l;B`+k4$Md=@--+!C`d#R1cFw*?$*dS){?+^4^15$)FM zExJ~8aSa8XC6Fcjq`A-{KsoM)nb++ln`~N;Q8Q*yqef9wjiPEMsJ%?#%kM+w!5^i9{hJrd93 zhRaE{xL**z$uu<&?lbMY6Ig_rNx^7nG5U<{DuIX}(`QAt!K$cZUaU8Nfn1>1L!G_= z4|9nx5o#1@thSu|)i(O5DY$rv`XlP%2+oFHU38s!DqIyf;v1>4e8=~zsECrIQsw|} zy1A8G|K|r`xpPZE{&&gs@3(Cchc_)wac8{WyTXeNGJMYV@q)Ui%yt9a^853dCL_u> zUVn}aVcCY$=jKszb1Hhyeh_J@Zjr1ebUVNC3ax@NsJ=r(h5=EPoLO22`#n!z$Y>Of=zZR z5t(U`;-3=~?5{Okf9|~LV*eG~Tq8M-J-5GhQP?jVH$Eq%n4EdJ3Or~E9SI4`Ed`}D z0vL>7qIpG_u1sjdsvh5R*yEX@U}SHH$zAILq0oWdTzn8Dp<{t}n}Pf(`vB~DUJTp* zrVAMe2mt=B5R&Xj3IPHTk!@z=)rDik2gnK=hRPO3v-qjWD{>Nkl~J@yS4TS5D56`6 z_M_{c*mi4Y_oweA>qr|#E8AnQ)kgHyJ4FdRJxy-PdW6t!eii-jVbN7FR(QB_ zWEs-^!{B*-^AyLT%>u2eqN;IiQJmLC%B8k*whA+!t?f`=TgjlOYw;;GPLk^`ORR*Ic=kgk`f;bHlk!|X2Y2~JV%wPH<$EnxA4nxGQ+#W+hAqlqnP8ge2R#6LQvjEA6H*>?Hd{0 zs~5K4569`noUJOZs6_K{D((;M7QJ=a)1F20FchD}f*c5f&N(nWkG{MYH$;q(+kBJ_ z$%%O7Q&Z&5V^EsET_&Ss&P{-Q(f1k?nqDilTuYspp;CVy$~6;cc2yQ3#sdSZRpvkM zp;31YcahuX=KSPuv)2U^yJ-SF5X(8?!01&0Y8YsqIvD)PR5ZNya&<~MeTR+%6Bu!H z*;$&~&$Rehap=tQjC$NEZX)o6rbY@^qj);JJDWps05EZ^SX6K$g!5;@28a1~ba8*s zZ*+12I5NTmt@G_CTlFYd)_fSB$KOwIG3)Jw2OF~C!d8OT{09nYeVagmPURyN-)g9= z&bwL%&Mi@*Jcz6Rnh}Ialo@9cmq{@~AQC$uf6Mr##5({btyfre!MTlUK`Au(Vy zB$5Q9NfG?JFa9FcNubIvb^T^^Bu^r>2$2|m67zpo`oAmv?Mfsi0LZV4?^?P%Pxo@C zV_I%{3(gB4?VDTq&Y=Z%W$uu~qSAV#>Y{8W&>>DAZ^L+vaG|uL>?+E2!`|e+4^fqs zHip`9hsOh!4obq!pCJ*Ir=IEg!+8bRMr63=&-x{zNTMV za>?8;T$#4^U=E;+5GgCsRsNu0zUVGzP)3K{41J*U+?nCnrHj}U@zKRAQ&DURoEklr zlOWkvu zwe8i~ctX*Wc#pw2;yNLR8RJtCYr>hm2B_k7Dz(5;heb58%e3+L3jhXPV28%?dGlSg zkKv8)?mvbB$+X##(akyJ9%ejSS5JNv9_k4?6pvoPEWf)p_vnE5r-Sf^c0uLlk{^$D zzM`Z|cK|U{WTm*h4r(h}dq2!$x)9#t7ONKHDEr5Bb6x#zQ2XyDw)lKSA43#-f>LV*aMj~9HT>%S4XR6>iR*J zS_^yq-IsbVG4?-_-XeSV8&c_bg^o}^yL9Z*7@s|Lnw3oB3ftliC}V9+@c*!?C;zRQ zyk;@7+}AGF?M02P2dB}u`$uK8Dvm7%w$9gEXLuS{Pt0%K1@-J~&Il20vh0x>+O+R? z^|NLGV0ByN`X^rAChN7})t_f6W74d`B;vep6u|UTs51jSfRk(hb^c{Nu=eFbW zEDl&+Hxp7|ab2;zQ5JK zIRB38Wn&Jiic%QWwVUZFmn3+ER$NI)t=)h};;qy=H&{$N3XuoG53|)f{N*%}6V`1z zL?|1FxPW*?x7T@b=yrj(1lL++3l*gOy;yWU0|2AD3P{?hy(jK^rf#f$ej6^qg8HpkX8q7`_LzS zyPEawIKJhx^)#ymzt8%4uPX!B1R8I#Ua+k^bqE9*pGj9JaXe_omvD{@C{J9BQJ=40 zyvRq1{2u%2 zdhUHOZZZM(RuZ6M74=NTyKeO}z2IEOpZc$pJw>FMYlUEHqiuKiBm}ncBdlSe)>fEr zNt!Q&t<1J#s|F5UcZ{Bg44<^c9!hb*G(GG9gl(@J2FLsK_bg-F z+kHegN-l4pp!0aL#2+-5+5{*k-7$;0{rG&d^vqYsg@$3eNKF30mn{b)bZ~z4v1MD* znQV>z?3;zEd*N;d`#mCpN!dz4O5q@fo7OUI0XV-d2@Nmd+Cbvs;NBAt1TfVLAloAJ%E71{wN)`XF&zS;3^w+0l8>tC&1cAwZeOes# uD(0>9KPX&fLY_g@%Bur*W0w#vDk9CnlwfS3V|jP2;C}#axerzV literal 3936 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 J{YACT{{vc-GgJTo diff --git a/tests/NATS.Client.Core.Tests/resources/certs/client-cert.pem b/tests/NATS.Client.Core.Tests/resources/certs/client-cert.pem index 7578f6a10..fa0ddcd9f 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/client-cert.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/client-cert.pem @@ -1,29 +1,27 @@ ------BEGIN CERTIFICATE----- -MIIE7jCCAtagAwIBAgIUJbHWO3BLg9UcxXtxJWSFuGobwFgwDQYJKoZIhvcNAQEL -BQAwDTELMAkGA1UEAwwCY2EwHhcNMjQwMzI3MTI1NjQwWhcNMzQwMzI1MTI1NjQw -WjARMQ8wDQYDVQQDDAZjbGllbnQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK -AoICAQCpiCfjlvyN4Tt9hMhiSH+N2bxukDbt/rll0KeMxOsozRGQbdt+xyn3eG50 -J2mTQtTSYqlPXDakNgigUAW1RghjnrrsyvDzK9UhhiGp1gf+Ti2iPjUf7Co7avsw -eeEwUUD2itSfW4sA/OAI9187ICqLBWzsMSNKnWFSae/lSWbiTnCFKdWisSihP1qD -fGWtvaluZgA4gNGJxxhH4qGcHN7rlCn0hwG7YYJptCbBTN31z5dQGRrqKry+p29m -pop97efwm3pEbRWbdxNCo42JwKnrcCLUv2UAXmtddZ2Dd72Q1rzJIQMZH/Ian5mS -Yl4Z/qqipn3aQM3Ga+44mhYY+YSBBWJsuAM26RsbaO/tAEA/+/wuBNK21Y29kQcI -+3ZEdC0Wz4nxPRg3wp7Sh6OlXDsRyjAae05tr/0HRTvFY2Zp2Dvs0A6pDT1M44BO -vX1XNYzCm+2zH61X9+DtDRKaiFTg73LpZTT3hGoVgI201Sf+t6VKNFXc9PLQ758w -8XOJtRvF4nFg3KuOgrbSfohwzCNpK2coLyjMz4UiE7VUCM/1F6ghuQGm/JxeXMAl -MM34Wrj7muGmaOGelpYBMXfYwI4WB3JJeZd2zOx0ROpZ6mobMSZHDDSNYsUPdTy4 -pYfjztMUNvwIjoLzEMGB+EtvPsJymYaqd9EshyOI/VoAuLlHlQIDAQABo0IwQDAd -BgNVHQ4EFgQUtTzP/YhEt0k+b8lZ2+NnjOPW3VEwHwYDVR0jBBgwFoAU3SpyKrCE -C+OHZbahNfmhbYwEh9kwDQYJKoZIhvcNAQELBQADggIBAEzS2axwJbLYX2L7SS9U -tTvS+2oA/dU6gafAy5g5V3XrsAnbBTnVbFeK+qSfIv0HrhOHqRyaRNIor4iSM1g8 -awNvA+mUF82aqs3h99LIRtRMOP3u/YtfJJ5TDA7PYuTrSl2nZiaosF8GkvHhWZFk -wEnAcz8bXNU0qg8z8CSJO5SkFemxQIPtuk1G3Pq+KDCzYAKTMkVCREqrifhhp3XN -YgiR4zcd4kGWRQgF1MYpfPMGisR1VqIcZm/tGEGVfRIzD8aczceFvxzvletX8bt7 -IZfVTkao6KKnBIPIlv/PUi56EgBWmvqK1coJAbpYQEtf0iYk2oKImD4JbVChc6M4 -JRxwaYL7H+xzJ6XzIxjlS5pPuZZtJZBGHMo2STicdzLvdEkq9TZbiCeYy/fGBJUW -m44C2h64Xm9H/dV+9zo1DZr89MfHHexNtl235Oi4pcV8AQPDiOB+7FXILRfFidYA -fKrWnmmR2mz3L9x9vLQ7Q5VQlLhlBLZOm0xTKPTGA2dCcC1pzY8tY8lfUPfFuC/O -VaJts7ATSGQKOk5tGTKeT2718YVYWpUDHlwpMlQED6SrjaHI93Mdh0ad42uCqeJ/ -wLIJygcu1J+hEItf40G/RtT9Vfn5D9e9Nv4xIBNwn3yE4s0nINonVq7tRup65VQ3 -uBrCLjOrcXh1Zgk1VWN40C6J ------END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIEpTCCAo0CFAGUUUq45NPeahzoZpGAlA+4KB/VMA0GCSqGSIb3DQEBCwUAMA0x +CzAJBgNVBAMMAmNhMB4XDTI0MTIwOTIyNDgwN1oXDTM0MTIwNzIyNDgwN1owETEP +MA0GA1UEAwwGY2xpZW50MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA +v/W/kyRLyZ/SOX5B7LYOFQylywUpMZzQuc9rMoUfUSy0LsjbtWx1M58kHzo2u20H +Mz8V2d8EyFbBXHykUdySg0dJE3TT70AD/NCW3S7sBENR+CaqcyiiOnxycEzIem9Z +NNqFRAaCqks6PCO9EIjZHzOnRnULpYUhtsVNgrRZkx9DAdF2hkfkXHbiMS5AZUCZ +zCaWWV1sy9ZugZ7e4wEoxpG1x+xgMPQ/Wvq5+ybywoSlUJd0+/H1Kk36FmLMwzzx +35lV0UE7sNaLfxfsHxCenwgkIT5x3ckuuK+7Na/2w2izcoCuDRJDsNP/EsSCIsYU +S84PrvdUljpTsqfohU+TX7rFjJflkD3uW4pQZ6Pbqo4f2+8ofWmD1cdyqJYuO/r5 +pjnd1uOGROtygqKKH9W0hjG/u0q00Rd0fDfs0dyTwNdHFiLYoSQQMWBVr2hu6GAq +QufzzghT388yR1Dw11IIScFdwXjjI6h8HypUZDfh6Ef8a+OEocPi6dzWBDAtsldO +gkUOLAtqltfr+YCoW8knNNWaGznZj0WZWpJ4nX1+eEnPtf9o6mlj4gS6sTXVqv9j +KxEtd5y51d4sPpGZGa4EzVYN0X+BnqgDlLcAElMYMZ+kg8KZDbbmTifkgXnczn5F +xcBVYV6iLIDM7571fQmOwOAm7BIFhx7MGJifihvx6mkCAwEAATANBgkqhkiG9w0B +AQsFAAOCAgEAMIa9VwWvo9P8bkWsXxKtuxNXjdnYHDo0d62IDuMj0cDnBom7pPGJ +tXtgw0ucy5bwkUw3U4lBY6orsoXItWeIKYf6kbibdTBLuqaE2iTacfXg4Ws+iy3P +rdHkCcP9UJihutkg4V/gDkM+Q1SypIxy6ZIUvf8brFd06+yAJmA1fYfnjZIMZzXo ++aQokWKS47Kh5H9DfFHtUPTjGvbljR70FRDVZ4fYPCJ082EoLou9FTw8xVs5qs3r +ixBJesdlD7iUQSeFLMha2+4beTlDeXob0N/r9PVad51nV/VtH70YqTPSg/iUoQaF +v/Z9n9B0a3ZGSzuXw+YH7MfPjE6K++Y+5UKJJSE+8c7vpL5n8EvdRSUSpfmLA2T2 +KmidGE5vyJ+aOy5TRewnCLaRj/VB+lZF7nkDlHhimRM1nT8AY6TysVUMxV1EnltM +is6oeCUI51UNnK6b9opvgxiyQSj/xAxGa4RpOuwkIdR4X/DCGDI/VQ3zMp35IINO +rgCxEgyHZFDKFaTP56Dm2UGW7g8gg3yF9xloNyR3VqX4Ps77W/sL1V2M13z5DLE2 +ubE++s/v3Z0G8wBVZazhPWz2hCiZGM3PKO5NuR0Q6cEiACCXhHxeoWPYvE4GF+d0 +E5iNao5pV8XBH35SG7mB5X3neMyjDna4A3xnq9Gs7bEKXf/CvMz/W1E= +-----END CERTIFICATE----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/client-key-pass.pem b/tests/NATS.Client.Core.Tests/resources/certs/client-key-pass.pem new file mode 100644 index 000000000..8d040934b --- /dev/null +++ b/tests/NATS.Client.Core.Tests/resources/certs/client-key-pass.pem @@ -0,0 +1,54 @@ +-----BEGIN ENCRYPTED PRIVATE KEY----- +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 +/Zsk2ufCLwd5DaZDNdiGOg== +-----END ENCRYPTED PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/client-key.pem b/tests/NATS.Client.Core.Tests/resources/certs/client-key.pem index c65f565b0..862729280 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/client-key.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/client-key.pem @@ -1,52 +1,52 @@ ------BEGIN PRIVATE KEY----- -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 -byHEGnLKuR6aFPlrlmOErAe+AWrUE3w= ------END PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +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 +xv/zZR/dDSQ8van6CLkYOqdMLg02pQ== +-----END PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/generate.sh b/tests/NATS.Client.Core.Tests/resources/certs/generate.sh index 0c53c0d19..1d3bd4875 100755 --- a/tests/NATS.Client.Core.Tests/resources/certs/generate.sh +++ b/tests/NATS.Client.Core.Tests/resources/certs/generate.sh @@ -25,8 +25,12 @@ EOF openssl x509 -req -in "store/$child_cert_name.csr" -CA "store/$signing_cert_name.crt" -CAkey "store/$signing_cert_name.key" -CAcreateserial -out "store/$child_cert_name.crt" -days 3650 -sha256 fi openssl x509 -noout -text -in "store/$child_cert_name.crt" + + openssl pkcs8 -topk8 -in "store/$child_cert_name.key" -out "store/$child_cert_name.key-pass" -v2 des3 -passout pass:5678 + cp "store/$child_cert_name.crt" "$child_cert_name-cert.pem" cp "store/$child_cert_name.key" "$child_cert_name-key.pem" + cp "store/$child_cert_name.key-pass" "$child_cert_name-key-pass.pem" } rm -rf store @@ -64,6 +68,7 @@ echo CLIENT echo ================================ create_child_cert ca client openssl pkcs12 -export -keypbe NONE -certpbe NONE -nomaciter -passout pass: -in client-cert.pem -inkey client-key.pem -out client-cert-bundle.pfx +openssl pkcs12 -export -keypbe NONE -certpbe NONE -nomaciter -passout pass:1234 -in client-cert.pem -inkey client-key.pem -out client-cert-bundle-pass.pfx echo ================================ echo CLIENT WITH CHAIN @@ -77,6 +82,7 @@ cp store/leafclient.key chainedclient-key.pem cat store/intermediate02.crt >> chainedclient-cert.pem cat store/intermediate01.crt >> chainedclient-cert.pem openssl pkcs12 -export -keypbe NONE -certpbe NONE -nomaciter -passout pass: -in chainedclient-cert.pem -inkey chainedclient-key.pem -out chainedclient-cert-bundle.pfx +openssl pkcs12 -export -keypbe NONE -certpbe NONE -nomaciter -passout pass:1234 -in chainedclient-cert.pem -inkey chainedclient-key.pem -out chainedclient-cert-bundle-pass.pfx rm -rf store diff --git a/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-cert.pem b/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-cert.pem index 63d4f482e..f4f047084 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-cert.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-cert.pem @@ -1,30 +1,30 @@ ------BEGIN CERTIFICATE----- -MIIFETCCAvmgAwIBAgIUJbHWO3BLg9UcxXtxJWSFuGobwFkwDQYJKoZIhvcNAQEL -BQAwDTELMAkGA1UEAwwCY2EwHhcNMjQwMzI3MTI1NjQxWhcNMzQwMzI1MTI1NjQx -WjAZMRcwFQYDVQQDDA5pbnRlcm1lZGlhdGUwMTCCAiIwDQYJKoZIhvcNAQEBBQAD -ggIPADCCAgoCggIBAJCYnhCV+9uxoLHtjnDJ5ZUpLNUCd9erWWif6g29FVmp2aSM -tj7jL2HMsahpCU802P+PdsTDhsygzkUyWunO+D/+jWDJJOvZKBIUmHPnSVpBtQDc -mi4fqvngiGa3Pwx8U9URJP2AUuBqEUPspgsg0Nr09/WzJCElXVVqzh1Cblccr7KD -R5B0BymBSAIxyH0YDY5+DzUQTKAKQT0imIQA5SE8JqVxqPJo0mEMQFTyRlRG0Y0D -qBL6gYlrcUoua/EHqrR8xwCaZC6ibTOr6eg6/mgPBfnqQX4by+hA3J/niJBa/YUG -Iu+J64lKf02MXYGo1TOS5T2i8MSqGu93k5rulDHR5wWOFyAiKqUueC237S/RlRsd -MRxKEIB7PcoYn30bugHoHmAZZYDmG0mjnYEPZDlgmTIacGpgnCRPb1fv2+EBjnlr -xRN5iRMF8c4bRx8CBnSc/3inj5Xo72WMAIlntu6L0uv8mv1fywOI87kfno1Sandd -PH4Fv1B1C1NTLvitu31SzaOolhfXEreezz4k5njyzFR//Hs6x4YucxGFadkQieQN -z6W7oFkysMLMfR1XqxBFtPTYv+tCmB9CuDJqyKbKVAvP9bBINwxonHPKXY2AAW4R -iwhwEp0Ut9Ihu/eXmcpe0VJo2NtFjoQ5InmSvko9djZO2s6svowMRUoGy9lNAgMB -AAGjXTBbMAwGA1UdEwQFMAMBAf8wCwYDVR0PBAQDAgGGMB0GA1UdDgQWBBTJdgGT -IKYOHHaWwXkLkkUkkkU50jAfBgNVHSMEGDAWgBTdKnIqsIQL44dltqE1+aFtjASH -2TANBgkqhkiG9w0BAQsFAAOCAgEAr4QKagkT+p4byN2+zfJzfqxHhLxpJeUlSX52 -tLa9QEMapTWH2eTr8m49rmf0nDKT8ADWr4ECNthwrECmIULmPiS+w1tqbzUBs6N5 -Gj+FozVZML2gh4fQbchJAadSN5+R8HVorVW/BBI4ishE+daPWNtGX88XSMp8fbAu -660M5EmXASr0AXDfyMiTu0uhKJDbCEvCFN/4PXx5/Xfh9Qn5PYg12A3r8KPqhy4a -4MNScw028AMiD5KwTlRY0tF0RJWAVtjCmJ5X8cUf0jZcdOXB0JX6NbcVkxfqBfnL -zT6mzcrFLfrsOFHL6KqnRuDxKuCgXqtEZi5jH1ShHjbp3T8XzpNpYOH7qNmYPSSD -FpPdJvvQTbFPBQyLbExa1M93QZHO+VfzyNHN6XGdziagex3YzqUkux6Kw/NWE4PG -gyidWsEhn8csFPCTWzrhnqml5qOhqaPULu0tnEZelihkArd0FvFaQnRmU5/WANOE -mTXogM18kaYrouTqOpbazm5t+8clpnk70D4yZQUrm26ANO9cIl35s+aF9dpRpwbX -yAKavBmdiOAF1bml2aiJCEZjxUs/RFsak7cpYmLfYiajm04MB8nTiZTl63Spx0gK -aGZ/GHuNX4VTygsZaJdLma2V7CD/9EysznChtUQYm7ToykjS/OVa4Dz3r/ncCNoE -605ahco= ------END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIFETCCAvmgAwIBAgIUI3ZBk8LG/Iv8/caEPVLwWrAm19YwDQYJKoZIhvcNAQEL +BQAwDTELMAkGA1UEAwwCY2EwHhcNMjQxMjA5MjI0ODA3WhcNMzQxMjA3MjI0ODA3 +WjAZMRcwFQYDVQQDDA5pbnRlcm1lZGlhdGUwMTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAJr4TCMbE1CTLQL50bm6d1fgPZUTGdsiaOKN38UUE/hqUYL5 +x7JElB9L6HhNnnL0y6F9Fl6XVOpo/6Ad8ffI2Oakpz/hDCimbTILNpAqcViewZTn +kx88sukIPALj8Tt93L7KYwGYtok1TqxuqEE+q9DJZe+ERjLjh7cSJPWPG/9hiaNc +OlSxDdRFr2b8imvw6ZmIoIV4rrQitEjEQ01ztNcegdv17gaosFwxUY+X/BNCZdwY +xX+1KyL0GFOj3Evk0Dd7scZFL/ULKXhPFiULgt5Kp3TswwZHIgwUJx6XtcUcUjHM +xj0bFSUyi5jbcxHgnnzWTsvQKkUEhXHjogtedqAdzwqrgOOOyt5d76xC+JD94F4x +eRsqKwgo5dMJA6NkN8Oe4+XFPVdsb5yUwW7bbnOJagGZn7Ap4UTt+/uO09ko4k7s +X1vx50Jh6dD9VhWF3C8LPPo1WntCOz7bpXVL9iaDeUQ0R2fn92Vc7GR/zwJCQ87L +fyuWOm8wnzUn6Bx/1jUfsewg8devo+qpWEpcVX0T2XphyFWB2kPCMwbGXt6g8C0d +1HN3W2u4CO4VVYghKy3NoOaUiWQXAE1XOMyQeEvOPV305gR1V7YsXGRxKxwCsuf3 +uhhPHGXXB2NLcakYqgNyoEbZSxBTnQIFKqZV43RjC7RZhIB/9GZ8XUqqV3a1AgMB +AAGjXTBbMAwGA1UdEwQFMAMBAf8wCwYDVR0PBAQDAgGGMB0GA1UdDgQWBBRFyuy+ +aGXCGNygF2ELULb2YygTjDAfBgNVHSMEGDAWgBTNvA2CaWbBkPrv4t2ujpQTsgUh +PTANBgkqhkiG9w0BAQsFAAOCAgEAGIuvE1Sts6pQlEDDl+MJ4xl037iZNkpqjTzP +npzCx7BdvvLgXJtkfg1iFV5liet0mcwWVvPzPmt3XCb/iGcku2Lu9NZxHm2109GL +ydIiLDUjbdewWpSM9jF/2Gq62gv0nvMgw35W6OvynxyrZazOa9/lwpw5nCa9HiCh +eDM1nyZqM1F9VHeJpQg8xistRLTUa+GCB7BEohfxQj+MqlkpiYVzIzz2WE5um2Si +5zqpK7YHWl/lPenfVesdlQFnFBppvsrBv+WleIErUU99dfSJfJgm+C7f1k06ilhV +W7lb77cO96K1MlL/r3MdK7HaClEwbDbKkQPG83hQHAfOdaRgSwR2Mep2g5eL1hPo +jmlwQWW046mayYXBXYpe/Loc3nyzBV0piRTfCF1eOonwJ5NiXJDJhyAioCZHGLZu +bNiexRlycFyMqrCRp/nc0K3GWAKantS7NkRwHiuTyJygZsZ1U767GQkgeW3Yc8rb +g2AwglD75K1vdNUHRA1tXR3JyUOsOSxSjyowYAyMwQ2dkjrHdgGc+CQRFSsd/NwF +5qzqBnPI+8sZZI+gITSZdkM1YxUdSP9yqzGkrWQ+JJ0ByZ5V4VHGWtpvmJi6t07C +I3qFcbyxa1U0niOXeX4vqe4iWuSeHaJrW15f2QeJIjz1q/+B1bNVnkDyOc3WHnII +Dy7WTsw= +-----END CERTIFICATE----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key-pass.pem b/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key-pass.pem new file mode 100644 index 000000000..72c82ff9d --- /dev/null +++ b/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key-pass.pem @@ -0,0 +1,54 @@ +-----BEGIN ENCRYPTED PRIVATE KEY----- +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 +KNHbwgVGfGzb5vQdrv7oXoFWOaaMrR1vKOuto9L9xv67TJBBnNzllPbUqxia6sr+ +KZvYohFgM9rJCWmGXRiEFfhmcg8ebzEVvg3+6Cggv6BZq3kplbSXZDC9ibkXqXzP +/BnKFl+QxDpRO7fqxNDOcDLVqBco0gYEWzV6YZmopaC/2INvmkgTFdYEKaMpx24f +F3GidWZvxHcCp7WuLo173ONqwRUNuOs9UtCsjWUr9jTFHHVOBcw1D0+c682t8V9D +6Ladgb8et9m93d/A2/vzH6+CrSs8z8zrtlPFKI4XTdFbQ3KGQ3IHouZLW1VBaonp +ChjS+yw4KNPDSBC3O0BTulYGH6CbNmXKCmNE4qZtQR3pC7xGiKUGvQCkTVlW1ZVT +K15Mdlw3Otx1fwzSjgepjswSR7kI7kKSFvUwSiv6yTUhJjCMAwu5qQyVf9+epvbo +PtYdcyuVfaXrozA9nkmXZHgsYsXRaU7uod2pk1p4n2A/9v6lxXxZNgbjZqBIrxWb +JZZsKVfwKT7PVu1mY/Ez25HaNWzkz4ILn0BOHEfGS10dS32l8sV54WYoI+o20lUT +MButhWnkZkpLg6RnN2astYPoIuKesHC/2IP4qhOX34fbe+QBeVH0x4Rn+IroN1Me +FdK4kvhNTwm34lfSRXiz5XKJaAqy9gKEtlRJ525+vGc+eXJ3zLqMiBXtUr5EQ0rr +9RHFUXjDa8mLiWZl5x4e+JYRoY0u7j83xnMk2KZ7pF/v1MND++M4hR/DsBiKQ8wg +CuwO4ZKEhDCQtz5arvJyXk91RvvotEBsCKNltPKC2l5UtYq55EseqTSCPRhehULC +fMtOPv3EUel4QjAwrE/x/Q== +-----END ENCRYPTED PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key.pem b/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key.pem index f1410368a..e7bc92f10 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/intermediate01-key.pem @@ -1,52 +1,52 @@ ------BEGIN PRIVATE KEY----- -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 -n1U6RduXmVtr7viNAu3CaeWgTT1WneFD ------END PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +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 +7fCZTU/xQE5sEAx7CnHMYq6bGcZn +-----END PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-cert.pem b/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-cert.pem index d89256dd9..ba880ade8 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-cert.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-cert.pem @@ -1,30 +1,30 @@ ------BEGIN CERTIFICATE----- -MIIFHTCCAwWgAwIBAgIUPOSi6gfOJ5FX3wBkP6T2FCQXRKwwDQYJKoZIhvcNAQEL -BQAwGTEXMBUGA1UEAwwOaW50ZXJtZWRpYXRlMDEwHhcNMjQwMzI3MTI1NjQyWhcN -MzQwMzI1MTI1NjQyWjAZMRcwFQYDVQQDDA5pbnRlcm1lZGlhdGUwMjCCAiIwDQYJ -KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMOTd4fKGKQAHskxc+E4klqIT853mhoj -cLk+6NUpyf6ecKCSVUcYL/Yfm0TesrhW1qmJkWML7cDHaXJ+DDOKAxZYp/nFvbBS -AHBeLmxHzJMlsoG7Y9pPwh80vXBQRUgx46/ySyKt8DRnlFRBc4oJr6WK6mKKBf+y -4QIpdNXgzWyWnDKko+ZV+wtBt05EfcAWr7LrAYM+qxFPOVSeTeN2+06tbEZR2BtD -qBdA0p5F/x6e6/K21kANIbZH7txlVwe7w+Ch5iYXIpHKNc98C4qPnNZ97a2eL171 -oUlGbrRMQKjgeDafZ3st2I/t4uBw/3v9xJ8GSVKbIOPK2V0d3HNFdJXoFy3sLtK6 -pwwAY5ScDjxxpZE3FEU78fIM/EWyoWo6A95TIawnuAHKsiVKrxOPuK2O26koe+q8 -khzYl43UYcWLJUbdGil7CJCZoMMKL3UuKTTgR7CNUUP5OQ6qihLyDJOekE6XatMm -jRe68VmtPd12mNqy0irAkDP3xsJvl9Qcwc/9A4wFU0wb6FkRA7FfSD3qcb9V564T -4dUlsp1I89z7KL6X74EhoQotfNktarGqNz5RRvtoMjf8P/Y6zRDMAm1vV2EQElLZ -qBErd4clMHmbnDdt0oiTvy9G19i9OSAOTHMkDS3Mb64dnsR4U01ocN09QLFzYWTS -NxXvBdExe22PAgMBAAGjXTBbMAwGA1UdEwQFMAMBAf8wCwYDVR0PBAQDAgGGMB0G -A1UdDgQWBBRBbQoRELIdDKEwep3IZ4BoHVKmBDAfBgNVHSMEGDAWgBTJdgGTIKYO -HHaWwXkLkkUkkkU50jANBgkqhkiG9w0BAQsFAAOCAgEANY0fnUaDyvIKpQGKAG84 -4eAKBfy/R1sP2RJRzFnVHbaW1xcINm9molGOAm0TA0kEowtYFew2unF97u3zTZgy -ddYesgQIp+jMCfVLa9xaOA8eOujBrxTottg6gA3Pof+WvySIkc6CSgtRjFGC4Cz2 -OasO06vg65UrZmbpqwc6vUtz5Pzgt7gqGnp+VkctQuisoD9hgGnLddbxIOAiGACt -66BO8ShlMG2ILIVyD2GWD2DK+5qMGd2iVmOlx7aFsd8cMio5PFiOpHJRLICl7qzN -/NLy5AJzdOIZ43ZJNEmQS0xoK6dN0R2Z2QSC1vClFhDP6fC+WCJBWgh1nYrtSnO1 -aaJukfTp/nOJFiRiIUoKteu8ip37mWGvDqyaNONzxgeuNl+02piYOTcdKTLbqrQ7 -VJs9ZV6VGWL7SyQRsHotnkZzw/MpiTPNih8KT6eIFDZEQC0jGAY1dCdoPS541kYY -XQll7ZzONdKze22mBBtggOWL96YzKTThjPz/1PtELSwjBDZohkC/jwtxJxPPCCCp -6/nv/XqUP9F5uxu2dvXcwXpNKgvBQ+pRphNb8MNZAzZyX+ES75uDL76HuxFalRhr -925O9JUvFQoJtKrt+X7XmSap6QEgtrPPGc8YOcYFm7ZIsoGkLR80UBB0gGEMiqIM -gNqJp73YSxuN7E+nPIcYi/Q= ------END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIFHTCCAwWgAwIBAgIUdgeZyfzWaSKVs3XyRyJ86Znb+r4wDQYJKoZIhvcNAQEL +BQAwGTEXMBUGA1UEAwwOaW50ZXJtZWRpYXRlMDEwHhcNMjQxMjA5MjI0ODA4WhcN +MzQxMjA3MjI0ODA4WjAZMRcwFQYDVQQDDA5pbnRlcm1lZGlhdGUwMjCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAITjZwCHQYoG5SNv55xaIN1Ez8DuzJTz +RJwaLUZEpSpz7/RyBctv9WcmmCOK80tLbQGV9I16EzGf7Bur12JLIYKvQKSqwPo+ +mJP4OGTcxq6QNfSb39X2q0ulc9XvyUrA3Er+LU/n5yzelv9RQhZlUGYkKg7jO874 +oj9qHjDJC14KH6S5fPPe+cksDJfFYP8apBuSOApLrAN1/YVYVMmZIlz9X2yRLOrq +2PJ1/n2giAP3/E/SSsEfwvihmZe5kU1taULEHFUnU0WOXBmejALwQP2l8g6m6Wg6 +uDU1lpCeZ44qgahNVJzY76JS1MD/fU0uD7QaUXxtZYuEqE0XfNiARHUCkzHjr1DV +OdIfYj11W0w21riDPSwDP5JGm4cXhshzi4w5XUQntJ9cjKctrAsUX2FxXnqCq5lA +616ZIwQrlvMh9OfLXgeUxutk8agmrf53K2BPqdeHvhxI668cTcfBqWvBd2jGW9Ms +sS18EcB+DimdbECXNt+J6HBGw+HWXl3vt8lr43B3hYCcLjkcnIsPACkJEYwxVIdZ +iM9UJjKxjZkPhovh4EUtyxjhRiCYbRkCyHBVXn4MLwCPSnJHRY5KF25bf7N/jOp0 +PTolVrkAvP9Synx+yN1yF6nJS6aYmz0uSNC3kWIxAmloVrjMpF0fByJpx8Ze44gy +FI6IvrGPt32VAgMBAAGjXTBbMAwGA1UdEwQFMAMBAf8wCwYDVR0PBAQDAgGGMB0G +A1UdDgQWBBTCNFwtO9UwzzgXCiIJm5HpR8UIQTAfBgNVHSMEGDAWgBRFyuy+aGXC +GNygF2ELULb2YygTjDANBgkqhkiG9w0BAQsFAAOCAgEAfZVICdNJAhO3int5KE7S +5NpUxyOJfwq71pWUbgvNLDCt5BoIifnb0NXMqwzlo7xAHGqpXGkr5i8A8qAlQt9Z +D54vX5+Vx3ie6VsW0dboZT3Yxcet81tuNMAyufn7bjPm+0LFqytfDB3YwBWF8K8/ +DDpu5s/ER1qYdgk/e1JDYUi/jB5aT4Gj9kHgRSK2lipzWvb3NNIAUBBXR+S015x9 +tchF/cHbq8aEYwsQ25secAh4jMVNVTMS6wklINZSZt+W34PLRbNQZBbNV2m9iQEQ +7q5WKufHUh6TK98Ps+9SjRC5iPWx+EUFuYdIISjdSluYGp4cWUbGBuvKZvPN1JQF +xZVvCivfsQlzXk3wzyxAnsCocSBXjEvRBOLPvrikwIDnnrV6C8le4EkpixGV/e2s +OlZ9G1fz7y6tJ3ooRnyskuWSO7SMyAOY/LpJ0DtcrfYXX8M0xcJQcjosFJnQU7LO +OOxX+AGKZaSLbQHlcPDqN5o8/9PPu3nm5QW+m1YiqHS/c2el83MjosNBXKKeZ2lQ ++mAJqi2bFl94v+JO/Sa861aUDCCS/h+klKQJ0UIS/vuPDbiIdNYEO9/mr9zZXjR/ +DaXj2omiXuXaguBT+7VgJAxenQk0WBgBFAn7zlJcHcBjcYq/8DPXpnxO/FOIhHOJ +Whj8UUmsplnn0hlpaxN5/S0= +-----END CERTIFICATE----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key-pass.pem b/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key-pass.pem new file mode 100644 index 000000000..a09f8258e --- /dev/null +++ b/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key-pass.pem @@ -0,0 +1,54 @@ +-----BEGIN ENCRYPTED PRIVATE KEY----- +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 +wGdZgxh1PLzXtbjWkN9cTQ== +-----END ENCRYPTED PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key.pem b/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key.pem index f3965bbf9..207de3ca1 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/intermediate02-key.pem @@ -1,52 +1,52 @@ ------BEGIN PRIVATE KEY----- -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 -YnVWWsDe07c39iBqQxC/jvJDRmvOLg== ------END PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +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 +Si7oQtkrF2Gy1tO/rVVdBJP8mWLS +-----END PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/leafclient-cert.pem b/tests/NATS.Client.Core.Tests/resources/certs/leafclient-cert.pem index 1d3c2ae50..b1e639436 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/leafclient-cert.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/leafclient-cert.pem @@ -1,29 +1,28 @@ ------BEGIN CERTIFICATE----- -MIIE/jCCAuagAwIBAgIUXpau3ENKB2jftYXqxQXuzfDi/J8wDQYJKoZIhvcNAQEL -BQAwGTEXMBUGA1UEAwwOaW50ZXJtZWRpYXRlMDIwHhcNMjQwMzI3MTI1NjQzWhcN -MzQwMzI1MTI1NjQzWjAVMRMwEQYDVQQDDApsZWFmY2xpZW50MIICIjANBgkqhkiG -9w0BAQEFAAOCAg8AMIICCgKCAgEA7FdBSbNZ6zsX7tOf+N7PPAaL7/UHcHzLJcmu -wS7UFtTyolT6pc4AsJ3cpZI0CSmFPx28Tj23GNuh7MimTsz0Oh2VJPoAPq8JMt6w -SV6cw9p77VmUn53vXddFkbSAOHY+9qS10xBxecwE2DO2R3sbP78tSVyEXybseJGz -tG6cjETvW9pLaASQeW+0gE9YvHcS30NHBamCdqjyLnBB/vLpd63MrPnPYkw00wqT -37OIkrJjXbblqpJUHVr4wCZP+oMoJCxLnS4UZW4wlZOIJoYOBGAJjKhJJoiA7795 -r9jEfLBE8w7Hl95bj6es4Z9meZiw2B3Ri4+d3lS8OKshj6G20qjZu31EoLhVl7mD -V2nSyspgw4kCdeinffEgkRjQ7qL1/xIvY2LrXgut2E+n7Hwo1el4rqUo3SoVolqC -SMT9TSv02aI84qAzWVq2aHU8CmUhmibkOdkrG9WxsIF7UpmxXtrpXaJJw/sdd1eB -5Od6TJ8JkmImGtCzoAiqqfqCQqEMJr3ekjxbUcORM8MK7IlCgCR1JdUShIa4h3JS -9khaUztwvzrFikpoM8q6aLHfo6vPfupPW4tAZ2hZF70RXeru4rva6bDo1EoyByoB -oZEdsJSH1MHa3PymtZZEOJPYj29L4wbyMXPxVe0jZef/Aa8HByg9PHo8QtvYuLYZ -noppKxsCAwEAAaNCMEAwHQYDVR0OBBYEFJlZvUGesJCbrUG89gWibk5LooV5MB8G -A1UdIwQYMBaAFEFtChEQsh0MoTB6nchngGgdUqYEMA0GCSqGSIb3DQEBCwUAA4IC -AQBqghQJb6xnm8+j2encnlJk3gnhiTHFX+4F0vYxgFYByzr2RTXr5qUXzlCNght4 -XIZ5gJMfKuGaQSmDgLO5Q0+PyNnkIEqowrBXFoUKXYcl45st4uOnsTLn9dbctRYX -yXeQJ7hlyFjiaoJczH7RwXAfl6nvffSI7NJihZnQykT9fACsnSKL7FxCTXXpeMQD -TpLeDMBdmGRhKqo17KFKNDh+Mxgefhuyhn+TS6oUo5DKMLzEiL7V81MEA+B2754k -0PBGnwi0ChJKQ4Ljr4XTvAGvm9Kl2VxhrbNoNTs+Qc44Xp4GSLBVIR1U8LZUrN7b -JVZotrBOxYHfKVz49eh8WiTpniy9ZuT+bVyPD4tL76VDCRjMgOabecVabSu/nS9V -jkofv/eGSztlYMPJtnRJ5xkkmubfwM0qQUMEiZlHT557qdRWCcqcv9weM2uU+xOH -R8aKt8lnxVuOHhZGa8j/Kub/cj8g010+D1Cj/n/c796cYu1BK1PlUpaVdBJW5T6Q -Bgyu3OK1U6X4HXFXgBIV3R083IciwbDEeyExgmvzmAhlEQZsql6y2JLjYDCY67sd -7G9vak0q0EmtVQY5OHbyuiMMh/5MuUigfGjPGfFZyb8lS/UOS88vwdygKY4NlpMn -RkszIw6AP+ZR3RWV75RIzZzTHJZkDIRNDj+AighzvAphTQ== ------END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIEtTCCAp0CFAd2RvTnu31QFlz2TV/FmzzV0gFGMA0GCSqGSIb3DQEBCwUAMBkx +FzAVBgNVBAMMDmludGVybWVkaWF0ZTAyMB4XDTI0MTIwOTIyNDgxMVoXDTM0MTIw +NzIyNDgxMVowFTETMBEGA1UEAwwKbGVhZmNsaWVudDCCAiIwDQYJKoZIhvcNAQEB +BQADggIPADCCAgoCggIBAMWS0lRMw5L068ESMzUIlPGijeNwLkrjKg7rnJHDQ9/g +tHpNPImMi5+6gDLjB4+k+kzTYd1/rXzr13GOSaahZortauFIF4uv53RaTtSSNs2r +utFp99PaqdTXDs9GoDFq60MAMytn0lvCdJlJDjWu1uqrsduqrbv538fGUJaK+Btn +CTlHOOZ4qwCrpE5do1NfW4OyREaJHdx4mtS/nwFUWPdp2zBdAPspGUwr3M/SCL+M +TSHRw3X/9UJdaCtZ/03YnYmLQrqV2NzfVLKQHquPJ2cXVC6dc7/JCG9KNdVGMikN +vy/WBZJ5SXvGXkONbo45ND+92WC4R4PM+KCUkmmDVzQ0f5DgcpfarMg9ab0OBNBV +2OeH0f0LKRAc8xcabnID48GdOnnNL6tYC3AZQdncy7pV7wgaoSxOIAjf9GuRmRpe +cK8t0Afu2odgXF51lpICcpz+an+8p3J3/aS4ib9sn3a1dyLdIg+DDEfVHRgr7LwT +UCldXG8uk86ZmTEKs7SBKdd5lEdP0gRbda6IsnDdtA2jJE6o5M+xQoMg5Fu8Ov7D +g+4VNtLiMItbS/CmY6okG90ubwWiSQdHNchGfCBDR1WRDCnwrBw6xpP21IKA59kX +Clb0BjCDDpBlaZ2fEzhSAQZ4nqmqm00rJOTqEOZmOmfbG2fBPXINh8yGeIDEpBcz +AgMBAAEwDQYJKoZIhvcNAQELBQADggIBAALeeNMCNVVnJpIeX5BipLQhxTenn510 +LRqYxfiE3o3/7GMyqwpNox/NgzQq+iUktRSJNkltjYzjuzOU7tE++K0MYGnVXN6t +Xsldgpkr+6Ajcd8SEGJtqqe+dhlC7ZeoffgwimJbrIKDXxkbgynoXbPp2TD2k8Gs +QwaJxJOnmJEO7PPkwwYBQFgbUiXU+ML3s85HdW8K4aUwN4hJ3nLbj/qVIqWli3iQ +uQJqZFWpJ5OFRf4pfIiPPB6UFj9+Q8+nEut/aym8oHz0HxKpYz0oaKww5YRXMNxh +HP6LlPei+fTqjd2WCwF+20YDvK6sQP+5ObCXSiZdzN5ChRMmduVEp4rFthZgq0cb +aeFKoCTBdqPYUIQu/S8+5E4pfQUrrkEUSvq9WsskJBcNt2N3F6VcWrIP7L04CoDv +m/4qJvhaYTp4eRva7/t/8w53MLQx9qN0iwiOD/mkIi+YFQ0ZurTpc37QNWo654kD +xBwqGY+WWsLxUedGq+2Jntu16y8ST/7coUfaZ015cINAFJC0DJRFQkyltHV88rUW +0leZ2zpxG/DS/FHzGayejvk4BSyIbC1dExVD4OFESlPPwGmht5x+Lof5doLreIEU +NZqBcbHM76SqAI0alexXzkEaYWxKlpyZRRVjmp/ld0jXpEvt441paqK8PxjFmny4 +bAyCXsXmzBEH +-----END CERTIFICATE----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/leafclient-key-pass.pem b/tests/NATS.Client.Core.Tests/resources/certs/leafclient-key-pass.pem new file mode 100644 index 000000000..9ca211167 --- /dev/null +++ b/tests/NATS.Client.Core.Tests/resources/certs/leafclient-key-pass.pem @@ -0,0 +1,54 @@ +-----BEGIN ENCRYPTED PRIVATE KEY----- +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 +2Ys9Ugjz75ScHT2Bdezyzw== +-----END ENCRYPTED PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/leafclient-key.pem b/tests/NATS.Client.Core.Tests/resources/certs/leafclient-key.pem index 487633769..a965c3c0f 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/leafclient-key.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/leafclient-key.pem @@ -1,52 +1,52 @@ ------BEGIN PRIVATE KEY----- -MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQDsV0FJs1nrOxfu -05/43s88Bovv9QdwfMslya7BLtQW1PKiVPqlzgCwndylkjQJKYU/HbxOPbcY26Hs -yKZOzPQ6HZUk+gA+rwky3rBJXpzD2nvtWZSfne9d10WRtIA4dj72pLXTEHF5zATY -M7ZHexs/vy1JXIRfJux4kbO0bpyMRO9b2ktoBJB5b7SAT1i8dxLfQ0cFqYJ2qPIu -cEH+8ul3rcys+c9iTDTTCpPfs4iSsmNdtuWqklQdWvjAJk/6gygkLEudLhRlbjCV -k4gmhg4EYAmMqEkmiIDvv3mv2MR8sETzDseX3luPp6zhn2Z5mLDYHdGLj53eVLw4 -qyGPobbSqNm7fUSguFWXuYNXadLKymDDiQJ16Kd98SCRGNDuovX/Ei9jYuteC63Y -T6fsfCjV6XiupSjdKhWiWoJIxP1NK/TZojzioDNZWrZodTwKZSGaJuQ52Ssb1bGw -gXtSmbFe2uldoknD+x13V4Hk53pMnwmSYiYa0LOgCKqp+oJCoQwmvd6SPFtRw5Ez -wwrsiUKAJHUl1RKEhriHclL2SFpTO3C/OsWKSmgzyrposd+jq89+6k9bi0BnaFkX -vRFd6u7iu9rpsOjUSjIHKgGhkR2wlIfUwdrc/Ka1lkQ4k9iPb0vjBvIxc/FV7SNl -5/8BrwcHKD08ejxC29i4thmeimkrGwIDAQABAoICABBoED6zBiN3wzYPl9PZd85l -b/J08pLC/wE9CnYbr5p0JvHQ72NyNQcNtmMCDr2yFa9ne4p860h8+rUqyqy+upeM -NS3PcxPm578RyXAWctB/ysmTxeb8ukCr8IboXlxNDRrnHT4tLotzd8Sgdl9o8t/O -gDDPDNtkItdN2glFAnYUVP9t3H04j+T2NbQQjgrrQzKfg38noMhm+wTxQwuVRlLK -DGLXpqdeve4GlnRZjLoOSyqWx0O7i75L8ee44SV1VGSKdKdRKxZNe27uwm1WMgPo -vND4X7eek0DRbHuiEyXKwMaUuJNY2sdSrwQsohr/2ArwqvrCugVUoYpXiuljIwND -kRCHobKnVvnHGB6R2uX5lhjZ5SR7d6fz5yk7RA7hbRoCiMzWW/6qA1UanthSy7Yv -UFtvqSBkreAjdpVi+/Z3x7Pd2U9l0eCoMri2FLAyFXs3FqtWmdw+7DqDoXbYVol0 -3A9Pzv2TlYPINQcjDSfa+c1GdtxJMhH45JjQ0IEVH9fkRWqTAbZUjhiqv1xIX25N -vk/F+NEhGkyypHkS28msqpI51OjlNUbTQ/C+6PKpM+0PADXNLkInyQVXZWBoUotx -bhkGPQ8RjacLTePdvcghwpVfj9zJxJx/WS1ZrVDGF9jLRvw4Gut7+aFRU5wn0Q53 -Mq63ZOokOqsEH5c4lqsdAoIBAQD5NYWfALQEqrOg4xZZgJqaULF5S4ctEngnc95i -NRyoV2V725Hn78OcvPJ5sp6HeE41rtsinfGA/hFNBQX4Eki9QMsaOaRiVSXkFmDO -Zh9cZPXwxJ4iPAEGDv5PW9zkJiWrGuDwU5BwT/mFbfD8pynMOQmNYvOHNTvUukKk -Ln5tFybi6mrtPeSIDz18AgeeHIIWSgUtDMRLDjBC4ES6Lj1YagF1fbG7LFyC91Re -C/75O1BKFMUFDZPuk2H3eMZwMq4WeUjv7pik+AMHTCA6r1mvx+0zkJQclaKhOo5z -ahVvQpMlYpFbV19eBW+V8JHaoPLqOkk14zvz0Qi4oS334+a3AoIBAQDyx/brVdSd -vj3CJRkkRUF2pjr4VbR8uIiORnnptq5OAzbTa0pBOy/bkf3zOLDe06TDp3WYLMcm -+xqyr28b9SYKQH+L6dn9T5YSeLPK4dTu0ItO3FBFAR6mToUTQpLXB/UMuKxAKrxb -uk+cS2pjnqtpTLVE9Pdl8j3imNX/O0REHFTJzV04TzwYAWahEKhjGpZ7EoljB8yP -iipXaw6NBsbUheOlT8ucXPQzYJs+NUu58f9c/9M+33/iXkAsIr7UPDRsH9nZTz1T -w3Mvy6NKA+JFk/p0Tu90e/jSczc7Ubmz7K1PcMLzQi1QyqqONoe4a7CvuYXYhvgn -0pxys+0A0Nq9AoIBACguiA/+JgiGmZX8Z5Mg2Ey/bA45rl8HFlaOKTI+jBNcnCFf -YuQ51ZmFIbebpFIFhN7FBdJMEy+QR6vafn7kO9RACT9+QdIVFpnzPcKp1q6oHLuo -iDLO5/9ZFYooLrKer/4pxFEbuDNTwdDQzEWAko26OJ8ScF/BppcDPVGJqZrfW8bE -s17zVtDVXD2Nejr1L8h2QOVlpJTRgdiWnp5CbGPAG+Ic1TZvza7UQEc1ufPnq2d2 -d9n7uXmDTA2B7MUUdttqzOba2sPmtV5M2Pl9YoGkQ8vHqQn+2o0SivtzBGe/HUiu -3u8SZG8dg0Ny2aGdx+0aXsmQjQ8gCj7yxh2tInsCggEAIy9rz6t+xuW9WZe6zxDi -bemlfjwdjj3IPKZmIMMC+/dnSLix6EZFp1K/NTKwH3sY0+o/FrDWpAWcVu0p8ylS -PAYg9gwMNbQFEeRAWlTkYUAEEIfJcla5NG0IyEPLuDJFB3T0MdB/v+N+ii472vgx -627cjoPaHwI+icqQqQ7T0/MvLpf+vJxvHyOE1i7t2H8P9AI5uwp0URE7FbRERZgH -1OEanuizn5OxKIkFtrxOn0I9OiMxYFlP1WTHdB4M/gFDr6/mCKJ9Rth6pyCiJ6Xs -cx0BHT4bYgxdgVKFXKl5emQAshSrjEm4+46DrVylysqArtb6WOkmqc7SMaV14bpj -GQKCAQEA4S7ocOIrotyhobxSW40fbByZIIJuwQqNEAkP0oqpXkOvjlAfFhd6Q1TG -8wiig1exmtscm/OSw977G6nzCJP+68lsl8Ks9jqbRY4aZbafgq3S33jZtLz0Ba10 -Der9/42gwovk2tSYjdqrYurZNacOSvMpmDvbWxQ3gbi1lqdlXcVz5gG6//PkHGJL -k46SIGBGuhv24eDPOoegHusNUhFuqhkdS4DK49RuPWrdk0/ulwlX+rVmZ5iYKqTg -6eXAhj4aKfgsDixMOxUFAeFSmi0HKo/2Nu4jUVWFFpdBKlxzK9L/b3psF90V23// -TsB2K4Br2VbrsKJYr1awoJEOUw6S2A== ------END PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +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 +PeXyrY0DPSpDc8K8/qV2qn8n3RdtTBc= +-----END PRIVATE KEY----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/server-cert.pem b/tests/NATS.Client.Core.Tests/resources/certs/server-cert.pem index 82a89d4b1..fbf9effe1 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/server-cert.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/server-cert.pem @@ -1,30 +1,30 @@ ------BEGIN CERTIFICATE----- -MIIFOTCCAyGgAwIBAgIUJbHWO3BLg9UcxXtxJWSFuGobwFcwDQYJKoZIhvcNAQEL -BQAwDTELMAkGA1UEAwwCY2EwHhcNMjQwMzI3MTI1NjM4WhcNMzQwMzI1MTI1NjM4 -WjAUMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQD4wGbg2KwOFve9G16XLqrZEEAX5EOo9DSUpIN7F4ssP232TaXixWuM -I7zWO7EizH+/vVpezCP8iii8jqwNCh4U+UOlmz6D1WhXfgJhjddJu03o3Giilv+P -X0mqa6LdIFaYIbfVaVoKcpNbX2CP7uUg+/anS0ghw3h4pKhkuFxJuYzDyiFxDzvj -f3ZfVEd4lX6ZS87pvohdMnXEKuJp18rsDIg1ELjpHpwzPUCT+RBj5QAWzb1IP5jY -8lUpv6P9xD2bAk22vlYqniZOO2sZ23q0MOFwJ0coHasJcFfHzueVZ7xd5X50UNc6 -HKBO2himrEpgBiAC2rW7IKDZVEpTfr1SzSVNjtpzbQCW2sZS490K8DoX+NPTRv+d -EaoBZaONlQhcND8w7wnXQSfIev8xhlZM34W//mk6ehqTMKLu74RUEgf6fq8N0APU -mKcv3bPTKz97TqaBdW6F2+77vN2XVCVDHkvqP5PpDbyfxoV2W0VnR3DzNePJa1xZ -GwGNqAHeyy6tQgAPNwODaY34FsMv/GPWgN/mOrz9D9Z+/ZtjQ5BPurktMfhbhx1M -Z07Bk2uoqe6+UiQ/nyeZBCuc5n2ts/jLI4e2HvaC6IRG/leWlJvO8QW0mvLGAGDd -knF54QbLVqKFoMVPcugnhIgtgSJWdidDEKQmyg8f6EJ52vhjETEWqwIDAQABo4GJ -MIGGMB8GA1UdIwQYMBaAFN0qciqwhAvjh2W2oTX5oW2MBIfZMAkGA1UdEwQCMAAw -CwYDVR0PBAQDAgTwMCwGA1UdEQQlMCOCCWxvY2FsaG9zdIcEfwAAAYcQAAAAAAAA -AAAAAAAAAAAAATAdBgNVHQ4EFgQUuX3ThDrvCVLOPzpPen2g7Hbo91MwDQYJKoZI -hvcNAQELBQADggIBAFYuVM/FOxwZTir5H/JYmOqjP1z+dVJEjFLAYIOZ/V1erHTZ -NOmRYm5N/QZPZwVGiTuuopUKcUK3i5dGJw9/tGIstxZFwK1Hp+rgCstt5qftUENP -KxWcWj9JVk3oHUpEYPb8kTzgj+54z/yXrg9Z8bFw1wqT6bRE3JpU8IvxgC5A7fKN -Pp2NYzW6GC3/R/TehFdi/ZVWj1axZ/gQ/0x5Zfp9i7Jcy6Gg+UrQfOR5Kz9dATcc -GCIoxD/Q49v2JbwQUOCp9J62nL2sRHe1poL0fA6l1HXkuMefPZDXf33F6EckJxS0 -pD1l5TmfwtXwed36nMD3Wyc7UhV4xMJuwf9tLrBUsUWS11d06NFRqgkwdQ5gamNK -+9sagF9cgCQTA/ClP8gjbB2h2XcWTXzixkVjNNqlO4v61DgJDUayjrKNGWKCjUrX -sCGXbCzKuPrlTvVy0s6o5b2HoEvlMUrzl5+uoj7odQeauHaHkX3vEimli7X5brR9 -wA6nzS28mikFNEJlGcD1i40upiaWBE9+aPXKfqwzZmjmxu3Nv/d8P41tZzEVJgk+ -uEiJWyhgzbkXHSa3gV1P3TvvWCyGSY0VzGboQwndLlxCjAsBIhdGTNCt/PbYIE08 -ZVW2dy1BRzLaEwbhklc2ApaxN+cgdEJcstcDDzgJgZ7RiFHjrLyw7+hSF90T ------END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIFOTCCAyGgAwIBAgIUDPiarkTVJvJ3DfvT/WToh9ITC2YwDQYJKoZIhvcNAQEL +BQAwDTELMAkGA1UEAwwCY2EwHhcNMjQxMjA5MjI0ODAzWhcNMzQxMjA3MjI0ODAz +WjAUMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw +ggIKAoICAQDGcrd0mtNCAHtXSDUgD5C6tZTyH3jcEtJ2erIvs4f0H/N9Jt3GzkdM +I7ihlRnVyFV11Ob1eixycITEiSq/u+AXPcZYw4DX9PnjJvaC7QsSHQSewOCr9r+D +c1owGiParLWtNdM2Rvfath1cid53CnAFvTkFDwoc8CZu8o5ebSPymTEfkb046md7 +ZARugHwnSaFD6caYrjZovEa+Dwl6JoKi/oOFEcQUUvbf5MCrAvcQNVdvgEgzF/Ay +3JbMeIS0GZIEauk5tETnShT83JKoOtE+Bx3x18Vot5lpw2celFOVQ4HxwwdmPMLb +loU3vEkwWQxSrREgQ1aKLUtI9/kuyP8BcYucmTFgS+b67yTuIskES6sQAsoFemLj +wxIs1nhOfI3P+8qVt8zytN8SQuOz5TzfxQJGEs2udY751PIscleh/Lm1TnrOb64U +gApakE2GEBU3h2qYszMBzH15Y2rXybg++mF2lvxq0s7argL5Gae4IUQORJ1+LSAR +QzaVX1fqmKd/prc16US/qK4itx/fb6mtUQglFP0lVzE2j6Ymj0xjZVs9dSAiwITb +O5rvMuDvljFzjhf77+dAJVCN5d4K4AjQhvrkhyLpfzZkV1mo8rtOTqYN6GGo9+W6 +Krzy12kbgk7E3Ii58AmhOI5RIE67ga1fYcJ7F2JHBUHE4y30e4cv0QIDAQABo4GJ +MIGGMB8GA1UdIwQYMBaAFM28DYJpZsGQ+u/i3a6OlBOyBSE9MAkGA1UdEwQCMAAw +CwYDVR0PBAQDAgTwMCwGA1UdEQQlMCOCCWxvY2FsaG9zdIcEfwAAAYcQAAAAAAAA +AAAAAAAAAAAAATAdBgNVHQ4EFgQUBfZsAJFxNlRiEOftZ9iwQgUCsTswDQYJKoZI +hvcNAQELBQADggIBAAd76Hn7po1HVgdAf3uhXluiDjamS6DsEX+zfewXeUf7HMTC +Uw4OwbVdREWBFqrB8+bdenDPpAEsCo67dhx2Nszkrl/h/2Y8pDoUb1hIslsviHVu +fNAOkToLg1+Vlvfsv505YNKQ48hrCyNssBr1Zk83wmWuEhYAZLWkB4/Mm8XP8Wvt +UyW0FlCY59NUL3xEUOWOE2uzUumXMalCld2N3ki1uizs9doYOhGA9s7+yA4LJ3pn +0F6PFip+S8dGJqDuVUlJJQZreTo8hZ9OiITxOhMks6NdGlwCxfbpFq2zgjbAqeXs +/4tpvkDetluXKinkTSCUFx3SLWpYgai019hzpJ32kQwH8um8RbznMjvFD5TO6uh+ +LHduDBAlGkiOaA6VnXt1nM15b1g0uMfu9nGCbMTYJ38CIYI10AwPIYgY3yQFKYJz +zVlNt6Z72VrcwSJSqYQaw08GjhNl/ikOhYjQwGN2YqNmdo6Gh2ZpStnS54OackKZ +e9yAbOYT4lGSuR7vgmNnaX5vBq/KY8rYLJ8nXxOiZLbdLTDSA0OOz74XQNLSgwtq +/RqmqDSoYDhQjBlSEVTxEqfY/bLoW8i8mylvkGRmVTo3YFkc2x73srWCS8PpXhY8 +s8HiIzEamnLqZmxVSDTGLZO/3YYPHrBn+F1oCSwIOssUK4f0rdavMW70mDrA +-----END CERTIFICATE----- diff --git a/tests/NATS.Client.Core.Tests/resources/certs/server-key.pem b/tests/NATS.Client.Core.Tests/resources/certs/server-key.pem index adc38d72b..5a4ae4d9f 100644 --- a/tests/NATS.Client.Core.Tests/resources/certs/server-key.pem +++ b/tests/NATS.Client.Core.Tests/resources/certs/server-key.pem @@ -1,52 +1,52 @@ ------BEGIN PRIVATE KEY----- -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 -PoO7VjPpVSZanLRV/YuPT5w2IVB4RA== ------END PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +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 +UBASHetCy8/AEJZMDVM/3+eeosF5Yg== +-----END PRIVATE KEY-----