Unfortunately there is a weird bug in BouncyCastle C# version 2.5 that prevents session keys based on Elliptic Curve Curve-25519 in OpenPGP messages to be decrypted. Trying to decrypt the session key an InvalidCypherTextException is thrown. We have released version 1.9.5 of OpenPGP Library for .NET based on BouncyCastle for C# version 2.5 and this […]
.NET PGP
OpenPGP for .NET with improved RSA speed
We are please to announce the release of OpenPGP Library for .NET version 1.9.4.54 which among the other updates provides an improved RSA key generation speed using the underlying platform acceleration. Until now we relied on the BouncyCastle RSA algorithm implementation which is getting slower when key sizes exceed 2048 bits. For example the average […]
Unable to find package ‘DidiSoft.Pgp’ at source ”
Recently we’ve started to receive complaints that attempts to install the DidiSoft OpenPGP Library for .NET NuGet package in MS Visual Studio 2022 resulted in the following error: PM> Install-Package DidiSoft.Pgp Install-Package : Unable to find package ‘DidiSoft.Pgp’ at source ”. At line:1 char:1 + Install-Package DidiSoft.Pgp + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) […]
The specified module ‘DidiSoft.Pgp.PowerShell’ was not loaded because no valid module file was found in any module directory
When trying to use any of the PGP PowerShell functions provided with DidiSoft.Pgp.Powershell.dll, e.g. PS>ConvertTo-PgpEncryptedFile you may encounter this error: The specified module ‘DidiSoft.Pgp.PowerShell’ was not loaded because no valid module file was found in any module directory. Why is PowerShell not loaded The main reason why DidiSoft.Pgp.Powershell.dll is not loaded, is because PowerShell cannot […]
Invoking PGP encryption from MoveIt Automation
This article will explore the benefits of using DidiSoft OpenPGP Library for .NET with “MoveIt Automation“(r), including how to integrate the library into your workflow, and how to use its features to enhance the security of your file transfers. DidiSoft OpenPGP Library for .NET is a reliable and easy-to-use solution for implementing OpenPGP encryption in […]
OpenPGP Library for .NET 1.9.4
We are pleased to announce the release of OpenPGP Library for .NET 1.9.4 which offers a completely rewritten Async method support for the cryptography methods in the PGPLibAsync class. This version is backward compatible with version 1.9.3.x on code level, but your applications must be rebuild and redeployed with version 1.9.4. The main reason that […]
OpenPGP for .NET with SHA-256 User ID signatures
As of version 1.9.3.21 DidiSoft OpenPGP Library for .NET creates OpenPGP keys using SHA-256 signature for the key User ID. What’s the purpose of the signature? An OpenPGP Key in addition to the cipher parameters contains also additional information one of which is the User ID of the key owner, for example, “John Doe <john@gmail.com>“; […]
EdDsa and Curve25519 keys in C#
DidiSoft OpenPGP Library for .NET version 1.9.3 offers support for the creation of Elliptic Curve Cryptography (ECC) PGP keys based on Curve-25519. What is Curve-25519? Curve-25519 is one of the fastest ECC curves and is not covered by any known attack patents. The first Elliptic Curves introduced in OpenPGP standard were the NIST curves. Their […]
Blazor server app with PGP encryption
Recently we were asking ourselves will OpenPGP Library for .NET work in a Blazor application. As you probably know there are two types of Blazor applications, server and WASM (web assembly). In this article, we will demonstrate the usage of the library in a server application. For WASM a few words will be said at […]
Custom storage and key modification events for the KeyStore class
DidiSoft OpenPGP Library for .NET till now offered only a file-based mass key storage and temporary in-memory located one. In the latest version 1.9.1.31 has been implemented extended support for a custom key storage location. An example of such storage of the keys is a BLOB field in a database. In addition, this version of […]
