OpenSSL互換レイヤーに新たに15APIを追加

wolfSSL組み込みSSL/TLSライブラリには、OpenSSL互換レイヤーというOpenSSLとの互換性を持たせるための機能があります。
このOpenSSL互換レイヤーによって、OpenSSL用に作られたアプリケーションをwolfSSLとリンクしてビルドすることができます。今回のOpenSSL互換レイヤーの拡張は、様々なOpenSSLアプリケーションプロジェクトに対応するために行われたもので、新たに15APIを追加いたしました。
追加したAPIは以下の通りです。

OpenSSL_add_all_algorithms_noconf()
RAND_poll()
d2i_X509_fp()
X509_check_ca()
X509_CRL_free()
X509_STORE_add_crl()
d2i_X509_CRL_fp()
PEM_read_X509_CRL()
ASN1_GENERALIZEDTIME_free()
ASN1_STRING_print_ex()
ASN1_TIME_to_generalizedtime()
d2i_PKCS12_fp()
i2d_RSAPublicKey()
d2i_RSAPublicKey()
i2c_ASN1_INTEGER()

また、以下の4つのヘルパー関数も新たに追加しました。

int wolfSSL_ASN1_TIME_get_length(WOLFSSL_ASN1_TIME *t)
WOLFSSL_ASN1_TIME構造のlengthメンバーを取得。

unsigned char* wolfSSL_ASN1_TIME_get_data(WOLFSSL_ASN1_TIME *t)
WOLFSSL_ASN1_TIME構造体のdataメンバーを取得し、ASN1_TIMEのポインタを返す。

int wolfSSL_X509_CA_num(WOLFSSL_X509_STORE* store)
WOLFSSL_X509_STORE内のWOLFSSL_CERT_MANAGERのsignerメンバーの数を返す。

long wolfSSL_X509_get_version(const WOLFSSL_X509 *x509)
X509のバージョンを返す。

OpenSSLからwolfSSLへ移行する理由としてメモリ使用量、移植性、アルゴリズムサポート、CAVPとFIPS 140-2の検証、専門エンジニアによる商用サポートなどがございます。
詳しくは、wolfSSL vs. OpenSSLのページをご覧ください。

アプリケーションでのwolfSSL使用についてやOpenSSLのwolfSSLへの置き換えについてのご質問はsupport@wolfssl.comまで日本語でお問い合わせ下さい。

原文: https://www.wolfssl.com/openssl-compatibility-layer-expands-15-new-functions/