NCache は、解読がほぼ不可能な業界標準の暗号化アルゴリズムの豊富なセットを提供します。 これにより、機密データが暗号化された形式でネットワーク上を移動するとともに、適切に保護されることが保証されます。 NCache から選択できる次の暗号化アルゴリズムを提供します。
Advanced Encryption Standard (AES) 暗号化
NCache 連邦情報処理標準 (FIPS) の公式部分である AES 暗号化アルゴリズムのサポートを提供します。 AES アルゴリズムは、長さ 128、128、および 192 ビットの暗号化キーを使用して、256 ビットのデータ チャンクを処理します。 サポートされている AES の種類を以下に示します。
AES および AES-FIPS の RFC 仕様文書は、次の場所で読むことができます。 インターネットエンジニアリングタスクフォース(IETF) ウェブサイトをご覧ください。
- AES-128
- AES-192
- AES-256
- AES-FIPS 128
- AES-FIPS 192
- AES-FIPS 256
Triple-DES (3DES) 暗号化
NCache また、3 ビットと 128 ビットのデータ キー長を処理する 192DES 暗号化プロトコルのサポートも提供します。 3DES の RFC 仕様ドキュメントは、次の場所で読むことができます。 インターネットエンジニアリングタスクフォース(IETF) Webサイト。 次のアルゴリズムがサポートされています NCache 暗号化:
- 3DES-128
- 3DES-192
暗号化はどこで行われますか?
NCache データの暗号化と復号化は内部で行われます。 NCache クライアントアプリケーションプロセス。 これは、アプリケーションとキャッシュ クラスターの間でネットワーク上を移動するすべてのデータがすでに暗号化されていることを意味します。 同様に、暗号化されたデータのみがキャッシュ ストアに保存されます。
クライアントサーバー接続
キャッシュ クラスターで暗号化を有効にする場合は、暗号化アルゴリズム プロバイダーとともに暗号化キーを指定します。 このキーは、暗号化された方法で各キャッシュ サーバーに保持されます。 クライアントが初めて暗号化対応キャッシュに正常に接続すると、暗号化キーと選択した暗号化アルゴリズムが安全な方法でクライアントに自動的に送信され、今後のリクエストの暗号化/復号化にメモリ内で使用されます。
キャッシュに対してリクエストが行われると、 NCache クライアントは、オブジェクトをキャッシュに送信する前に、オブジェクトの暗号化を自動的に開始します。 同様に、キャッシュから取得したオブジェクトをアプリケーションに配信する前に自動的に復号化します。
図 1 は、この動作を 2 つの簡単なステップで示しています。
NCache 詳細 NCache 暗号化ドキュメント NCache セキュリティ
転送中および保存中の暗号化データ
機密データを扱っている場合は、 NCacheを使用すると、データが暗号化され、データの存続期間のあらゆる段階で不要なアクセスから保護されるので、安心できます。
クライアントからサーバーへのデータ
暗号化されたキーがクライアント側のメモリに常駐すると、キャッシュに送信する必要があるデータはすべてそのキーを使用して暗号化されます。 通常、データは最初にシリアル化され、暗号化され、圧縮されます (圧縮が有効な場合)。 送信前にクライアント側でデータを暗号化するということは、データが送信中に暗号化されることを意味します。 これにより、この接続を盗聴する人は機密データを取得できなくなります。
保存データ
データがキャッシュに追加されると、データは暗号化された形式で保存されるため、キャッシュ側でも安全です。
クラスターノード内のデータ
キャッシュ クラスター内では、サーバー間の状態転送またはレプリケーション中にデータが暗号化されます。 したがって、転送中も暗号化されたままになります。
図 2 は、クライアントからサーバーまでデータがどのように暗号化されるかを示しています。
クライアントキャッシュ
A クライアントキャッシュ アプリケーションが実行されているのと同じボックスに常駐するローカル キャッシュです。 このクライアント キャッシュはリモートのクラスター化キャッシュと同期され、読み取り操作のパフォーマンスが向上します。 クライアント キャッシュの場合、暗号化はクライアント キャッシュで明示的に構成されません。 クラスター化キャッシュ (L2 レベル キャッシュ) で暗号化が有効になっている場合、クライアント キャッシュも暗号化されます。 L2 で暗号化が有効になっていない場合、データは暗号化なしでクライアント キャッシュに追加されます。
クライアントAPI
暗号化/復号化の動作 NCache クライアントAPI 転送中のすべてのデータが確実に暗号化され、処理が必要な場合にのみ復号化されるようにしながら、自動的に処理されます。
- クライアント接続: クライアントは初めて接続するときに、暗号化キーと指定されたアルゴリズムを暗号化された形式で取得します。 これは、必要に応じてデータを暗号化/復号化するために使用されます。
- キャッシュへのデータの追加: 次のようなキャッシュにデータを追加する API の場合 Add/インセット など、データはネットワーク上を移動する前にクライアント側で暗号化されます。 キャッシュ側では、データは暗号化された形式で保存されます。
- キャッシュからのデータの取得: 次のようなキャッシュからデータをフェッチする API の場合 入手/GetBulk/ローダー/クエリ データは暗号化された形式でキャッシュ内にあり、暗号化された形式でクライアントに送信され、クライアント側でデータが復号化されます。
- イベント: サーバー データが暗号化されているクライアントにデータ/メタデータを送信する必要があるイベントの場合、データは転送中に暗号化され、クライアント側で復号化されます。
キャッシュアイテムのメタデータ
キャッシュ項目には次のようなメタデータが追加されます。 グループ, タグ、 & 名前付きタグ。 これらには、データのインデックス付け方法を定義するキャッシュ アイテムの追加情報が含まれます。
キャッシュ アイテムをキャッシュに追加する際、データはメタデータとともにクライアント側で暗号化されます。 データとメタデータは、暗号化された形式でネットワーク上を移動します。 ただし、サーバー側ではデータは暗号化された形式で保存されますが、メタデータはサーバー ノードでインデックス付けされるため、復号化する必要があります。
NCache 詳細 NCache クライアントAPIドキュメント NCache セキュリティ
キャッシュ内のデータ構造
NCache のサポートを提供します データ構造。 データがキャッシュに追加されると、データ構造に追加される前に暗号化されます。 同様に、データ構造がキャッシュからフェッチされると、データはクライアント側で復号化され、必要に応じて使用できるようになります。
サーバー側の機能
クライアント側の機能と同様に、暗号化/復号化メカニズムも NCache サーバー側の機能 機能の性質に応じて自動的に処理されます。
- リードスルー: データのロード元と場所に関係なく、キャッシュで暗号化が有効になっている場合、データは暗号化、シリアル化、圧縮された後にキャッシュに追加されます (圧縮が有効な場合)。
- ライトスルー: キャッシュ内のデータは暗号化されますが、データをライトスルー ソースに永続化して送信するには、そのまま保存されるように復号化する必要があります。
- キャッシュローダー: Loader はパブリック API を使用するため、キャッシュで暗号化が有効になっている場合、ロードされるデータは自動的に暗号化された形式でキャッシュに保存されます。
- エントリープロセッサ: オブジェクトを処理するためにエントリ プロセッサが呼び出される場合、すべての処理がサーバー側で行われるため、オブジェクトはサーバーで復号化されます。
暗号化を有効にする
暗号化を有効にするには NCache ユーザー側でのプログラミング作業を必要としない管理ツール。 すべてのデータが均一に暗号化されるように、キャッシュの開始時に暗号化を有効にする必要があります。 これについて詳しくは、次のドキュメントをご覧ください。 暗号化の構成.
追加のセキュリティ機能 NCache
暗号化とは別に、 NCache また、 SSL / TLS 1.2。 さらに、次の機能を提供することで、キャッシュ API およびノード管理レベルでキャッシュ環境が安全であることも保証します。 アクセス制御リスト。 これらの機能の詳細については、以下を参照してください。
ブログ: での SSL/TLS 構成 NCache シンプルに
まとめ
データが新しい通貨であり、サイバーセキュリティが金であることは疑いの余地がありません。 したがって、 NCache はデータを保護する必要性を認識し、最新のアルゴリズムへの準拠を保証するさまざまなセキュリティ機能を提供します。 ただし、暗号化/復号化は CPU を大量に使用するタスクであるため、パフォーマンスに影響を与えるため、明示的に必要な場合に使用する必要があります。