キーストア・プロバイダー・フレームワークについて
DataStax Enterpriseデータベースは、Java Cryptography APIを使用してSSLプロバイダーを実装します。
cassandra.yaml
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。| パッケージ・インストール | /etc/dse/cassandra/cassandra.yaml |
| tarボール・インストール | installation_location/resources/cassandra/conf/cassandra.yaml |
DataStax Enterprise(DSE)データベースは、Java Cryptography APIを使用してSSLプロバイダーを実装します。Java Cryptography API(JCA)は、要求されたアルゴリズムから実際の暗号化実装を抽象化するプラグ接続可能なアーキテクチャーです。さまざまな実装のスワップ・アウトをサポートするために、DSEデータベースはCipher.getInstance("AES")を使用します。
JCAアーキテクチャー・プロバイダーを使用すると、複数の実装がさまざまなサービス・プロバイダー・インターフェイス(SPI)を使用して登録できます。データベースにはPKCS12プロバイダーが付属しており、PKCS11などの追加プロバイダーのインストールがサポートされています。
DSEデータベースのサーバー・キーストア・タイプ・パラメーター( cassandra.yaml 内)は使用するSPIを決定します。

com.sun.net.ssl.internal.ssl.ProviderはPKCS12 SPIをプロバイダーに登録するsun.security.ssl.SunJSSEを実装します。sun.security.pkcs12.PKCS12KeyStoreクラスは、KeyStoreのJCA抽象化であるjava.security.KeyStoreSPIを拡張します。次にその実装を示します。put("KeyStore.PKCS12","sun.security.pkcs12.PKCS12KeyStore");
PKCS11とPKCS12の違い
sun.security.pkcs11.SunPKCS11とsun.security.ssl.SunJSSEの両方のプロバイダーはjava.security.KeyStoreSPIの実装を登録します。PKCS11はsun.security.pkcs11.P11KeyStoreを登録します。PKCS11は、秘密鍵証明書ストレージ以上のものを提供します。
