- 概要
- セキュリティ・モデル
- データ型
- アルゴリズム
- 制限事項
- 例外
- 使用上の注意
パッケージには、暗号化に関する基本的なファンクションとプロシージャが収録されています。このパッケージを正しく安全に使用するためには、セキュリティに関する一般的なレベルの知識と経験が必要です。
パッケージでは、イメージやサウンドを含むやラージ・オブジェクト()などのOracle汎用データ型に対する暗号化および復号化が可能になります。特に、およびをサポートします。また、グローバリゼーション・サポートを通じて、複数の異なるデータベース・キャラクタ・セットにわたるデータの暗号化も可能です。
このパッケージでは、次の暗号化アルゴリズムがサポートされます。
- データ暗号化規格(DES)、トリプルDES(3DES、2キーおよび3キー)
- Advanced Encryption Standard(AES)
- 暗号化ハッシュとして、MD5、MD4、SHA-1
- Message Authentication Code(MAC)として、MD5およびSHA-1
では、ブロック暗号修飾子もサポートされます。 また、PKCS(公開鍵暗号規格)#5などの複数のパディング・オプション、暗号ブロック連鎖(CBC)などの4種類のブロック暗号連鎖モードを選択できます。
表34-1に、パッケージの機能と、PL/SQLのもう1つの暗号化パッケージであるの機能の比較を示します。
はに代わって使用される予定のパッケージであり、利便性と保守性が大幅に強化されているほか、新しいシステムと既存のシステムの両方に対応できるように広範なアルゴリズムがサポートされています。 なお、とMD4は、下位互換性を維持する目的のみでサポートされます。 これらのアルゴリズムでは、3DES、AES、MD5、SHA-1と同等のセキュリティが実現されないため、新しいアプリケーションには極力使用しないでください。
Oracle Databaseでは、このパッケージがスキーマにインストールされます。必要に応じて、既存のユーザーおよびロールに、パッケージ・アクセス権限を付与できます。
サブプログラムのパラメータには、次のデータ型が使用されます。
このパッケージでは、次の暗号化アルゴリズム、修飾子、暗号スイートが事前に定義されています。
パッケージでは、データ型は直接的にサポートされません。型のデータに対して暗号化操作を実行する場合は、そのデータを事前に汎用的なデータベース・キャラクタ・セットであるAL32UTF8に変換した後、データ型に変換する必要があります。 これらの変換が完了すると、パッケージによる暗号化操作が可能になります。
表34-9に、で定義された例外を示します。
- 暗号化/復号化のプロシージャとファンクションの使い分け
- HASHファンクションとMACファンクションの使い分け
- 暗号化キーの作成と保守に関する注意事項
- 変換ルール
このパッケージでは、暗号化()と復号化()の機能がプロシージャおよびファンクションの両方の形式で提供されています。これらのプロシージャは、データ型(型と型を対象としてオーバーロードされたデータ型)の暗号化と復号化に使用します。一方、ファンクションとファンクションは、データ型の暗号化と復号化に使用します。 型のデータについては、パッケージのファンクションを使用して暗号化操作を実行する前に、データ型に変換する必要があります。
このパッケージには、ファンクションおよびファンクションという2種類の異なる一方向ハッシュ関数が用意されています。ハッシュ関数は任意の長さの入力メッセージを処理して、固定長のハッシュ値を戻します。一方向ハッシュ関数は片方向のみに動作します。つまり、入力メッセージからハッシュ値を計算するのは簡単ですが、特定のハッシュ値から入力メッセージを生成するのはきわめて困難です。ハッシュ値の安全性を維持するには、ハッシュ値の長さを少なくとも128ビットにする必要があります。
ハッシュ値を使用すると、データが変更されたかどうかを確認することができます。 たとえば、あるユーザーがデータを保存する前に、保存対象のデータに対してを実行し、ハッシュ値を作成したと想定します。そのユーザーが後で保存したデータを取り出すときは、同じアルゴリズムを指定し、保存済データに対してハッシュ関数を再実行します。2回目のハッシュ値が最初のハッシュ値と同じであれば、データは変更されていません。ハッシュ値は「データの指紋」のようなものであり、データの整合性を保証するために使用されます。
パッケージのファンクションは一方向ハッシュ関数であり、型または型のデータからハッシュ値を生成するために使用できます。ファンクションも一方向ハッシュ関数ですが、秘密鍵の機能が追加されています。 このファンクションはファンクションと同様に機能しますが、秘密鍵を持つユーザーのみがハッシュ値を照合できます。
MACを使用すると、複数のユーザー間でファイルを認証できます。また、1人のユーザーがMACを使用して、自分のファイルがウィルスなどによって変更されたかどうかを調べることもできます。自分のファイルのMACを計算して、そのMAC値を表に保存できます。MACファンクションを使用しなければ、ウィルスが新しいハッシュ値を計算して、表内の既存のハッシュ値を置き換えてしまう可能性があります。MACを使用している場合、秘密鍵を知らないユーザーは、ハッシュ値の読取りや書換えを実行できません。
パッケージには暗号化キー用の乱数ジェネレータがありますが、暗号化キーを保守するメカニズムは用意されていません。アプリケーションを開発するときには、このパッケージで使用される暗号化キーを安全に作成して保存するように注意する必要があります。 また、パッケージによる暗号化操作と復号化操作はクライアント上ではなくサーバー上で実行されることに注意してください。したがって、クライアントとサーバー間で暗号化キーを転送するときは、ネットワーク暗号化機能を使用して、クライアントとサーバー間の接続を保護する必要があります。適切な保護対策を実施しないと、ネットワーク上で暗号化キーが不正傍受される可能性があります。
パッケージには独自にキーを作成する機能はありませんが、キーの作成時に使用できるサポート・ツールが用意されています。たとえば、ファンクションをコールすると、暗号化キー用の擬似乱数バイト列を生成できます (ファンクションをコールすると、パッケージのファンクションまたはファンクションをコールしたときと同様の処理が実行されます)。
DES用の暗号化キーを作成するときには、特定のキー値が弱点キーまたは準弱点キーとみなされることに注意してください。アルゴリズムのパターンと暗号化キーの初期値のパターンを組み合せることで、暗号分析に対して脆弱な暗号文が生成される場合、その暗号化キーは弱点キーまたは準弱点キーとみなされます。脆弱な暗号文が生成されないようにするためには、弱点キーまたは準弱点キーであることが判明しているDESキーを事前に除外する必要があります。弱点キーまたは準弱点キーの一覧は、複数のパブリック・インターネット・サイトで参照できます。
- をに変換するには、ファンクションを使用して次の手順を実行します。
- 現行のデータベース・キャラクタ・セット内のをAL32UTF8データベース・キャラクタ・セット内のに変換します。
- AL32UTF8データベース・キャラクタ・セット内のをに変換します。
構文の例:
- をに変換するには、ファンクションを使用して次の手順を実行します。
- をAL32UTF8データベース・キャラクタ・セット内のに変換します。
- AL32UTF8データベース・キャラクタ・セット内のを目的のデータベース・キャラクタ・セット内のに変換します。
構文の例:
- 型の暗号化データをデータベース内の型の列に保存する場合は、ファンクションまたはファンクションを使用して、型の列に適したサイズにデータを変換してください。これらのファンクションは、データのサイズをそれぞれ2倍または4/3倍に変更します。
次に、暗号ブロック連鎖およびPKCS#5準拠のパディングを使用した256ビットのAESアルゴリズムを使用して、事前定義済のを暗号化および復号化するPL/SQLブロックを示します。
到此这篇faiss数据库怎么读(factiva数据库)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/rgzn-aibigd/29334.html