System.Security.Cryptography.ProtectedData 9.0.3

About

System.Security.Cryptography.ProtectedData offers a simplified interface for utilizing Microsoft Windows DPAPI's CryptProtectData and CryptUnprotectData functions.

Note: Since it relies on Windows DPAPI, this package is only supported on Windows platforms. For more complex cryptographic operations or cross-platform support, consider the System.Security.Cryptography namespace.

Key Features

  • Built upon the robust and secure Windows Data Protection API (DPAPI).
  • Data can be protected either for current process or for any process on the machine.
  • Scope of protection can be defined either to the current user or the local machine.

How to Use

Utilizing this package is quite simple, and it mainly revolves around two methods: Protect and Unprotect.

Here, originalData is the data you want to protect, optionalEntropy is an additional byte array used to increase encryption complexity, and DataProtectionScope specifies whether the data protection should apply to the current user or the machine.

using System.Security.Cryptography;
using System.Text;

byte[] originalData = Encoding.UTF8.GetBytes("This is a secret");
byte[] optionalEntropy = new byte[64];
Random.Shared.NextBytes(optionalEntropy);

// To protect:
byte[] encryptedData = ProtectedData.Protect(
    originalData,
    optionalEntropy,
    DataProtectionScope.CurrentUser);

// To unprotect:
byte[] decryptedData = ProtectedData.Unprotect(
    encryptedData,
    optionalEntropy,
    DataProtectionScope.CurrentUser);

Main Types

The main type provided by this library is:

  • System.Security.Cryptography.ProtectedData

Additional Documentation

Feedback & Contributing

System.Security.Cryptography.ProtectedData is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Showing the top 20 packages that depend on System.Security.Cryptography.ProtectedData.

Packages Downloads
Azure.Identity
This is the implementation of the Azure SDK Client Library for Azure Identity
87
Azure.Identity
This is the implementation of the Azure SDK Client Library for Azure Identity
242
Azure.Identity
This is the implementation of the Azure SDK Client Library for Azure Identity
516
Azure.Identity
This is the implementation of the Azure SDK Client Library for Azure Identity
862
Azure.Identity
This is the implementation of the Azure SDK Client Library for Azure Identity
5 844
Microsoft.Identity.Client.Extensions.Msal
This package contains extensions to Microsoft Authentication Library for .NET (MSAL.NET)
861
Microsoft.Identity.Client.Extensions.Msal
This package contains the public client (desktop) caching to Microsoft Authentication Library for .NET (MSAL.NET)
125
Microsoft.Identity.Client.Extensions.Msal
This package contains the public client (desktop) caching to Microsoft Authentication Library for .NET (MSAL.NET)
228
Microsoft.Identity.Client.Extensions.Msal
This package contains the public client (desktop) caching to Microsoft Authentication Library for .NET (MSAL.NET)
515
Microsoft.Identity.Client.Extensions.Msal
This package contains the public client (desktop) caching to Microsoft Authentication Library for .NET (MSAL.NET)
3 718
Microsoft.VisualStudio.Web.CodeGeneration
Contains the CodeGenCommand that finds the appropriate code generator and invokes it from project dependencies.
65
Microsoft.VisualStudio.Web.CodeGeneration.Core
Contains the core infrastructure used by ASP.NET Core Code Generators.
57
Microsoft.VisualStudio.Web.CodeGeneration.Design
Code Generation tool for ASP.NET Core. Contains the dotnet-aspnet-codegenerator command used for generating controllers and views.
538
NuGet.Configuration
NuGet's configuration settings implementation.
440
System.Configuration.ConfigurationManager
Provides types that support using configuration files. Commonly Used Types: System.Configuration.Configuration System.Configuration.ConfigurationManager
241
System.Configuration.ConfigurationManager
Provides types that support using configuration files. Commonly Used Types: System.Configuration.Configuration System.Configuration.ConfigurationManager
1 504
System.Configuration.ConfigurationManager
Provides types that support using configuration files. Commonly Used Types: System.Configuration.Configuration System.Configuration.ConfigurationManager When using NuGet 3.x this package requires at least version 3.4.
2 864
System.Configuration.ConfigurationManager
Provides types that support using configuration files. Commonly Used Types: System.Configuration.Configuration System.Configuration.ConfigurationManager When using NuGet 3.x this package requires at least version 3.4.
3 099
System.Configuration.ConfigurationManager
Provides types that support using XML configuration files (app.config). This package exists only to support migrating existing .NET Framework code that already uses System.Configuration. When writing new code, use another configuration system instead, such as Microsoft.Extensions.Configuration.
243
System.Configuration.ConfigurationManager
Provides types that support using XML configuration files (app.config). This package exists only to support migrating existing .NET Framework code that already uses System.Configuration. When writing new code, use another configuration system instead, such as Microsoft.Extensions.Configuration.
3 328

.NET Framework 4.6.2

  • No dependencies.

.NET 8.0

  • No dependencies.

.NET 9.0

  • No dependencies.

.NET Standard 2.0

Version Downloads Last updated
10.0.1 0 2025-12-09
10.0.0 0 2025-11-11
10.0.0-rc.2.25502.107 0 2025-10-14
10.0.0-rc.1.25451.107 0 2025-09-09
10.0.0-preview.7.25380.108 0 2025-08-12
10.0.0-preview.6.25358.103 0 2025-07-15
10.0.0-preview.5.25277.114 0 2025-06-06
10.0.0-preview.4.25258.110 0 2025-05-12
10.0.0-preview.3.25171.5 0 2025-04-10
10.0.0-preview.2.25163.2 0 2025-03-18
10.0.0-preview.1.25080.5 0 2025-02-25
9.0.11 0 2025-11-11
9.0.10 0 2025-10-14
9.0.9 4 2025-09-10
9.0.8 0 2025-08-04
9.0.7 0 2025-07-08
9.0.6 2 2025-06-26
9.0.5 0 2025-05-13
9.0.4 0 2025-04-08
9.0.3 1 2025-03-20
9.0.2 0 2025-02-11
9.0.1 0 2025-01-14
9.0.0 1 2025-04-11
9.0.0-rc.2.24473.5 0 2024-10-08
9.0.0-rc.1.24431.7 0 2024-09-10
9.0.0-preview.7.24405.7 0 2024-08-13
9.0.0-preview.6.24327.7 0 2024-07-09
9.0.0-preview.5.24306.7 0 2024-06-11
9.0.0-preview.4.24266.19 0 2024-05-21
9.0.0-preview.3.24172.9 0 2024-04-11
9.0.0-preview.2.24128.5 0 2024-03-12
9.0.0-preview.1.24080.9 0 2024-02-13
8.0.0 3 276 2025-03-10
8.0.0-rc.2.23479.6 0 2023-10-10
8.0.0-rc.1.23419.4 0 2023-09-12
8.0.0-preview.7.23375.6 0 2023-08-08
8.0.0-preview.6.23329.7 0 2023-07-11
8.0.0-preview.5.23280.8 0 2023-06-13
8.0.0-preview.4.23259.5 0 2023-05-16
8.0.0-preview.3.23174.8 0 2023-04-11
8.0.0-preview.2.23128.3 0 2023-03-14
8.0.0-preview.1.23110.8 0 2023-02-21
7.0.1 0 2023-02-14
7.0.0 1 2025-04-09
7.0.0-rc.2.22472.3 0 2022-10-11
7.0.0-rc.1.22426.10 0 2022-09-14
7.0.0-preview.7.22375.6 0 2022-08-09
7.0.0-preview.6.22324.4 0 2022-07-12
7.0.0-preview.5.22301.12 0 2022-06-14
7.0.0-preview.4.22229.4 0 2022-05-10
7.0.0-preview.3.22175.4 0 2022-04-13
7.0.0-preview.2.22152.2 0 2022-03-14
7.0.0-preview.1.22076.8 0 2022-02-17
6.0.0 1 298 2025-01-15
6.0.0-rc.2.21480.5 0 2021-10-12
6.0.0-rc.1.21451.13 0 2021-09-14
6.0.0-preview.7.21377.19 0 2021-08-10
6.0.0-preview.6.21352.12 0 2021-07-14
6.0.0-preview.5.21301.5 0 2021-06-15
6.0.0-preview.4.21253.7 0 2021-05-24
6.0.0-preview.3.21201.4 0 2021-04-08
6.0.0-preview.2.21154.6 0 2021-03-11
6.0.0-preview.1.21102.12 0 2021-02-12
5.0.0 2 611 2025-01-15
5.0.0-rc.2.20475.5 0 2020-10-13
5.0.0-rc.1.20451.14 0 2020-09-14
5.0.0-preview.8.20407.11 0 2020-08-25
5.0.0-preview.7.20364.11 0 2020-07-21
5.0.0-preview.6.20305.6 0 2020-06-25
5.0.0-preview.5.20278.1 0 2020-06-10
5.0.0-preview.4.20251.6 0 2020-05-18
5.0.0-preview.3.20214.6 0 2020-04-23
5.0.0-preview.2.20160.6 0 2020-04-02
5.0.0-preview.1.20120.5 0 2020-03-16
4.7.0 3 877 2025-01-15
4.7.0-preview3.19551.4 0 2019-11-13
4.7.0-preview2.19523.17 0 2019-11-01
4.7.0-preview1.19504.10 0 2019-10-15
4.6.0 0 2019-09-23
4.6.0-rc1.19456.4 0 2019-09-16
4.6.0-preview9.19421.4 0 2019-09-04
4.6.0-preview9.19416.11 0 2019-09-04
4.6.0-preview8.19405.3 0 2019-08-13
4.6.0-preview7.19362.9 0 2019-07-23
4.6.0-preview6.19303.8 0 2019-06-12
4.6.0-preview6.19264.9 0 2019-09-04
4.6.0-preview5.19224.8 0 2019-05-06
4.6.0-preview4.19212.13 0 2019-04-18
4.6.0-preview3.19128.7 0 2019-03-06
4.6.0-preview.19073.11 0 2019-01-29
4.6.0-preview.18571.3 0 2018-12-03
4.5.0 1 118 2025-02-10
4.5.0-rc1 0 2018-05-06
4.5.0-preview2-26406-04 0 2018-04-10
4.5.0-preview1-26216-02 0 2018-02-26
4.5.0-preview1-25914-04 0 2017-11-15
4.4.0 127 2025-04-09
4.4.0-preview2-25405-01 0 2017-06-27
4.4.0-preview1-25305-02 0 2017-05-09
4.3.0 0 2016-11-15
4.3.0-preview1-24530-04 0 2016-10-24
4.0.0 0 2016-06-27