AWS.Cryptography.EncryptionSDK 4.1.0
前缀已保留
dotnet add package AWS.Cryptography.EncryptionSDK --version 4.1.0
NuGet\Install-Package AWS.Cryptography.EncryptionSDK -Version 4.1.0
<PackageReference Include="AWS.Cryptography.EncryptionSDK" Version="4.1.0" />
paket add AWS.Cryptography.EncryptionSDK --version 4.1.0
#r "nuget: AWS.Cryptography.EncryptionSDK, 4.1.0"
// Install AWS.Cryptography.EncryptionSDK as a Cake Addin #addin nuget:?package=AWS.Cryptography.EncryptionSDK&version=4.1.0 // Install AWS.Cryptography.EncryptionSDK as a Cake Tool #tool nuget:?package=AWS.Cryptography.EncryptionSDK&version=4.1.0
AWS .NET 加密 SDK
AWS .NET 加密 SDK
使用 AWS .NET 加密 SDK
AWS 加密 SDK 可在NuGet找到,并可以通过典型方式从现有的 .csproj
文件中引用。
使用 dotnet CLI
dotnet add <your-project-name>.csproj package AWS.Cryptography.EncryptionSDK
或者,您可以直接修改 .csproj
并将 AWS 加密 SDK 添加到 PackageReference
ItemGroup
<PackageReference Include="AWS.Cryptography.EncryptionSDK" />
AWS 加密 SDK 适用于所有平台的 .NET 6.0 及更高版本,以及在 Windows 上仅适用于 .NET Framework 4.8.0 及更高版本。
仅限 macOS 的额外设置
如果您使用的是macOS,则必须安装OpenSSL 1.1,而且在运行时OpenSSL 1.1的lib
目录必须在动态链接器路径上。另外,如果使用基于M1的Mac,您必须安装OpenSSL和x86-64的.NET SDK。请参阅该维基页面以获取详细说明。
构建AWS Encryption SDK for .NET
要构建,AWS Encryption SDK需要您的PATH中的最新版本的Dafny。
AWS Encryption SDK针对框架net48
和net6.0
。要构建和测试AWS Encryption SDK,您必须安装以下.NET工具
- .NET 6.0或更高版本
- .NET Framework 4.8.0或更高版本(如果是Windows系统)
您还需要确保在克隆存储库时使用git clone --recursive ...
或者在一个已存在的克隆上使用git submodule update --init
来获取所有子模块。
将所有源文件合并到一个dll中
# Transpile Dafny to .NET
cd AwsEncryptionSDK
make transpile_implementation_net
# Run dotnet restore
make setup_net
# Run dotnet build
dotnet build runtimes/net
(可选) 设置AWS Encryption SDK以与AWS KMS一起工作
如果您设置AWS Encryption SDK以使用AWS KMS Keyring,AWS Encryption SDK将代表您调用AWS KMS,使用适当的AWS SDK。
但是,您必须首先为AWS SDK设置AWS凭证。设置AWS凭证的说明可在AWS SDK for .NET的AWS文档中找到。
测试AWS Encryption SDK for .NET
配置AWS凭证
要运行测试套件,您必须首先为AWS SDK设置AWS凭证。这是运行集成测试所必需的,这些测试使用一个KMS Keyring针对一个可公开访问的KMS CMK。
设置AWS凭证的说明在AWS SDK for .NET的AWS文档中。
运行测试
使用以下方法运行测试套件
cd AwsEncryptionSDK
make transpile_test_net
# Windows/Linux
make test_net
# On Mac
make test_net_mac_brew
在示例上运行测试,以确保它们是最新的
cd AwsEncryptionSDK/runtimes/net
dotnet test Examples
请注意,测试和测试向量需要互联网访问和有效的AWS凭证,因为测试工作流程中会调用KMS。
其他开发建议
大多数C# IDE都喜欢解决方案文件。要为这里的所有项目生成一个解决方案文件,请运行
cd AwsEncryptionSDK/runtimes/net
dotnet new sln --name ESDK
dotnet sln add $(find . -name '*.csproj')
然后让您的IDE打开ESDK.sln
。
许可证
此库根据Apache 2.0许可证授权。
产品 | 版本 兼容和额外计算的目标框架版本。 |
---|---|
.NET | net6.0 兼容。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Framework | net48 兼容。 net481 已计算。 |
-
.NETFramework 4.8
- AWS.Cryptography.MaterialProviders (>= 1.3.0)
- AWSSDK.Core (>= 3.7.300.2)
- BouncyCastle.Cryptography (>= 2.2.1)
- DafnyRuntime (>= 4.2.0)
- System.Collections.Immutable (>= 1.7.0)
- System.ValueTuple (>= 4.5.0)
-
net6.0
- AWS.Cryptography.MaterialProviders (>= 1.3.0)
- AWSSDK.Core (>= 3.7.300.2)
- BouncyCastle.Cryptography (>= 2.2.1)
- DafnyRuntime (>= 4.2.0)
- System.Collections.Immutable (>= 1.7.0)
- System.ValueTuple (>= 4.5.0)
NuGet 包
该包没有由任何 NuGet 包使用。
GitHub 仓库
该包没有由任何流行的 GitHub 仓库使用。