From fd53e8e5f353e5831a471807622080d8ae9a0ced Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=CC=81=20A=2EP?= <53834183+Jossec101@users.noreply.github.com> Date: Wed, 19 Aug 2026 09:54:19 +0200 Subject: [PATCH] Bump NBitcoin to 10.0.9 and AWS SDK to v4 - NBitcoin 7.0.25 -> 10.0.9 (parity with NodeGuard's move to 10.x) - AWSSDK.Core 3.7.106.34 -> 4.0.101.1, AWSSDK.KeyManagementService 3.7.102.4 -> 4.0.100.9 - Amazon.Lambda.Core 2.1.0 -> 3.3.0, APIGatewayEvents 2.6.0 -> 3.0.1, Serialization.SystemTextJson 2.3.1 -> 3.0.1, TestUtilities 2.0.0 -> 4.2.0 - AWS SDK v4 removed StoredProfileAWSCredentials: the DEBUG-only KMS client now resolves the 'default' profile via CredentialProfileStoreChain All tests pass in both Debug and Release (SignTest PSBT vectors included). --- RemoteSigner.Tests/RemoteSigner.Tests.csproj | 4 ++-- RemoteSigner/Function.cs | 8 +++++--- RemoteSigner/RemoteSigner.csproj | 12 ++++++------ 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/RemoteSigner.Tests/RemoteSigner.Tests.csproj b/RemoteSigner.Tests/RemoteSigner.Tests.csproj index f92e3c7..35add7d 100644 --- a/RemoteSigner.Tests/RemoteSigner.Tests.csproj +++ b/RemoteSigner.Tests/RemoteSigner.Tests.csproj @@ -6,8 +6,8 @@ RemoteSigner.Tests - - + + diff --git a/RemoteSigner/Function.cs b/RemoteSigner/Function.cs index 9b4df92..4a0948e 100644 --- a/RemoteSigner/Function.cs +++ b/RemoteSigner/Function.cs @@ -7,7 +7,7 @@ using Amazon.Lambda.APIGatewayEvents; using Amazon.Lambda.Core; using Amazon.Lambda.Serialization.SystemTextJson; -using Amazon.Runtime; +using Amazon.Runtime.CredentialManagement; using NBitcoin; [assembly: @@ -56,8 +56,10 @@ public async Task FunctionHandler(APIGatewayHt if (requestBody == null) throw new ArgumentNullException(nameof(requestBody), "Request body not found"); #if DEBUG - var kmsClient = new AmazonKeyManagementServiceClient(new StoredProfileAWSCredentials("default"), - RegionEndpoint.EUCentral1); + //AWS SDK v4 removed StoredProfileAWSCredentials; resolve the "default" profile explicitly + if (!new CredentialProfileStoreChain().TryGetAWSCredentials("default", out var debugCredentials)) + throw new InvalidOperationException("AWS profile 'default' was not found"); + var kmsClient = new AmazonKeyManagementServiceClient(debugCredentials, RegionEndpoint.EUCentral1); #else var kmsClient = new AmazonKeyManagementServiceClient(); #endif diff --git a/RemoteSigner/RemoteSigner.csproj b/RemoteSigner/RemoteSigner.csproj index 2c10db0..e443ca2 100644 --- a/RemoteSigner/RemoteSigner.csproj +++ b/RemoteSigner/RemoteSigner.csproj @@ -13,11 +13,11 @@ RemoteSigner - - - - - - + + + + + + \ No newline at end of file