OpenGost.Security.Cryptography 0.3.0

dotnet add package OpenGost.Security.Cryptography --version 0.3.0
                    
NuGet\Install-Package OpenGost.Security.Cryptography -Version 0.3.0
                    
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="OpenGost.Security.Cryptography" Version="0.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="OpenGost.Security.Cryptography" Version="0.3.0" />
                    
Directory.Packages.props
<PackageReference Include="OpenGost.Security.Cryptography" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add OpenGost.Security.Cryptography --version 0.3.0
                    
#r "nuget: OpenGost.Security.Cryptography, 0.3.0"
                    
#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.
#:package OpenGost.Security.Cryptography@0.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=OpenGost.Security.Cryptography&version=0.3.0
                    
Install as a Cake Addin
#tool nuget:?package=OpenGost.Security.Cryptography&version=0.3.0
                    
Install as a Cake Tool

OpenGost

License MIT Latest version

Overview

An open-source .NET library providing the modern Russian national standard cryptographic algorithms

Supported Algorithms

  • 512 and 256 bits Streebog hash algorithms (GOST R 34.11-2012)
  • Streebog HMAC (Hash-based Message Authentification Code) algorithms
  • Grasshopper block cipher algorithm (GOST R 34.12-2015, GOST R 34.13-2015)
  • CMAC Grasshopper (Cipher-based Message Authentification Code algorithm)
  • Magma block cipher algorithm (GOST R 34.12-2015, GOST R 34.13-2015)
  • CMAC Magma (Cipher-based Message Authentification Code algorithm)
  • 512 and 256 bits GOST Elliptic Curve Digital Signature Algorithm (GOST R 34.10-2012)

Installation

To install Russian national standard cryptographic algorithms, run the following command in the Terminal:

dotnet add package OpenGost.Security.Cryptography

Alternatively run the following command in the Nuget Package Manager Console:

PM> Install-Package OpenGost.Security.Cryptography

After package installation, enable cryptographic services:

using OpenGost.Security.Cryptography;

OpenGostCryptoConfig.ConfigureCryptographicServices();

References

  • GOST R 34.11-2012 Information technology. Cryptographic data security. Hash function
  • GOST R 34.12-2015 Information technology. Cryptographic data security. Block ciphers
  • GOST R 34.13-2015 Information technology. Cryptographic data security. Modes of operation for block ciphers
  • NIST-CMAC NIST, Special Publication 800-38B, "Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication", May 2005.
  • RFC 2104 HMAC: Keyed-Hashing for Message Authentication
  • RFC 4357 Additional Cryptographic Algorithms for Use with GOST 28147-89, GOST R 34.10-94, GOST R 34.10-2001, and GOST R 34.11-94 Algorithms
  • RFC 4490 Using the GOST 28147-89, GOST R 34.11-94, GOST R 34.10-94, and GOST R 34.10-2001 Algorithms with Cryptographic Message Syntax (CMS)
  • RFC 4491 Using the GOST R 34.10-94, GOST R 34.10-2001, and GOST R 34.11-94 Algorithms with the Internet X.509 Public Key Infrastructure Certificate and CRL Profile
  • RFC 5830 GOST 28147-89: Encryption, Decryption, and Message Authentication Code (MAC) Algorithms
  • RFC 5831 GOST R 34.11-94: Hash Function Algorithm
  • RFC 5832 GOST R 34.10-2001: Digital Signature Algorithm
  • RFC 6986 GOST R 34.11-2012: Hash Function
  • RFC 7091 GOST R 34.10-2012: Digital Signature Algorithm
  • RFC 7801 GOST R 34.12-2015: Block Cipher "Kuznyechik"
  • RFC 7836 Guidelines on the Cryptographic Algorithms to Accompany the Usage of Standards GOST R 34.10-2012 and GOST R 34.11-2012
  • RFC 8133 The Security Evaluated Standardized Password-Authenticated Key Exchange (SESPAKE) Protocol
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  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 is compatible.  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.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on OpenGost.Security.Cryptography:

Package Downloads
CoreLib.CORE.Extensions.Ru.GostEncryption

Вспомогательный класс для шифрования строк и объектов с помощью шифра Кузнечик (ГОСТ 34.12-2015)

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.3.0 540 11/13/2025
0.2.2 1,940 7/29/2024
0.2.1 3,894 7/8/2022
0.2.0 606 6/7/2022
0.1.0 555 6/3/2021

0.3.0
• Added – .NET 9.0 and .NET 10.0 target frameworks support.
• Breaking – Remove .NET 6.0 target frameworks support.
• Breaking – Remove obsolete creation factory methods.
• Fixed – A few performance issues.

0.2.2
• Added – `net6.0` and `net8.0` target frameworks support.
• Fixed - Microsoft Security Advisory CVE-2024-3809. https://github.com/advisories/GHSA-447r-wph3-92pm.

0.2.1
• Added – New elliptic curves support (1.2.643.7.1.2.1.1.2, 1.2.643.7.1.2.1.1.3, 1.2.643.7.1.2.1.1.4, 1.2.643.2.2.36.1)
• Fixed - A few incorrect elliptic curve parameter values
• Fixed - GostECDsa incorrect implementation
• Fixed - Streebog hash algorithms may return zeroes in some cases

0.2.0
• Added – Cryptographic services configuration support
• Added - XML Digital Signature support
• Added - GOST X.509 certificate public key extraction method

0.1.0
This is the first public release.