Solaris の暗号化フレームワークは、暗号化要求を処理するアルゴリズムと PKCS #11 ライブラリの共通の格納場所を提供します。PKCS #11 ライブラリは、RSA Security Inc. PKCS #11 Cryptographic Token Interface (Cryptoki) に従って 実装されます。
暗号化フレームワークは、現在、Kerberos および IPsec に対する暗号化要求をカーネルレベルで処理します。ユーザーレベルコンシューマは、libsasl や IKE などです。
米国の輸出法では、公開された暗号化インタフェースは使用の制限が義務付けられています。Solaris の暗号化フレームワークは、カーネル暗号化プロバイダおよび PKCS #11 暗号化プロバイダの署名を義務付けることにより、この現行法を満たしています。詳細については、「Sun 以外のソフトウェアのためのバイナリ署名」を参照してください。
暗号化フレームワークにより、暗号化サービスのプロバイダはそのサービスが Solaris オペレーティングシステム の多数のコンシューマに使用されるようにすることができます。プロバイダはプラグインとも言います。暗号化フレームワークでは、3 種類のプラグインが使用可能です。
ユーザーレベルプラグイン – pkcs11_softtoken.so.1 など、PKCS #11 ライブラリを使用することによってサービスを提供する共有オブジェクト。
カーネルレベルプラグイン – AES など、ソフトウェアの暗号化アルゴリズムの実装を提供するカーネルモジュール。
暗号化フレームワークのアルゴリズムの多くは、SSE2 命令セットを備えた x86 および SPARC ハードウェア用に最適化されます。
ハードウェアプラグイン – デバイスドライバおよび関連するハードウェアアクセラレータ。たとえば、Niagara チップ、ncp および n2cp デバイスドライバです。ハードウェアアクセラレータにより、オペレーティングシステムの高価な暗号化機能が肩代わりされます。たとえば、Sun Crypto Accelerator 6000 ボードがあります。
暗号化フレームワークは、ユーザーレベルプロバイダ用に標準インタフェースとして PKCS #11 v2.11 ライブラリを実装しています。このライブラリは、Sun 以外のアプリケーションがプロバイダに到達するために使用することができます。サードパーティーは、署名付きライブラリ、署名付きカーネルアルゴリズムモジュール、および署名付きデバイスドライバを暗号化フレームワークに追加することもできます。これらのプラグインは、pkgadd ユーティリティーによって Sun 以外のソフトウェアがインストールされると追加されます。暗号化フレームワークの主なコンポーネントの一覧図については、『Oracle Solaris セキュリティーサービス開発ガイド』の第 8 章「Oracle Solaris 暗号化フレームワークの紹介」を参照してください。