public static void createOpenSSL(Ruby runtime) {
RubyModule ossl = runtime.getOrCreateModule("OpenSSL");
RubyClass standardError = runtime.getClass("StandardError");
ossl.defineClassUnder("OpenSSLError", standardError, standardError.getAllocator());
ossl.defineAnnotatedMethods(OpenSSLModule.class);
// those are BC provider free (uses BC class but does not use BC provider)
PKey.createPKey(runtime, ossl);
BN.createBN(runtime, ossl);
Digest.createDigest(runtime, ossl);