BoringSSL
読み:ボーリング-エスエスエル
外語:BoringSSL

 SSL/TLSのオープンソースによる実装の一つ。OpenSSLの派生改良版で、Googleによるもの。
目次

概要
 OpenSSLは不具合やセキュリティホールが多いため、Googleは数多くのパッチを当てた状態でOpenSSLを使用していた。
 そのうち幾つかは本流でも採用されたが、大半はAPIやABIの互換性を損なうため拒絶されていた。
 AndroidやChromeなどはこのパッチを必須としていたが、その数も70以上となり作業が複雑になったこと、2014(平成26)年4月にOpenSSLの「Heartbeat拡張」がもたらしたセキュリティホールCVE-2014-0160(心臓出血)の発生、OpenBSDプロジェクトがOpenSSLをやめて派生(フォーク)させたLibreSSLに移行したことなど世の趨勢を受け、GoogleもBoringSSLとしてOpenSSLを派生(フォーク)させた。

特徴

開発スタイル
 BoringSSL以前はOpenSSLにパッチを当てていたのに対して、BoringSSL以降はOpenSSL側の変更をインポートする方式に変更された。またOpenBSDプロジェクトのLibreSSLとも相互にパッチの交換などをしている。
 但し前述の通り、BoringSSLはOpenSSLのAPIやABIの互換性が損なわれるが、しかし互換性よりも安全性が高い方が重要であるため好意的な反応が多く、OpenBSD創始者であるシオ・デ・ラット(Theo de Raadt)もこの動きを歓迎している。

Android 6.0
 Androidでは、Android 6.0よりBoringSSLに移行している。
 なお、Javaで組まれたアプリがHTTPS通信するようなシーンでは、全く影響を受けることは無いので心配は不要である。

再検索