System.Security.Cryptography.ProtectedData 10.0.0

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
47
Azure.Identity
This is the implementation of the Azure SDK Client Library for Azure Identity
458
Microsoft.Build
This package contains the Microsoft.Build assembly which is used to create, edit, and evaluate MSBuild projects.
45
Microsoft.CodeAnalysis.Features
.NET Compiler Platform ("Roslyn") support for creating editing experiences. More details at https://aka.ms/roslyn-packages This package was built from the source at https://github.com/dotnet/roslyn/commit/bde21ee2b98b775b010d01a93f81ef587fe80962.
42
Microsoft.CodeAnalysis.Features
.NET Compiler Platform ("Roslyn") support for creating editing experiences. More details at https://aka.ms/roslyn-packages This package was built from the source at https://github.com/dotnet/roslyn/commit/e482b6e281d7db727fcb086ebbfae44dcba82c6d.
47
Microsoft.CodeAnalysis.Workspaces.MSBuild
.NET Compiler Platform ("Roslyn") support for analyzing MSBuild projects and solutions. This should be used with at least one of the following packages to add the appropriate language support: - Microsoft.CodeAnalysis.CSharp.Workspaces - Microsoft.CodeAnalysis.VisualBasic.Workspaces More details at https://aka.ms/roslyn-packages This package was built from the source at https://github.com/dotnet/roslyn/commit/2b7d172669b2f7e55803b55f317cfcc2d4279d76.
62
Microsoft.CodeAnalysis.Workspaces.MSBuild
.NET Compiler Platform ("Roslyn") support for analyzing MSBuild projects and solutions. This should be used with at least one of the following packages to add the appropriate language support: - Microsoft.CodeAnalysis.CSharp.Workspaces - Microsoft.CodeAnalysis.VisualBasic.Workspaces More details at https://aka.ms/roslyn-packages This package was built from the source at https://github.com/dotnet/roslyn/commit/be9c072e1c8a9e6701e34d796b1d68098d08feab.
46
Microsoft.CodeAnalysis.Workspaces.MSBuild
.NET Compiler Platform ("Roslyn") support for analyzing MSBuild projects and solutions. This should be used with at least one of the following packages to add the appropriate language support: - Microsoft.CodeAnalysis.CSharp.Workspaces - Microsoft.CodeAnalysis.VisualBasic.Workspaces More details at https://aka.ms/roslyn-packages This package was built from the source at https://github.com/dotnet/roslyn/commit/bf8791d0d1be92c24e56cefa52aa139e2b5340c2.
50
Microsoft.Identity.Client.Extensions.Msal
This package contains extensions to Microsoft Authentication Library for .NET (MSAL.NET)
45
Microsoft.Identity.Client.Extensions.Msal
This package contains extensions to Microsoft Authentication Library for .NET (MSAL.NET)
46
Microsoft.Identity.Client.Extensions.Msal
This package contains the public client (desktop) caching to Microsoft Authentication Library for .NET (MSAL.NET)
42
Microsoft.Identity.Client.Extensions.Msal
This package contains the public client (desktop) caching to Microsoft Authentication Library for .NET (MSAL.NET)
44
Microsoft.Identity.Client.Extensions.Msal
This package contains the public client (desktop) caching to Microsoft Authentication Library for .NET (MSAL.NET)
458
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard. When using NuGet 3.x this package requires at least version 3.4.
729
System.Configuration.ConfigurationManager
Provides types that support using configuration files. Commonly Used Types: System.Configuration.Configuration System.Configuration.ConfigurationManager
134
System.Configuration.ConfigurationManager
Provides types that support using configuration files. Commonly Used Types: System.Configuration.Configuration System.Configuration.ConfigurationManager
232
System.Configuration.ConfigurationManager
Provides types that support using configuration files. Commonly Used Types: System.Configuration.Configuration System.Configuration.ConfigurationManager 8321c729934c0f8be754953439b88e6e1c120c24 When using NuGet 3.x this package requires at least version 3.4.
47
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,366
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.
13,961
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.
258

https://go.microsoft.com/fwlink/?LinkID=799421

.NET Framework 4.6.2

  • No dependencies.

.NET 8.0

  • No dependencies.

.NET 9.0

  • No dependencies.

.NET 10.0

  • No dependencies.

.NET Standard 2.0

Version Downloads Last updated
10.0.0 10 11/15/2025
10.0.0-rc.2.25502.107 15 10/15/2025
10.0.0-rc.1.25451.107 15 09/15/2025
10.0.0-preview.7.25380.108 17 08/15/2025
10.0.0-preview.6.25358.103 17 07/18/2025
10.0.0-preview.5.25277.114 23 06/08/2025
10.0.0-preview.4.25258.110 25 05/17/2025
10.0.0-preview.3.25171.5 26 04/27/2025
10.0.0-preview.2.25163.2 22 03/31/2025
10.0.0-preview.1.25080.5 26 03/16/2025
9.0.11 12 11/15/2025
9.0.10 14 10/15/2025
9.0.9 15 09/13/2025
9.0.8 14 08/09/2025
9.0.7 12 07/12/2025
9.0.6 24 06/15/2025
9.0.5 19 05/19/2025
9.0.4 45 04/17/2025
9.0.3 27 03/16/2025
9.0.2 27 02/22/2025
9.0.1 28 01/23/2025
9.0.0 32 12/09/2024
9.0.0-rc.2.24473.5 35 11/05/2024
9.0.0-rc.1.24431.7 30 11/16/2024
9.0.0-preview.7.24405.7 33 11/09/2024
9.0.0-preview.6.24327.7 31 11/09/2024
9.0.0-preview.5.24306.7 30 11/09/2024
9.0.0-preview.4.24266.19 34 06/01/2024
9.0.0-preview.3.24172.9 30 06/02/2024
9.0.0-preview.2.24128.5 27 06/02/2024
9.0.0-preview.1.24080.9 37 06/02/2024
8.0.0 236 05/07/2024
8.0.0-rc.2.23479.6 31 06/02/2024
8.0.0-rc.1.23419.4 30 06/02/2024
8.0.0-preview.7.23375.6 32 08/22/2023
8.0.0-preview.6.23329.7 35 06/02/2024
8.0.0-preview.5.23280.8 27 06/02/2024
8.0.0-preview.4.23259.5 33 05/20/2024
8.0.0-preview.3.23174.8 37 04/14/2023
8.0.0-preview.2.23128.3 31 06/02/2024
8.0.0-preview.1.23110.8 28 06/01/2024
7.0.1 36 06/02/2024
7.0.0 133 04/28/2024
7.0.0-rc.2.22472.3 33 05/14/2024
7.0.0-rc.1.22426.10 36 06/02/2024
7.0.0-preview.7.22375.6 30 06/02/2024
7.0.0-preview.6.22324.4 42 06/02/2024
7.0.0-preview.5.22301.12 23 06/02/2024
7.0.0-preview.4.22229.4 33 06/02/2024
7.0.0-preview.3.22175.4 35 06/02/2024
7.0.0-preview.2.22152.2 26 06/02/2024
7.0.0-preview.1.22076.8 28 06/02/2024
6.0.2-mauipre.1.22102.15 31 06/02/2024
6.0.2-mauipre.1.22054.8 32 06/02/2024
6.0.0 248 04/26/2022
6.0.0-rc.2.21480.5 33 06/02/2024
6.0.0-rc.1.21451.13 38 04/28/2024
6.0.0-preview.7.21377.19 33 06/02/2024
6.0.0-preview.6.21352.12 34 06/02/2024
6.0.0-preview.5.21301.5 23 06/02/2024
6.0.0-preview.4.21253.7 30 06/02/2024
6.0.0-preview.3.21201.4 34 06/02/2024
6.0.0-preview.2.21154.6 37 06/02/2024
6.0.0-preview.1.21102.12 39 06/02/2024
5.0.0 14,029 04/25/2022
5.0.0-rc.2.20475.5 34 06/02/2024
5.0.0-rc.1.20451.14 26 05/02/2024
5.0.0-preview.8.20407.11 38 06/02/2024
5.0.0-preview.7.20364.11 34 06/02/2024
5.0.0-preview.6.20305.6 31 06/02/2024
5.0.0-preview.5.20278.1 30 06/02/2024
5.0.0-preview.4.20251.6 38 06/02/2024
5.0.0-preview.3.20214.6 32 06/02/2024
5.0.0-preview.2.20160.6 36 06/02/2024
5.0.0-preview.1.20120.5 31 06/02/2024
4.7.0 2,393 05/05/2022
4.7.0-preview3.19551.4 38 06/02/2024
4.7.0-preview2.19523.17 32 06/02/2024
4.7.0-preview1.19504.10 42 06/02/2024
4.6.0 14,348 05/05/2022
4.6.0-rc1.19456.4 37 04/28/2024
4.6.0-preview9.19421.4 35 06/01/2024
4.6.0-preview9.19416.11 30 06/01/2024
4.6.0-preview8.19405.3 36 04/28/2024
4.6.0-preview7.19362.9 30 06/02/2024
4.6.0-preview6.19303.8 28 06/02/2024
4.6.0-preview6.19264.9 33 06/02/2024
4.6.0-preview5.19224.8 31 04/28/2024
4.6.0-preview4.19212.13 28 06/02/2024
4.6.0-preview3.19128.7 30 06/02/2024
4.6.0-preview.19073.11 35 06/02/2024
4.6.0-preview.18571.3 33 06/02/2024
4.5.0 14,416 05/05/2022
4.5.0-rc1 31 06/02/2024
4.5.0-preview2-26406-04 36 06/02/2024
4.5.0-preview1-26216-02 37 06/02/2024
4.5.0-preview1-25914-04 33 06/02/2024
4.4.0 655 05/05/2022
4.4.0-preview2-25405-01 31 06/02/2024
4.4.0-preview1-25305-02 30 06/02/2024
4.3.0 36 06/02/2024
4.3.0-preview1-24530-04 36 06/02/2024
4.0.0 33 06/02/2024