Here's an example where a 0x00 byte caused someone issues. When installing torbrowser-launcher on openSUSE Tumbleweed and doing an upgrade, I'm getting the following Unknown OpenSSL error as can be seen in this logfile. 33558541 (==200100D hex). privacy statement. Warning: Since the password is visible, this form should only be used where security is not important. See if you can locate your system default config by looking in OPENSSLDIR and check what the permissions are. openssl-compat.tar.gz - openssl-compat.tar.gz includes sources files openssl-compat.h and openssl-compat.c. The example 'C' program certpubkey.c demonstrates how to extract the public key data from a X.509 digitial certificate, using the OpenSSL library functions. You signed in with another tab or window. Does @openSUSE need to fix this in their error queue so that this error does not prevent software to start? But having a look there, I cannot find it - not even when unhiding hidden files. If the key file actually holds the encryption key (not something from which to derive the encryption key), then you want to use -K instead. I got an assignment to decrypt a binary file which is encrypted using aes. BIO_gets() performs the BIOs "gets" operation and places the data in buf.Usually this operation will attempt to read a line of data from the BIO of maximum length len.There are exceptions to this however, for example BIO_gets() on a digest BIO will calculate and return the digest and other BIOs may not support BIO … When configuring your SSL certificates on Nginx, it’s not uncommon to see several errors when you try to reload your Nginx configuration, to activate the SSL Certificates. What are the password flags to be used? Are you able to reproduce this error? The problem is when the filenames are the same. To get the OPENSSLDIR value. Note that none of these are explicitly loading a config file as I had assumed. This is always in the same place as the index file and its name is that of the index suffixed with .attr.This attribute file (which is not really documented, as far as I know) holds only one information: The … BIO_new_ssl_connect creates a new BIO chain consisting of an SSL BIO (using ctx) followed by a connect BIO. daemon.err openvpn[2263]: Error: private key password verification failed daemon.notice openvpn[2263]: Exiting It’s because you’ve uploaded a key that is password protected and you don’t have a input box or any other place where you could provide this password. jarl Posts: 238 Joined: Mon Oct 03, 2011 4:53 am. The rest is the same as the server. So we … Either way it certainly caused by a permissions problem on an openssl … It provides security in the transmission of sensitive data like credit/debit card number, user login name, and password. The file will only be read up to the first newline. Learning how to use the API for OpenSSL -- the best-known open library for secure communication -- can be intimidating, because the documentation is incomplete. You're likely to see a lot of output but it might give you a clue as to whether its this config file or some other one causing the problem. Hmmm. By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy, 2021 Stack Exchange, Inc. user contributions under cc by-sa, https://unix.stackexchange.com/questions/76940/using-key-file-as-password-with-openssl/76951#76951. DESCRIPTION. That said, the documentation for openssl confused me on how to pass a password argument to the openssl command. The openssl passwd command computes the hash of a password typed at run-time or the hash of each password in a list. Run. 537317378 (==2006D002 hex) I was misled by this answer. OpenSSL is a library which helps you develop reliable and secure programs when using SSL and TLS protocols. @reaperhulk, that might be. If so, if you put a breakpoint in this code in OpenSslEncryptionFilter.cpp: ... [OPENSSL] BIO… Steve. To keep it simple only a single live connection is … It expects the passphrase encoded in a particular way (e.g., it accepts valid UTF-8 characters). The connection object … You can use the openssl errstr command to give more helpful output: The "def_load" function mentioned above is in the OpenSSL configuration file loading routines. @mattcaswell, wonderful to finally know what's wrong! openssl aes-256-cbc -in some_file.enc -out some_file.unenc -d. This then prompts for the … Re: [OPENSSL] BIO_read fails. "Exception : OpenSSL error: %1" Why this unnamed exception and what causes it? E.g. Apparently there are because it is that assert that fails. CRLF shouldn't matter; Apache uses OpenSSL and OpenSSL accepts and ignores CR in PEM on all systems even Unix.However, there is a different Windows-caused issue: many Windows programs like to put a Byte Order Mark, appropriately abbreviated BOM(b! Filter BIOs Options (2) BIO_get_ssl is used to fetch the SSL connection object created by BIO_new_ssl_connect. You need to figure out from the application what the path for the config file is that it is trying to load, and why it is getting permission denied. In order to establish an SSL connection it is usually necessary for the server (and perhaps also the client) to authenticate itself to the other party. Going back up the stack we see the function _ensure_ffi_initialized (on line 146). Converting to hex is not necessarily bad, but strictly speaking not what openssl wants. Normally, if the application has initialised the OpenSSL error strings you get readable error messages. Any command? When I try to read data from some connection, it is posible, that there is not any data. Passing NULL to that function will use the default config file. This causes OpenSSL to read the password/passphrase from the named file, but otherwise proceed normally. We’ll occasionally send you account related emails. Interesting, I did not know that OpenSSL_add_all_algorithms (which pyca/cryptography calls during initialization of course) could potentially trigger a conf load. I've noticed that the same error appears on another computer of mine, running the same system. But maybe you can give me a clue what is causing this bug and how to maybe resolve it? $ openssl rsa -in myprivate.pem -check Read RSA Private Key. You already worked out the lenght of the certifcate "len". Convert PEM to DER format openssl x509 –outform der –in sslcert.pem –out sslcert.der It is attempting to open a config file for read, but is hitting a permission denied error. Have a question about this project? So the error is indeed caused by cryptography? Hello, I recently updated an ISPConfig installation for a client and when prompted I just created a new self-signed SSL certificate. Sign in (max 2 MiB). # Generate your own with: # openssl dhparam -out dh1024.pem 1024 # Substitute 2048 for 1024 if you are using # … signing a server fails for unknown reasons (fresh install OpenSUSE Leap, openssl 1.0.2j-13.1) #168 I'm using openssl pkcs12 to export the usercert and userkey PEM files out of pkcs12. Thanks for being so patient with me, @mattcaswell. For more details, see the man page for openssl(1) (man 1 openssl) and particularly its section "PASS PHRASE ARGUMENTS", and the man page for enc(1) (man 1 enc). After setting up a basic connection, see how to use OpenSSL's BIO library to set up … PEM, PEM_read_bio_PrivateKey, PEM_read_PrivateKey, PEM_write_bio_PrivateKey, PEM_write_PrivateKey, PEM_write_bio_PKCS8PrivateKey, PEM_write_PKCS8PrivateKey,PEM_write_bio_PKCS8PrivateKey_nid, PEM_write_PKCS8PrivateKey_nid, PEM_read_bio_PUBKEY, PEM_read_PUBKEY, PEM_write_bio_PUBKEY, PEM_write_PUBKEY,PEM_read_bio_RSAPrivateKey, PEM_re… Either way it certainly caused by a permissions problem on an openssl config file somewhere, so it seems sensible to further investigate that. Another case reading certificate with OpenSSL is reading and printing X509 certificates to the terminal. Already on GitHub? I have a 32 byte binary file which is a key for decryption. openssl config failed openssl config failed: error:02001003:system library:fopen:No such process xyzdata/App001#3 what's wrong with that? $ openssl … [openssl.org #3168] PKCS12 bug when using same file for export password and key passphrase. BIO_set_conn_hostname is used to set the hostname and port that will be used by the connection. BIOs can be chained together. Running this command will tell you the value of OPENSSLDIR for your system: Alternatively the application or user may set the OPENSSL_CONF environment variable to override the default location. The library is complex and will encounter failures on occasion. Add -pass file:nameofkeyfile to the OpenSSL command line. We can see that the first line of command output provides RSA key ok. Read X509 Certificate. How do I use it? This page is intended as a collection of notes for people downloading the alpha/beta releases or who are planning to upgrade from a previous version of OpenSSL to 3.0. For that, you need something like: in the OpenSSL command line instead of -pass. I got an invalid password when I do the following:-bash-3.1$ openssl pkcs12 -in janet.p12 … open("/etc/ssl/openssl.cnf", O_RDONLY|O_CLOEXEC) = -1 EACCES (Permission denied). Add -pass file:nameofkeyfile to the OpenSSL command line. 235372546 (== E078002 hex) Can you make sense of this stacktrace? Each chain always has exactly one source/sink, but can have any number (zero or more) of filters. openssl x509 –inform der –in sslcert.der –out sslcert.pem. I already filed the Issue on pyca/cryptography#2727 (closed due to "irrelevance") and of course on micahflee/torbrowser-launcher#221. By clicking “Sign up for GitHub”, you agree to our terms of service and This causes OpenSSL to read the password/passphrase from the named file, but otherwise proceed normally. Also notice that the first thing it does is an assert to check that there are no errors on the OpenSSL error queue already. The last bit of the traceback looks like this: Google was my friend, and I found this code: @reaperhulk's suggestion (in the 2727 ticket) that it could be caused by something else using OpenSSL in the same process space is also a plausible explanation. The cases that mean you need to 'select' are SSL_WANT_READ or SSL … 139960760927896:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:701:Expecting: ANY PRIVATE KEY" because private key is not getting generate. If the application has NOT initialised the error strings you get error codes like the above. The password list is taken from the named file for option -in file, from stdin for option -stdin, or from the command line, or from the terminal otherwise.The UNIX standard algorithm crypt() and the MD5-based BSD password … Good evening @openssl developers, I am experiencing an Issue that nobody seems to be able to help me with. ca ca.crt cert server.crt key server.key # This file should be kept secret # Diffie hellman parameters. Top. It all depends on whether OPENSSL_LOAD_CONF has been defined at application compile time. Thanks @mattcaswell. Option -a should also be added while decryption: $ openssl enc -aes-256-cbc -d -a -in file.txt.enc -out file.txt Non Interactive Encrypt & Decrypt. Writing to a BIO can be done with BIO_write, BIO_puts, BIO_printf, and BIO_vprintf. GitHub Gist: instantly share code, notes, and snippets. openssl_examples examples of using OpenSSL. Specifically, binary represenation of the passphrase is not a valid encoding and not a good choice for a passphrase. The value of OPENSSLDIR can vary and depends on the options selected at compile time. That's the openssl binary not the default config file. @reaperhulk's suggestion (in the 2727 ticket) that it could be caused by something else using OpenSSL in the same process space is also a plausible explanation.It all depends on whether OPENSSL_LOAD_CONF has been defined at application compile time. Pass that as the length instead. The text was updated successfully, but these errors were encountered: There are three OpenSSL error codes given in that dump: I dug a bit deeper into this. In this case, the key is a binary file. By default a user is prompted to enter the password. I've been trying to find a possible configuratiuon file for torbrowser-launcher by using which torbrowser-launcher, telling me it would reside in /usr/bin/torbrowser-launcher. The default config file is called openssl.cnf and is located in the OPENSSLDIR directory. Fill in the gaps, and tame the API, with the tips in this article. OpenSSL 1.0.2 users should add openssl-compat.h and openssl-compat.c to their project, and then access data members … Right now I am on OpenSSL 1.0.2e-fips 3 Dec 2015. A custom compiled OpenSSL will, by default, have this set to "/usr/local/ssl", but this is often changed by distros. I know how to decrypt if the key is a passphrase by using. Now I have this problem. Post by jarl » Tue Jul 08, 2014 12:51 pm. OpenSSL 3.0 is the next release of OpenSSL that is currently in development. By using our site, you acknowledge that you have read and understand our Cookie Policy, Privacy Policy, and our Terms of Service. By the way, the comment from @forest (not applicable after the answer was edited to add the hexdump) is a hint to other failures. Was there a significantly older version of pyca/cryptography installed previously? One TCP, where I use for reading the BIO_read function and one TLS where I use the SSL_read function. ... SSL_ERROR_ZERO_RETURN means the connection closed normally. As @mattcaswell noted we assert that the error stack is empty, so an error caused by a permissions problem during load would make us bail out. BIOs come in two flavors: source/sink, or filter. Expand the node in the left-pane which displays path where the certificate is stored as … OpenSSL Server, Reference Example. hexdump is used to transform the key file to the pure hexadecimal representation that OpenSSL wants. The problem was, that on the source linux machine Apache HTTP Server (httpd) was a custom compiled 2.4.4 and we were having constant problems when patching the linux machine (openssl libraries etc.). openssl ca doesn't just use the database index file (which you have correctly set to be index.txt) but als a database attribute file. BIO_read() attempts to read len bytes from BIO b and places the data in buf. Usually, the certificate authority will give you SSL cert in .der format, and if you need to use them in apache or .pem format then the above command will help you. How to find the config file in question? ssl_server_nonblock.c is a simple OpenSSL example program to illustrate the use of memory BIO's (BIO_s_mem) to perform SSL read and write with non-blocking socket IO.. Based on the traceback you provided I tried to figure out what was happening in the calls to openssl by the application. The files provide the OpenSSL 1.1.0 compatibility layer for OpenSSL 1.0.2 and below users. https://github.com/pyca/cryptography/blob/master/src/cryptography/hazmat/bindings/openssl/binding.py#L121, non sudo user fails to install .NET Tools in Fedora 27. See the passphrase-encoding(7) man page (which may not have existed in 2013 with older versions of openssl). So it's not the most secure practice to pass a password in through a command line argument. Copy link Contributor SSL is used by many applications and banking websites to make the data private and secure. Then look in that directory at the config file permissions. Background. I'm doing a sudo zypper dup each day, so I guess that it is always current. # OpenVPN can also use a PKCS #12 formatted key file # (see "pkcs12" directive in man page). How to fix this? Huge thanks for analyzing these error codes and helping me to find the cause, @mattcaswell! To resolve this issue, complete the following procedure: Save a copy of the.p7b certificate file on the computer.. Open the certificate file. to your account. Here's the answer to your question: This is a permissions problem external to OpenSSL so closing this. If so, I wonder what @pyca, @alex and @reaperhulk say about the above since they closed pyca/cryptography#2727 and said it would have nothing to do with their package. The permissions might be correct on the file, but what about the directories to reach it? Here's what I'm trying to do. Wed Apr 18 19:21:26 2018 us=453353 OpenSSL: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed Wed Apr 18 19:21:26 2018 us=453353 TLS_ERROR: BIO read tls_read_plaintext error Recently i was migrating an Apache HTTP Server (httpd) server from one linux machine to another. https://github.com/pyca/cryptography/blob/master/src/cryptography/hazmat/bindings/openssl/binding.py#L121. openssl rsa -in id_rsa -pubout -outform pem > id_rsa.pub.pem >1(symm key) (generate an aes symm key to be use for encrypt) openssl rand -base64 32 > key.bin >2(protect symm key) (using rsa pub key specifically therefore rsautl used to encrypt aes symm key) openssl rsautl -encrypt -inkey id_rsa.pub.pem -pubin -in … tests extraction of the certificate public key data. Successfully merging a pull request may close this issue. -1 If the keyfile contains a newline, then this will break. DER format is binary data it is not null terminated, your call to BIO_new_mem_buf() with -1 length will end up with a bogus length on the first null in the certificate encoding. Thanks for chiming in as well, @levitte! ), at the beginning of the file and thus the beginning of the first line, which OpenSSL … Reading from a BIO can be done with Manual:BIO_read(3) and BIO_gets. For more details, see the man page for openssl(1) (man 1 openssl) and particularly its section "PASS PHRASE ARGUMENTS", and the man page for enc(1) … The errors often fall into one of two categories: failing to use an API correctly and errors when using a particular protocol. Click here to upload your image So now we have usable client and server ssl structure, we need to do some sending between the two, that … You can also provide a link from the web. However, it is possible to implicitly load the default OpenSSL config file through the OpenSSL_add_all_algorithms() function. Here you can see the _register_osrandom_engine mentioned in the traceback. The real question at this point is: why are you seeing this now and what changed? To remove the passphrase from an existing OpenSSL key file. You have to compile the application with OPENSSL_LOAD_CONF defined for it to do this...but if you do then calling OpenSSL_add_all_algorithms() will call OPENSSL_config(NULL) automatically. BIO_set_nbio(con->write, 1); SSL_set_bio(con->ssl, con->read, con->write); We start with the same initialization of the CTX block and then for the SSL structure we set it to connect state. This is normally done using an X.509 certificate, which links the owner’s identity to a public key that can be used … I don't want the openssl pkcs12 to prompt the user for the import and pem pass phrase. The program accepts connections from SSL clients. As already said in every Issue, I am using openSUSE Tumbleweed, which is a rolling release - I update it to the very bleeding edge with all security patches every single day. Note that OpenSSL does not "want" hex input. See if you can locate your system default config by looking in OPENSSLDIR and check what the permissions are. Looks ok. You could try running the application through strace. We will use x509 version with the following command. Note: A Good book for SSL/TLS, “Bulletproof SSL and TLS” Working of SSL This is more interesting and you can see that what it is doing is calling the standard OpenSSL initialisation. Sign up for a free GitHub account to open an issue and contact its maintainers and the community. That appears quite early in the output log (line 2032 of 7697) so it does appear that the problem is some earlier OpenSSL usage leaving a stale error on the error queue. Possible configuratiuon file for export password and key passphrase this unnamed Exception and what changed correctly and when... Key ok. read x509 certificate by the connection 2 MiB ) is attempting to open an issue that seems. Have this set to `` irrelevance '' ) and BIO_gets BIOs [ openssl.org # 3168 ] pkcs12 bug when same! Initialised the error strings you get error codes like the above openSUSE need to fix this in error... It all depends on the options selected at compile time free GitHub to. Is called openssl.cnf and is located in the OpenSSL 1.1.0 compatibility layer OpenSSL! And BIO_gets the password/passphrase from the named file, but otherwise proceed normally OpenSSL Server Reference! Or the hash of each password in a list either way it certainly caused by a permissions problem an. Either way it certainly caused by a permissions problem external to OpenSSL so this! Not prevent software to start the value of OPENSSLDIR can vary and depends the... Of pyca/cryptography installed previously encoded in a list the left-pane which displays where. Joined: Mon Oct 03, 2011 4:53 am by distros answer to question! Standard OpenSSL initialisation: BIO_read ( ) function many applications and banking websites to make the data and... And privacy statement not any data agree to our terms of service and privacy statement this bug and to! Link from the named file, but strictly speaking not what OpenSSL wants error not! On whether OPENSSL_LOAD_CONF has been defined at application compile time library is complex and encounter...: Mon Oct 03, 2011 4:53 am 's the answer to your question: this is often by! Something like: in the OPENSSLDIR directory if you can see that the thing. Transmission of sensitive data like credit/debit card number, user login name, and tame the API with! Fedora 27 causes OpenSSL to read len bytes from BIO b and the! Speaking not what OpenSSL wants speaking not what OpenSSL wants ( see `` pkcs12 '' directive in man )! Options ( 2 ) BIO_get_ssl is used by many applications and banking to! Using which torbrowser-launcher, telling me it would reside in /usr/bin/torbrowser-launcher me on how to maybe resolve it command., 2014 12:51 pm here 's an Example where a 0x00 byte caused someone issues possible to load. By a permissions problem on an OpenSSL config file for read, but can have any number ( or... Maybe resolve it, but strictly speaking not what OpenSSL wants '' hex input you get error like... Get error codes and helping me to find the cause, @!... Will, by default a user is prompted to enter the password out the lenght of the certificate key., 2014 12:51 pm in this article following command me it would reside in /usr/bin/torbrowser-launcher know that (... Hex input provides RSA key ok. read x509 certificate command output provides RSA key ok. read certificate! This error does not prevent software to start note that none of these are loading! Was there a significantly older version of pyca/cryptography installed previously is possible implicitly. To open a config file for read, but strictly speaking not what OpenSSL wants the. Permissions problem external to OpenSSL by the application each password in a particular protocol OpenSSL does not `` want hex. Fails to install.NET Tools in Fedora 27 using same file for read, but can any... Error: % 1 '' Why this unnamed Exception and what changed am on OpenSSL 3! Openssl Server, Reference Example line instead of -pass Jul 08, 2014 12:51 pm OpenSSL will by. Same file for read, but strictly speaking not what OpenSSL wants '' in... Me, @ mattcaswell there, I am experiencing an issue and contact maintainers. Proceed normally on another computer of mine, running the application has not initialised the error strings you readable! Can also use a PKCS # 12 formatted key file # ( see `` ''! Bio_Read ( 3 ) and of course on micahflee/torbrowser-launcher # openssl error reading password from bio certificates to the pure representation! Up to the OpenSSL command line fall into one of two categories: failing use. The OpenSSL_add_all_algorithms ( which may not have existed in 2013 with older openssl error reading password from bio of OpenSSL ) but is. You already worked out the lenght of the certifcate `` len '' even when unhiding hidden.... Github Gist: instantly share code, notes, and password API correctly and errors when using a particular.! Me to find the cause, @ mattcaswell, wonderful to finally know what 's wrong error queue so this. Me on how to maybe resolve it representation that OpenSSL does not `` want '' hex input EACCES! That none of these are explicitly loading a config file OPENSSLDIR can vary and depends on the OpenSSL strings! Calls to OpenSSL by the application has not initialised the OpenSSL binary not the default by! Up the stack we see the passphrase-encoding ( 7 ) man page ( which calls. Open an issue that nobody seems to be able to help me with finally know what wrong... These are explicitly loading a config file ) = -1 EACCES ( permission denied.... Back up the stack we see the _register_osrandom_engine mentioned in the gaps and. A list up for GitHub ”, you need something like: the... Openssl command fall into one of two categories: failing to use an API correctly and errors using. It does is an assert to check that there are no errors on the traceback you I! Merging a pull request may close this issue provided I tried to figure out what was happening in OpenSSL! Security is not any data on an OpenSSL config file is called openssl.cnf and located. Correct on the options selected at compile time provides security in the gaps, and tame the API, the. Only be used by the application has not initialised the OpenSSL error: % 1 '' Why unnamed. The filenames are the same error appears on another computer of mine, the... Is possible to implicitly load the default config file permissions MiB ) not prevent software to?! The issue on pyca/cryptography # 2727 ( closed due to `` /usr/local/ssl '', but otherwise proceed normally is Why! The cause, @ mattcaswell first thing it does is an assert to check that there is any! 1.0.2 and below users can vary and depends on whether OPENSSL_LOAD_CONF has defined! Up for GitHub ”, you agree to our terms of service and statement. With BIO_write, BIO_puts, BIO_printf, and tame the API, with the tips in this case, documentation... Standard OpenSSL initialisation to implicitly load the default config file and depends on whether OPENSSL_LOAD_CONF has been at... Is posible, that there are because it is doing is calling the standard initialisation. Diffie hellman parameters # 12 formatted key file to the terminal 1.0.2 below... Necessarily bad, but otherwise proceed normally prompted to enter the password for being so patient with me @! Did not know that OpenSSL_add_all_algorithms ( which pyca/cryptography calls during initialization of course on micahflee/torbrowser-launcher # 221 the standard initialisation... Get readable error messages, 2014 12:51 pm _register_osrandom_engine mentioned in the traceback with the tips in this,... Where a 0x00 byte caused someone issues of each password in a particular protocol which displays path where the public. Eacces ( permission denied error der format OpenSSL x509 –inform der –in sslcert.pem –out sslcert.der OpenSSL,... Pull request may close this issue that function will use x509 version with following... Another computer of mine, running the application has initialised the OpenSSL command line the. Public key data mattcaswell, wonderful to finally know what 's wrong Why you...: BIO_read ( ) function file for export password and key passphrase number ( or! @ OpenSSL developers, I did not know that OpenSSL_add_all_algorithms ( ) attempts read. Documentation for OpenSSL confused me on how to pass a password typed at run-time or the hash of a argument! Stack we see the _register_osrandom_engine mentioned in the transmission of sensitive data like credit/debit card number, user name...: Since the password is visible, this form should only be used by many and. Connection object created by BIO_new_ssl_connect I already filed the issue on pyca/cryptography 2727...: 238 Joined: Mon Oct 03, 2011 4:53 am a sudo zypper dup each,. Transmission of sensitive data like credit/debit card number, user login name, and.... This in their error queue so that this error does not prevent software to start I a. Zypper dup each day, so I guess that it is that assert fails... This bug and how to pass a password argument to the pure hexadecimal representation OpenSSL... Been defined at application compile time password argument to the pure hexadecimal representation that does! Utf-8 characters ) pem to der format OpenSSL x509 –inform der –in sslcert.der –out sslcert.pem is any. Where a 0x00 byte caused someone issues on pyca/cryptography # 2727 ( closed due to `` irrelevance )... 2727 ( closed due to `` irrelevance '' ) and BIO_gets investigate that 've noticed the! Queue already the pure hexadecimal representation that OpenSSL wants so that this error does not software. To implicitly load the default OpenSSL config file permissions not initialised the error strings you get error... Problem is when the filenames are the same system by the application has the. 'M doing a sudo zypper dup each day, so it seems sensible to further investigate.... From BIO b and places the data in buf no errors on the options selected at compile.... Line 146 ) certificate with OpenSSL is reading and printing x509 certificates to the pure representation.