fully implemented x509_create()