Cryptography is the cornerstone of information security. Over the years, encryption standards have improved and gotten tougher to crack, and older paradigms have gradually faded into oblivion. And this happened in parallel to the digital revolution that has made technological, financial, and media sectors overly dependent on encryption to keep their and their users' data secure from prying eyes. The cryptography support provided by .NET is essentially complete by default, yet we have various other open-source encryption libraries for developing advanced applications.
With that in mind, here are some of the C# encryption libraries with a wide spectrum of use cases. NLog is a free and open-source logging platform for .NET. It’s flexible, which makes it easy to write to database, file, console, among other targets, and change the configuration on the go. win-acme is a simple yet powerful ACMEv2 client for Windows. You can use it to install and automatically renew certificates on a local IIS server and even build your own plugins. It’s compatible with various popular ACME services like ZeroSSL, Let’s Encrypt, etc. Yet another library, jose-jwt is an ultimate implementation of Javascript Object Signing and Encryption and JSON Web Token. It is minimalistic, JSON parsing agnostic, and has no dependencies. Through this, you can encode content as a string, sign it digitally, and encrypt it.
NLogby NLog
NLog - Advanced and Structured Logging for Various .NET Platforms
NLogby NLog
C# 5888 Version:v5.2.0 License: Permissive (BSD-3-Clause)
win-acmeby win-acme
A simple ACME client for Windows (for use with Let's Encrypt et al.)
win-acmeby win-acme
C# 4802 Version:v2.2.5.1541 License: Permissive (Apache-2.0)
certifyby webprofusion
Professional ACME Client for Windows. Certificate Management UI, powered by Let's Encrypt and compatible with all ACME v2 CAs. Download from certifytheweb.com
certifyby webprofusion
C# 1367 Version:Current License: Others (Non-SPDX)
ACMESharpby ebekker
An ACME client library and PowerShell client for the .NET platform (Let's Encrypt)
ACMESharpby ebekker
C# 1192 Version:v0.9.1 License: No License
LettuceEncryptby natemcmaster
Free, automatic HTTPS certificate generation for ASP.NET Core web apps
LettuceEncryptby natemcmaster
C# 1374 Version:v1.3.0-beta.249 License: Permissive (Apache-2.0)
jose-jwtby dvsekhvalnov
Ultimate Javascript Object Signing and Encryption (JOSE), JSON Web Token (JWT) and Json Web Keys (JWK) Implementation for .NET and .NET Core
jose-jwtby dvsekhvalnov
C# 851 Version:v4.1.0 License: Permissive (MIT)
Steeltoeby SteeltoeOSS
Steeltoe .NET Core Components: CircuitBreaker, Configuration, Connectors, Discovery, Logging, Management, and Security
Steeltoeby SteeltoeOSS
C# 883 Version:3.2.3 License: Permissive (Apache-2.0)
metadata-extractor-dotnetby drewnoakes
Extracts Exif, IPTC, XMP, ICC and other metadata from image, video and audio files
metadata-extractor-dotnetby drewnoakes
C# 773 Version:2.7.3 License: Others (Non-SPDX)
KeeThiefby GhostPack
Methods for attacking KeePass 2.X databases, including extracting of encryption key material from memory.
KeeThiefby GhostPack
C# 800 Version:Current License: Permissive (BSD-3-Clause)
SecurityDriven.Infernoby sdrapkin
:white_check_mark: .NET crypto done right. Professionally audited.
SecurityDriven.Infernoby sdrapkin
C# 550 Version:v1.5.3.0 License: Others (Non-SPDX)
DBreezeby hhblaze
C# .NET MONO NOSQL ( key value store embedded ) ACID multi-paradigm database management system.
DBreezeby hhblaze
C# 469 Version:v1.107 License: Permissive (BSD-2-Clause)
AES-Illustratedby moserware
An implementation of the Advanced Encryption Standard (AES) algorithm meant for study to go along with "A Stick Figure Guide to the Advanced Encryption Standard (AES)" blog post at www.moserware.com
AES-Illustratedby moserware
C# 376 Version:Current License: Others (Non-SPDX)
NETCore.Encryptby myloveCc
NETCore encrypt and decrpty tool,Include aes,des,rsa,md5,sha1,sha256,sha384,sha512
NETCore.Encryptby myloveCc
C# 349 Version:2.0.9 License: Permissive (MIT)
Cosmonautby Elfocrash
🌐 A supercharged Azure CosmosDB .NET SDK with ORM support
Cosmonautby Elfocrash
C# 340 Version:2.2.0 License: Permissive (MIT)
nsecby ektrah
A modern and easy-to-use cryptographic library for .NET 6+ based on libsodium
nsecby ektrah
C# 322 Version:23.5.0-preview.1 License: Permissive (MIT)
Standard.Licensingby junian
Easy-to-use licensing library for .NET Framework, Mono, .NET Core, and Xamarin products
Standard.Licensingby junian
C# 383 Version:v1.1.5 License: Permissive (MIT)
RSAUtilby stulzq
.NET Core RSA algorithm using the help tool.It supports data encryption, decryption, signature and verification signature.It supports three key formats, namely: xml, pkcs1, pkcs8.It also supports key conversion for these three formats.Last also support pem formatting.
RSAUtilby stulzq
C# 267 Version:v1.3.0 License: Permissive (MIT)
AStarby roy-t
A fast 2D path finding library based on the A* algorithm. Works with both grids and graphs. Supports any .NET variant that supports .NETStandard 2.0 or higher. This library has no external dependencies. The library is licensed under the MIT license.
AStarby roy-t
C# 216 Version:v3.0.2 License: Permissive (MIT)
CryptoNetsby microsoft
CryptoNets is a demonstration of the use of Neural-Networks over data encrypted with Homomorphic Encryption. Homomorphic Encryptions allow performing operations such as addition and multiplication over data while it is encrypted. Therefore, it allows keeping data private while outsourcing computation (see here and here for more about Homomorphic Encryptions and its applications). This project demonstrates the use of Homomorphic Encryption for outsourcing neural-network predictions. The scenario in mind is a provider that would like to provide Prediction as a Service (PaaS) but the data for which predictions are needed may be private. This may be the case in fields such as health or finance. By using CryptoNets, the user of the service can encrypt their data using Homomorphic Encryption and send only the encrypted message to the service provider. Since Homomorphic Encryptions allow the provider to operate on the data while it is encrypted, the provider can make predictions using a pre-trained Neural-Network while the data remains encrypted throughout the process and finaly send the prediction to the user who can decrypt the results. During the process the service provider does not learn anything about the data that was used, the prediction that was made or any intermediate result since everything is encrypted throughout the process. This project uses the Simple Encrypted Arithmetic Library SEAL version 3.2.1 implementation of Homomorphic Encryption developed in Microsoft Research.
CryptoNetsby microsoft
C# 235 Version:Current License: Permissive (MIT)
ACMESharpCoreby PKISharp
An ACME v2 client library for .NET Standard (Let's Encrypt)
ACMESharpCoreby PKISharp
C# 274 Version:Current License: Permissive (MIT)
encryption-algorithmby usecodelee
DES, AES, Present, Extended Euclidean Algorithm, Miller-Rabin (commonly used cryptographic algorithms) recommended book "Modern Cryptography Interesting Journey"---Peng Changgen
encryption-algorithmby usecodelee
C# 159 Version:Current License: Permissive (MIT)