DataJuggler.Cryptography 7.0.0-rc1

This is a prerelease version of DataJuggler.Cryptography.
There is a newer version of this package available.
See the version list below for details.
dotnet add package DataJuggler.Cryptography --version 7.0.0-rc1                
NuGet\Install-Package DataJuggler.Cryptography -Version 7.0.0-rc1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DataJuggler.Cryptography" Version="7.0.0-rc1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DataJuggler.Cryptography --version 7.0.0-rc1                
#r "nuget: DataJuggler.Cryptography, 7.0.0-rc1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DataJuggler.Cryptography as a Cake Addin
#addin nuget:?package=DataJuggler.Cryptography&version=7.0.0-rc1&prerelease

// Install DataJuggler.Cryptography as a Cake Tool
#tool nuget:?package=DataJuggler.Cryptography&version=7.0.0-rc1&prerelease                

This version is for .NET7 and is a port of the Dot Net Core version of CryptographyHelper from my Dot Net
Framework project DataJuggler.Core.UltimateHelper.

The code is available here: https://github.com/DataJuggler/DataJuggler.Cryptography

This project adds many Nuget dependencies to use Konscious.Security.Cryptography in a Dot Net
Core project, so I choose to create a separate project rather than include it in the Dot Net Core version of UltimateHelper, DataJuggler.Net.UltimateHelper.Core.

To view the documentation, visit:
https://github.com/DataJuggler/DataJuggler.Cryptography/blob/master/README.md

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on DataJuggler.Cryptography:

Package Downloads
DataJuggler.Net7

This class is for .NET7 and is a port of DataJuggler.Net for the .Net Framework, which is used by DataTier.Net and DB Compare to read SQL Server database schema and code generate stored procedure driven data tiers. Breaking Change: Now that this project uses Microsoft.Data.SqlClient 5.0, connection strings must set Encrypt = False if your database is not encrypted. The two main classes are: SQLDatabaseConnector - A wrapper for SqlDatabaseConnection that reads database schema. CSharpClassWriter - A class that is useful in code generating C# classes.

DataJuggler.Net8

This class is for .NET8 and is a port of DataJuggler.Net for the .Net Framework, which is used by DataTier.Net and DB Compare to read SQL Server database schema and code generate stored procedure driven data tiers. Breaking Change: Now that this project uses Microsoft.Data.SqlClient 5.0+, connection strings must set Encrypt = False if your database is not encrypted. The two main classes are: SQLDatabaseConnector - A wrapper for SqlDatabaseConnection that reads database schema. CSharpClassWriter - A class that is useful in code generating C# classes.

DataJuggler.Net6

This class is for .NET6 and is a port of DataJuggler.Net for the .Net Framework, which is used by DataTier.Net and DB Compare to read SQL Server database schema and code generate stored procedure driven data tiers. The two main classes are: SQLDatabaseConnector - A wrapper for SqlDatabaseConnection that reads database schema. CSharpClassWriter - A class that is useful in code generating C# classes.

DataJuggler.Net9

This class is for .NET9 and is a port of DataJuggler.Net for the .Net Framework, which is used by DataTier.Net and DB Compare to read SQL Server database schema and code generate stored procedure driven data tiers. -- Notes for .NET 8 carried over. Still Apply. Breaking Change: Now that this project uses Microsoft.Data.SqlClient 5.0+, connection strings must set Encrypt = False if your database is not encrypted. The two main classes are: SQLDatabaseConnector - A wrapper for SqlDatabaseConnection that reads database schema. CSharpClassWriter - A class that is useful in code generating C# classes.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
9.0.1 319 11/22/2024
9.0.0 118 11/19/2024
8.0.1 5,679 11/20/2023
8.0.0 1,736 11/14/2023
7.1.1 2,019 8/14/2023
7.1.0 1,967 7/16/2023
7.0.0 27,102 11/8/2022
7.0.0-rc1 851 10/19/2022
6.0.5 689 6/17/2022
6.0.4 629 6/8/2022
6.0.3 2,296 1/23/2022
6.0.2 581 11/18/2021
6.0.1 344 11/18/2021
6.0.0 302 11/18/2021

10.19.2022: v7.0.0-rc1 is the same code base as v6.0.5. The only difference
is the TargetFramework is now .NET 7.

6.17.2022 v6.0.5: Updated DataJuggler.UltimateHelper.

6.8.2022 v6.0.4: Updated DataJuggler.UltimateHelper and Argon Nuget package.

1.23.2022: DataJuggler.UltimateHelper was updated, so I updated this project.

11.17.2021 (Take Three)
x64 is kind of useless if you can only use it in x64 projects, so I had to switch back to any cpu.

11.17.2021 (Take Two)
Verion 6.0.1: Changing the package name doesn't change the namespace, so I had to do a global search and replace.
The namespace is now correct at DataJuggler.Cryptography.

11.17.2021
Version 6.0.0: I updated to version 6.0.0, and I dropped the name. I am going to try and multi-target
.Net 5 and 6 with this version. We will see the results soon.

Version 1.5.0 - I ported this to .Net 5. Not sure if there are any advantages for doing that or not.

Version 1.0.11 - I added a new optional parameter for VerifyHash that allows you to state that the userTypedPassword is actually a PasswordHash itself. This use case is designed for use with ProtectedLocalStorage to allow you to store the password hash on the client browser.
This validation compares two encrypted passowrd hash strings that they are equal. As a test of security, it is verified that the encryptedPasswordHash stored can be used to create the salt. If the string decrypts with the keycode given and the salt is valid 16 bytes and the strings match exactly then this is considered verified also.

Version 1.0.10 - I started testing today for the first time using the Nuget package and I couldn't get the class to show up. Trying again with the code set to Debug mode as it worked before I switched to Release.

Version 1.0.9 - I am trying recreating the salt every time. Some password fail up to max retires
count, and perhaps the salt is the problem. I noticed NotASecret default password is where this
problem occurs. I might change it to something else if this still fails.

Version 1.0.8 - I added a verifyRetries parameter to GeneratePasswordHash method. If set to true,
the method will try and verify if it cannot be verified a new hash will be created and tried again up
to the verirfyRetries count.

Version 1.0.7 - I added try catches to all the methods.

The first release had the wrong namespace.