DidiSoft Ltd. company news, events and announcements.

Should DidiSoft OpenPGP Library for .NET provide strong name assemblies or unsigned assemblies?

Last week we have sent a short survey to subscribers for our OpenPGP Library for .NET mailing list. The survey had only one question:

Should DidiSoft OpenPGP Library for .NET provide strong name (signed) assemblies (DLL’s) or plain unsigned assemblies?

At the end of this post you will find the results of the survey, but first lets explain why did we made it.

DidiSoft OpenPGP Library for .NET was providing limited PGP emails support due to limitations in the System.Net.Mail namespace implementation regarding the MIME email formats (in fact we supported only PGP-inline emails). Recently we had received a numerous requests for additional support for PGP/MIME email format. In order to implement it we decided to use the open source MimeKit library but this is the moment where we were hit with this case:

+-------+        +---+         +--------+
|   B   +------->+ A +<--------+    D   |
+---+---+        +---+         +--------+
^                               ^
|                               |
|                               |
+---+---+                       +---+---+
|  C.1  |                       |  C.2  |
+-------+                       +-------+

Assembly A needs to use assemblies B and D, which reference different versions of assembly C. Of course this can be resolved with binding redirect in the app.config or dynamically in the AppDomain.CurrentDomain.AssemblyResolve event. But our aim was to provide a DidiSoft.Pgp.Mail.dll which use will be as simple as just referencing it straight away.

Digging for more information in Stackoverflow and MSDN we found out that probably the days when strong named assemblies were a must may have passed away. In order to hear what our community thinks we decided to file the survey. And here are the results:

The results are self explanatory – we must provide both strong named DLLs and unsigned too.



Merry Xmas and a Happy New Year 2016

We say “Thank you” to all customers and partners for the excellent cooperation and loyalty during the last year.

The entire DidiSoft wish you and your family a happy and healthy holiday season and a prosperous 2016!

Your DidiSoft team


OpenPGP standards and references

This page contains a list of public standards related to OpenPGP

Current OpenPGP standard

RFC 4880 – OpenPGP Message format


RFC 6637 – ECC (Elliptic Curve Cryptography) in OpenPGP

RFC 5581 – Camellia cipher in OpenPGP

Draft specifications 

SHA-3 in OpenPGP

Using DANE to Associate OpenPGP public keys with email addresses

OpenPGP HTTP keyserver protocol

OpenPGP Web Key service

Obsolete standards

RFC 1991 – The old OpenPGP message format


OraPGP version 1.1 has been released

On the 19th of August this year we have released version 1.1 of DidiSoft OraPGP – the OpenPGP cryptography package for Oracle (c) PL/SQL.

What’s new in version 1.1?

Version 1.1 provides custom exception handling strategy in PL/SQL, which was missing in the first version of the package.

There are also overloaded versions of the ORA_PGP.ENCRYPT and ORA_PGP.DECRYPT functions accepting OpenPGP keys as variables of type BLOB. This provides the possibility keys to be loaded from external files through BFILE file handles and directories available to the Oracle (c) Database server through the CREATE DIRECTORY PL/SQL statement.

Upgrade from version 1.0

In order to upgrade from version 1.0 to the current version 1.1, first unload the old version JAR files from the Oracle© database:

dropjava.sh/.bat -r -v – u user/pass [extraction folder]\SetupFiles\jce-jdk13-151.jar
dropjava.sh/.bat -r -v – u user/pass [extraction folder]\SetupFiles\bcpg-jdk13-151.jar
dropjava.sh/.bat -r -v – u user/pass [extraction folder]\SetupFiles\pgplib-2.7.0.jar
dropjava.sh/.bat -r -v – u user/pass [extraction folder]\SetupFiles\ora-pgp-1.0.0.jar

After the old JAR files are unloaded continue to Setup.

Note: Don’t forget to replace above user/password with the database username/schema and password used in the initial Setup.


Winter Holidays 2014

As this year approaches toward its end we would like to wish you a Merry Christmas and Happy New Year.

Our support staff will be offline for Christmas 25th of December and on 30, 31 of December and on the 1st of January 2015 and any emails on those dates will eventually be responded on the next working day.

Happy holidays!



Announcing OraPGP

OpenPGP for Oracle DB

Announcing DidiSoft OraPGP, a package of PL/SQL functions for the Oracle(c) Database platform version 11 and 12 offering OpenPGP cryptography functions.

The package conforms to the OpenPGP standard RFC 4880 and RFC 6637, with compatibility to the older standard RFC 1991.

The package is licensed per server and also an Enterprise wide license is available, which ships with an Enterprise License for DidiSoft OpenPGP Library for Java as an extra add-on.


New Year holidays 2013

The end of the year is approaching and probably some of us will take at least a day or two to take some rest and celebrate.

We at DidiSoft will be on vacation from 29th of December 2013 to the 2nd of January 2014. Support requests filed in this period will be reviewed on the 3rd of January 2014.

Thank you for using our products and we wish you a happy Christmas and also happy New Year 2014.

Happy New Year 2014


Official DidiSoft twitter account

With a great delay and after all, finally we have our own twitter.com account:


You can follow us on Twitter, to receive same day notifications, regarding product updates and news related to the company.


New Year Holidays 2012/2013

Hi everyone,

Our support and sales departments will be on vacation at 31st of December 2012 and the 1st of January 2013.

Your emails will be answered on the 2nd of January 2013.

We wish you a happy and productive New Year 2013.