Include BouncyCastle with BASE core
There are several extensions that uses the BouncyCastle encryption package (https://www.bouncycastle.org/java.html):
- External files (http://baseplugins.thep.lu.se/wiki/net.sf.basedb.xfiles)
- OpenGrid Scheduler (http://baseplugins.thep.lu.se/wiki/net.sf.basedb.opengrid)
- Reggie (http://baseplugins.thep.lu.se/wiki/net.sf.basedb.reggie)
While much of the functionality can be used without problems some parts of the library can only be used after registering BouncyCastle as a security provider (http://www.bouncycastle.org/wiki/display/JA1/Provider+Installation).
The problem is that this doesn't work well with the extension system in BASE since a security provider may only be registered once. This could mean that, for example, Reggie would use the BouncyCastle from the OpenGrid extension which could lead to unexpected behavior or failure in certain functions.
By moving BouncyCastle into the BASE core, we would make sure that it only exists in a single version.