[Mono-dev] BouncyCastle C# port under Mono

Peter Dettman peter.dettman at iinet.net.au
Mon Aug 21 02:17:20 EDT 2006

Hi all,

I want to report on my recent experiences getting the C# port of  
BouncyCastle Crypto API (http://www.bouncycastle.org/csharp/) running on 
Mono. It will be a reasonably brief report as it turned out to be mostly 
painless :).

(BC is written entirely in C# for .NET 1.1 by the way).

Here's what I did:
- Installed Mono  and MonoDevelop 0.10 via the Ubuntu package 
- Imported the existing VS2003 solution file in MonoDevelop, and built 
everything, with no significant issues.
- The existing NAnt build file also seemed to work without modification 
(although I am having a little trouble running the nunit tests via nant).
- Ran our regression tests revealing only one failure, which I tracked 
down to a bug in the x86 runtime (Bug# 79087), fixed in svn.

...and that's all there was to it.

I certainly expected it to be more painful; that it wasn't is to the 
credit of the Mono developers.

The regression tests take a few minutes to run, allowing a (very) 
ballpark performance observation that Mono is about twice as slow as 
MS.NET for running these tests. I guess anyone concerned with 
performance of Mono might find some or all of these tests a useful 

I would be interested in hearing from people who are able to test 
BC/Mono on other architectures than x86. The crypto algorithms do a lot 
of bit/byte twiddling, and could potentially shake out similar problems 
in other runtimes to the bug above.


More information about the Mono-devel-list mailing list