ヘッダーをスキップ
Oracle® Database PL/SQLパッケージおよびタイプ・リファレンス
11g リリース2(11.2)
B56262-06
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

96 DBMS_OBFUSCATION_TOOLKIT

DBMS_OBFUSCATION_TOOLKITを使用すると、データ暗号化規格(DES)またはTriple-DESアルゴリズムを使用して、アプリケーション内でデータを暗号化できます。


注意:

DBMS_OBFUSCATION_TOOLKITの使用は推奨されていません。DBMS_CRYPTODBMS_OBFUSCATION_TOOLKITに代わって使用される予定のパッケージであり、利便性と保守性が大幅に強化されているほか、新しいシステムと既存のシステムの両方に対応できるように広範なアルゴリズムがサポートされています。詳細は、第39章「DBMS_CRYPTO」を参照してください。

この章では、次の項目について説明します。


DBMS_OBFUSCATION_TOOLKITの使用方法


概要

データ暗号化規格(DES)は、米国規格協会(ANSI)ではデータ暗号化アルゴリズム(DEA)、国際標準化機構(ISO)ではDEA-1とも呼ばれ、20年以上にわたり世界的な暗号化規格の地位を保っています。銀行業界では、民間の金融機関同士のトランザクションや、金融機関と個人とのトランザクションにDESベースの規格も採用しています。DESは最終的に新しいAdvanced Encryption Standard(AES)に置き換えられることになります。

DESは対称鍵暗号で、すなわち、データの暗号化と復号化には同じ鍵が使用されます。DESでは、56ビットのキーを使用して、64ビットのブロックでデータの暗号化が行われます。DESアルゴリズムでは、入力される64ビットのキーのうち8ビットが無視されますが、アルゴリズムには64ビットのキーを入力する必要があります。

Triple-DES (3DES)はDESよりもさらに強力な暗号で、生成された暗号文(暗号化データ)は、総当たり探索(2**56の試行のかわりに2**112または2**168を試行)を使用しても、さらに解読されにくくなっています。Triple-DESは、DESほど、一部のタイプの暗号解読法に対して脆弱ではありません。


セキュリティ・モデル

このパッケージはSYSスキーマにインストールされます。必要に応じて、既存のユーザーおよびロールに、パッケージ・アクセス権限を付与できます。このパッケージではPUBLICロールへのアクセス権も付与されるため、明示的な付与は不要です。


使用上の注意


注意:

MD5コールはOracle 11g リリース2 (11.2.0.4)では動作しません。

キー管理

キー管理(暗号化キーの生成および同キーの安全な格納を含む)は、暗号化の重要な要素の1つです。キーの選択が適切でなかったり格納方法が誤っていると、悪意のあるユーザーによって暗号化が容易に破られます。暗号分析者は、総当たりキー探索(つまり、正しい復号化キーを見つけようとして、可能なすべてのキーを調べる)の攻撃を行うのではなく、通常はキーの選択やキーの格納方法の弱点を探します。

キー生成は暗号化の重要な要素です。通常、キーは乱数ジェネレータで自動的に生成されます。乱数生成が暗号面で安全であれば、キー生成の1つの形態として許容できます。ただし、乱数が暗号面で安全ではなく、しかも予測可能な要素があると、暗号化のセキュリティが容易に損なわれる可能性があります。

DBMS_OBFUSCATION_TOOLKITパッケージには暗号化キー用の乱数ジェネレータがありますが、暗号化キーを保守するメカニズムは用意されていません。アプリケーション開発者は、このパッケージで使用される暗号化キーの生成および格納が安全に行われるように注意する必要があります。また、DBMS_OBFUSCATION_TOOLKITによる暗号化および復号化はクライアントではなくサーバーで行われます。したがって、クライアントとサーバー間で暗号化キーを渡すときは、ネットワーク暗号化機能を使用して、クライアントとサーバー間の接続を保護する必要があります。適切な保護対策を実施しないと、ネットワーク上で暗号化キーが不正傍受される可能性があります。Oracle Net用のネットワーク暗号化の構成および使用方法の詳細は、『Oracle Database Advanced Security管理者ガイド』を参照してください。

キー格納は暗号化の最も重要な要素の1つですが、同時に難しく、正しく管理することが困難な要素です。対称鍵で暗号化したデータをリカバリするには、その対称鍵が、データを復号化しようとしているアプリケーションまたはユーザーによってアクセス可能である必要があります。対称鍵は、パフォーマンスを大幅に劣化させずに、ユーザーが必要なときに暗号化データにアクセスできるように、取出しが簡単なものにする必要があります。また、暗号化データにアクセスしようとする未許可のユーザーによって容易にリカバリされないように、十分に安全である必要があります。

キーを管理するために、次の3つの方法を利用できます。

  • キーをデータベースに格納する

  • キーをオペレーティング・システムに格納する

  • ユーザーにキーを管理させる

データベースへのキーの格納

DBAによる暗号化データへのアクセスからデータを保護しようとする場合、キーをデータベースに格納しても、必ずしも完全なセキュリティを保つことはできませんが(すべての権限を付与されたDBAは暗号化キーが含まれた表にアクセスできるためです)、一時的な傍受者やオペレーティング・システム上のデータベース・ファイルを危険にさらす人物に対してはセキュリティを実現できます。また、データベースにキーを格納して獲得するセキュリティは、完全でなくても非常に有効です。

たとえば、従業員の社会保障番号(表EMPの列の1つ)を暗号化するとします。その場合は、EMPの別の列に格納されているキーを使用して各従業員の社会保障番号を暗号化します。ただし、EMP表でSELECTアクセスを持つユーザーは、暗号化キーを取得し一致する社会保障番号を復号化できます。また、暗号化キーを別の表に格納し、パッケージを使用して、表どうしの主キーと外部キーの関係に基づき暗号化データ項目の正しいキーを取得する方法もあります。

DBMS_OBFUSCATION_TOOLKITパッケージと、そのパッケージに提供された暗号化キーを取り出すプロシージャの両方をエンベロープできます。また、暗号化キー自体をなんらかの方法(たとえば、EMP表の外部キーでXORするなど)で変換して、容易にリカバリできる形態では格納されないようにすることもできます。

PL/SQLのラップ・ユーティリティを使用して、暗号化を行うPL/SQLパッケージ内でコードを難読化することをお薦めします。キーの処理、暗号化ルーチンの呼出しなどを行うPL/SQLコードを参照することによって、暗号化が破られることを防止します。すなわちラップ・ユーティリティを使用して、PL/SQLパッケージ自体を難読化します。このスキームは、EMPSELECTでアクセスするユーザーが、暗号化されていない重要データを読み取ること、DBAが暗号化キーを容易に取り出すこと、およびこれらを使用してEMP表でデータを復号化することを防止するために十分に安全です。暗号化キーを定期的に変更することによって、またはさらに強度が高いキー格納アルゴリズムを使用することによって(たとえば、キー自体が暗号化されるようにするなど)、さらに安全性を高めることができます。

オペレーティング・システムへのキーの格納

もう1つのオプションは、オペレーティング・システム上のフラット・ファイルにキーを格納することです。PL/SQLからはコールアウトが可能であるため、コールアウトを使用して暗号化キーを取り出すことができます。フラット・ファイルにキーを格納し、コールアウトを通じてキーを取り出す場合、暗号化データに対するセキュリティ・レベルは、オペレーティング・システム上のキー・ファイルに対する保護と同等のレベルにしかなりません。このため、オペレーティング・システムからキーを取り出すユーザーは、Oracle Databaseファイルに対するアクセス権限(暗号化データを復号化するために必要)を持っているか、暗号化データが格納されている表に正当なユーザーとしてアクセスする権限を取得する必要があります。

ユーザーによるキー管理

ユーザーにキーを管理させる場合は、Oracle Advanced Securityなどのネットワーク暗号化を使用して、クライアントからサーバーにキーが簡単に渡されないようにすることが非常に重要です。ユーザーがキーを忘れると、データはリカバリ不能になります。


DBMS_OBFUSCATIONサブプログラムの要約

表96-1 DBMS_OBFUSCATIONパッケージのサブプログラム

サブプログラム 説明

DES3DECRYPTプロシージャ/ファンクション


入力データの復号化フォームを生成します。

DES3ENCRYPTプロシージャ/ファンクション


入力データにTriple-DES暗号化アルゴリズムを適用して、入力データの暗号化フォームを生成します。

DES3GETKEYプロシージャ/ファンクション


指定された乱数値を使用し、Triple-DESアルゴリズムに基づいて暗号化キーを生成します。

DESDECRYPTプロシージャ/ファンクション


入力データの復号化フォームを生成します。

DESENCRYPTプロシージャ/ファンクション


入力データの暗号化フォームを生成します。

DESGETKEYプロシージャ/ファンクション


指定された乱数値を使用して暗号化キーを生成します。

MD5プロシージャ/ファンクション


データのMD5ハッシュを生成します。



DES3DECRYPTプロシージャ/ファンクション

これらのサブプログラムは、入力データの復号化フォームを生成します。

このプロシージャで使用できる初期化ベクターについては、「DES3ENCRYPTプロシージャ/ファンクション」を参照してください。

構文

DBMS_OBFUSCATION_TOOLKIT.DES3DECRYPT(
   input             IN   RAW,
   key               IN   RAW,
   decrypted_data    OUT  RAW,
   which             IN   PLS_INTEGER  DEFAULT TwoKeyMode
   iv                IN   RAW          DEFAULT NULL);

DBMS_OBFUSCATION_TOOLKIT.DES3DECRYPT(
   input_string      IN   VARCHAR2,
   key_string        IN   VARCHAR2,
   decrypted_string  OUT  VARCHAR2,
   which             IN   PLS_INTEGER  DEFAULT TwoKeyMode
   iv_string         IN   VARCHAR2     DEFAUTL NULL);

DBMS_OBFUSCATION_TOOLKIT.DES3DECRYPT(
   input         IN  RAW,
   key           IN  RAW,
   which         IN  PLS_INTEGER DEFAULT TwoKeyMode
   iv            IN  RAW         DEFAULT NULL)
  RETURN RAW;

DBMS_OBFUSCATION_TOOLKIT.DES3DECRYPT(
   input_string  IN  VARCHAR2,
   key_string    IN  VARCHAR2,
   which         IN  PLS_INTEGER DEFAULT TwoKeyMode
   iv_string     IN  VARCHAR2    DEFAULT NULL) 
  RETURN VARCHAR2;

パラメータ

表96-2 DES3DECRYPTプロシージャのパラメータ(RAWデータ用)

パラメータ 説明

input

復号化するデータ。

key

復号化キー。

decrypted_data

復号化されたデータ。

which

0(デフォルト)の場合はTwoKeyModeが使用されます。1の場合はThreeKeyModeが使用されます。

iv

初期化ベクター。

input_string

復号化する文字列。

key_string

復号化キー文字列。

decrypted_string

復号化された文字列。

iv_string

初期化ベクター。


使用上の注意

DES3DECRYPTプロシージャに渡された入力データまたはキーに値が含まれていない場合は、このプロシージャによってエラー「ORA-28231: 難読化ツールキットへの入力が無効です」が発生します。

DES3DECRYPTプロシージャに渡された入力データが8バイトの倍数でない場合は、このプロシージャによって、エラー「ORA-28232: 難読化ツールキットへの入力サイズが無効です」が発生します。ORA-28233は、DES3DECRYPTファンクションには適用できません。

キーの長さが指定されていないか、7バイト以下である場合は、プロシージャによってエラー「ORA-28234: キーの長さが短かすぎます。」が発生します。8バイトより長いキーを使用した場合、余分なバイトは無視されます。したがって、9バイトのキーを指定しても例外は発生しません。

WHICHパラメータに不正な値が指定されている場合は、「ORA-28236: Triple-DESモードが無効です。」が生成されます。有効な値は、0(TwoKeyMode)および1(ThreeKeyMode)のみです。

制限事項

2キー実装の場合は128ビットの単一キー(使用されるのは112ビットのみ)、3キー実装の場合は192ビットの単一キー(使用されるのは168ビット)を指定する必要があります。指定したキーは自動的に56ビットの長さに切り捨てられ、復号化が実行されます。このキーの長さは固定されていて変更できません。


注意:

キーの長さの制限および複数パスによる暗号化の禁止は、暗号化製品の輸出を統括している米国の条項における要件です。


DES3ENCRYPTプロシージャ/ファンクション

これらのサブプログラムは、入力データにTriple-DES(3DES)暗号化アルゴリズムを適用して、入力データの暗号化フォームを生成します。

Oracleが実装する3DESでは、外部暗号ブロック連鎖(CBC)モードによる2キーまたは3キーの実装がサポートされます。

構文

DBMS_OBFUSCATION_TOOLKIT.DES3Encrypt(
   input           IN     RAW,
   key             IN     RAW,
   encrypted_data  OUT    RAW,
   which           IN     PLS_INTEGER  DEFAULT TwoKeyMode
   iv              IN     RAW          DEFAULT NULL);

DBMS_OBFUSCATION_TOOLKIT.DES3Encrypt(
   input_string      IN     VARCHAR2,
   key_string        IN     VARCHAR2,
   encrypted_string  OUT    VARCHAR2,
   which             IN     PLS_INTEGER  DEFAULT TwoKeyMode
   iv_string         IN     VARCHAR2     DEFAULT NULL);

DBMS_OBFUSCATION_TOOLKIT.DES3Encrypt(
   input        IN RAW,
   key          IN RAW,
   which        IN PLS_INTEGER DEFAULT TwoKeyMode
   iv           IN RAW         DEFAULT NULL)
  RETURN RAW;

DBMS_OBFUSCATION_TOOLKIT.DES3Encrypt(
   input_string  IN VARCHAR2,
   key_string    IN VARCHAR2,
   which         IN PLS_INTEGER DEFAULT TwoKeyMode
   iv_string     IN VARCHAR2    DEFAULT NULL)
  RETURN VARCHAR2;

パラメータ

表96-3 DES3ENCRYPTプロシージャ/ファンクションのパラメータ

パラメータ 説明

input

暗号化するデータ。

key

暗号化キー。

encrypted_data

暗号化されたデータ。

which

0(デフォルト)の場合はTwoKeyModeが使用されます。1の場合はThreeKeyModeが使用されます。

iv

初期化ベクター。

input_string

暗号化する文字列。

key_string

暗号化キー文字列。

encrypted_string

暗号化された文字列。

iv_string

初期化ベクター。


使用上の注意

2キーを実装したOracleの3DESインタフェースを使用する場合は、DES3ENCRYPTプロシージャに対する引数に、128ビットの単一キーを指定する必要があります。3キーを実装した場合は、192ビットの単一キーを指定する必要があります。提供されたキーは、2つの64ビットのキーに分割されます。DESの場合と同様に、3DESアルゴリズムでは、各導出キーの8ビットが送信されます。ただし、2キーの3DESを実装した場合は単一の128ビットのキーを、3キーの3DESを実装した場合は単一の192ビットのキーを提供しないとエラーが発生します。DES3ENCRYPTプロシージャでは、デフォルトで2キーの実装が使用されます。

DES3ENCRYPTプロシージャには、初期化ベクター(IV)を指定するオプションもあります。初期化ベクター(IV)は、暗号化対象のデータの前に付加されるランダムなデータ・ブロックです。IVには意味はありません。各メッセージを一意にするために存在しています。入力データにIVを付加すると、暗号化されるデータ・ブロックの先頭に共通のヘッダー情報が追加されるのを防ぐため、データを復号化する情報が暗号解読者に提供される心配がありません。

PL/SQL DES3ENCRYPTプロシージャに渡された入力データまたはキーに値が含まれていない場合は、このプロシージャによってエラー「ORA-28231: 難読化ツールキットへの入力が無効です」が発生します。

DES3ENCRYPTプロシージャに渡された入力データが8バイトの倍数でない場合は、このプロシージャによって、エラー「ORA-28232: 難読化ツールキットへの入力サイズが無効です」が発生します。

DES3ENCRYPTプロシージャを使用してデータの二重暗号化を試行する場合、このプロシージャによってエラー「ORA-28233: 二重暗号化はサポートされません。」が発生します。

キーの長さが指定されていないか、7バイト以下である場合は、プロシージャによってエラー「ORA-28234: キーの長さが短かすぎます。」が発生します。8バイトより長いキーを使用した場合、余分なバイトは無視されます。したがって、9バイトのキーを指定しても例外は発生しません。

whichパラメータに不正な値が指定されている場合は、「ORA-28236: Triple-DESモードが無効です。」が生成されます。有効な値は、0(TwoKeyMode)および1(ThreeKeyMode)のみです。

制限事項

DES3ENCRYPTプロシージャには、2つの制限事項があります。.1つは、暗号化用のDESキーの長さが128ビット(2キーDES)または192ビット(3キーDES)に固定されていることであり、これらのキーの長さは変更できません。

もう1つは、3DESを使用して複数のパスによる暗号化を実行できないことです。(注意: 3DESアルゴリズム内部では、データが複数回暗号化されます。ただし、DES3ENCRYPTファンクションを複数回コールし、3DESアルゴリズムを通じて同じデータを暗号化することはできません。)


注意:

キーの長さの制限および複数パスによる暗号化の禁止は、暗号化製品の輸出を統括している米国の条項における要件です。


DES3GETKEYプロシージャ/ファンクション

これらのサブプログラムは、指定された乱数値を使用して暗号化キーを生成します。Triple-DESでは、戻されるキーが適切な長さになるようにモードを指定します。

構文

DBMS_OBFUSCATION_TOOLKIT.DES3GetKey(
   which        IN   PLS_INTEGER DEFAULT TwoKeyMode,
   seed         IN   RAW,
   key          OUT  RAW);

DBMS_OBFUSCATION_TOOLKIT.DES3GetKey(
   which        IN   PLS_INTEGER DEFAULT TwoKeyMode,
   seed_string  IN   VARCHAR2,
   key          OUT  VARCHAR2);

DBMS_OBFUSCATION_TOOLKIT.DES3GetKey(
   which  IN  PLS_INTEGER DEFAULT TwoKeyMode,
   seed   IN  RAW)
 RETURN RAW;

DBMS_OBFUSCATION_TOOLKIT.DES3GetKey(
   which        IN  PLS_INTEGER DEFAULT TwoKeyMode,
   seed_string  IN  VARCHAR2)
 RETURN VARCHAR2;

パラメータ

表96-4 DES3GETKEYプロシージャ/ファンクションのパラメータ

パラメータ 説明

which

0(デフォルト)の場合はTwoKeyModeが使用されます。1の場合はThreeKeyModeが使用されます。

seed

長さが80文字以上での値。

key

暗号化キー。

seed_string

長さが80文字以上での値。

key

暗号化キー。



DESDECRYPTプロシージャ/ファンクション

これらのサブプログラムは、入力データの復号化フォームを生成します。

構文

DBMS_OBFUSCATION_TOOLKIT.DESDecrypt(
   input             IN   RAW,
   key               IN   RAW,
   decrypted_data    OUT  RAW);

DBMS_OBFUSCATION_TOOLKIT.DESDecrypt(
   input_string      IN   VARCHAR2,
   key_string        IN   VARCHAR2,
   decrypted_string  OUT  VARCHAR2);

DBMS_OBFUSCATION_TOOLKIT.DESDecrypt(
   input            IN  RAW,
   key              IN  RAW)
  RETURN RAW;

DBMS_OBFUSCATION_TOOLKIT.DESDecrypt(
   input_string     IN  VARCHAR2,
   key_string       IN  VARCHAR2)
  RETURN VARCHAR2;

パラメータ

表96-5 DESDECRYPTプロシージャ/ファンクションのパラメータ

パラメータ 説明

input

復号化するデータ。

key

復号化キー。

decrypted_data

復号化されたデータ。

input_string

復号化する文字列。

key_string

復号化キー文字列。

decrypted_string

復号化された文字列。


使用上の注意

PL/SQL DESDECRYPTファンクションに渡された入力データまたはキーに値が含まれていない場合は、Oracleによって「ORAエラー28231: 難読化ツールキットへの入力が無効です」が発生します。

DESDECRYPTファンクションに渡された入力データが8バイトの倍数でない場合は、Oracleによって「ORAエラー28232: 難読化ツールキットへの入力サイズが無効です」が発生します。

キーの長さが指定されていないか、7バイト以下である場合は、プロシージャによってエラー「ORA-28234: キーの長さが短かすぎます。」が発生します。8バイトより長いキーを使用した場合、余分なバイトは無視されます。したがって、9バイトのキーを指定しても例外は発生しません。


注意:

ORA-28233は、DESDECRYPTファンクションには適用されません。

制限事項

暗号化用のDESキーの長さは64ビット(この内56ビットが使用される)に固定されています。このキーの長さは変更できません。


注意:

キーの長さの制限は、暗号化製品の輸出を統括している米国の条項における要件です。


DESENCRYPTプロシージャ/ファンクション

これらのサブプログラムは、入力データの暗号化フォームを生成します。

構文

DBMS_OBFUSCATION_TOOLKIT.DESEncrypt(
   input            IN    RAW,
   key              IN    RAW,
   encrypted_data   OUT   RAW);

DBMS_OBFUSCATION_TOOLKIT.DESEncrypt(
   input_string     IN    VARCHAR2,
   key_string       IN    VARCHAR2,
   encrypted_string OUT   VARCHAR2);

DBMS_OBFUSCATION_TOOLKIT.DESEncrypt(
   input         IN  RAW,
   key           IN  RAW)
  RETURN RAW;

DBMS_OBFUSCATION_TOOLKIT.DESEncrypt(
   input_string  IN  VARCHAR2,
   key_string    IN  VARCHAR2)
  RETURN VARCHAR2;

パラメータ

表96-6 DESENCRYPTプロシージャ/ファンクションのパラメータ

パラメータ 説明

input

暗号化するデータ。

key

暗号化キー。

encrypted_data

暗号化されたデータ。

input_string

暗号化する文字列。

key_string

暗号化キー文字列。

encrypted_string

暗号化された文字列。


使用上の注意

DESアルゴリズムでは、56ビットのキーを使用して、64ビットのブロックでデータの暗号化が行われます。このアルゴリズムでは、提供されたキーの8ビットは破棄されます(このマニュアルでは、キー内のどの部分のビットが破棄されるのかは説明しません)。ただし、そのアルゴリズムを使用する場合は、64ビットのキーを入力しないと、エラーが発生します。

PL/SQL DESENCRYPTプロシージャに渡された入力データまたはキーに値が含まれていない場合は、エラー「ORA-28231: 難読化ツールキットへの入力が無効です」が発生します。

DESENCRYPTプロシージャに渡された入力データが8バイトの倍数でない場合は、このプロシージャによって、エラー「ORA-28232: 難読化ツールキットへの入力サイズが無効です」が発生します。

DESENCRYPTプロシージャを使用してデータの二重暗号化を試行する場合、このプロシージャによってエラー「ORA-28233: 二重暗号化はサポートされません。」が発生します。

キーの長さが指定されていないか、7バイト以下である場合は、プロシージャによってエラー「ORA-28234: キーの長さが短かすぎます。」が発生します。8バイトより長いキーを使用した場合、余分なバイトは無視されます。したがって、9バイトのキーを指定しても例外は発生しません。

制限事項

DESENCRYPTプロシージャには次の制限事項があります。

  • 暗号化用のDESキーの長さは56ビットに固定されています。このキーの長さは変更できません。

  • 複数のパスによる暗号化は実行できません。つまり、DESENCRYPTプロシージャを2回コールして、すでに暗号化されているデータを再度暗号化することはできません。


    注意:

    キーの長さの制限および複数パスによる暗号化の禁止は、暗号化製品の輸出を統括している米国の条項における要件です。


DESGETKEYプロシージャ/ファンクション

これらのサブプログラムは、指定された乱数値を使用して暗号化キーを生成します。

構文

DBMS_OBFUSCATION_TOOLKIT.DESGetKey(
   seed         IN   RAW,
   key          OUT  RAW);

DBMS_OBFUSCATION_TOOLKIT.DESGetKey(
   seed_string  IN   VARCHAR2,
   key          OUT  VARCHAR2);

DBMS_OBFUSCATION_TOOLKIT.DESGetKey(
   seed IN RAW)
 RETURN RAW;

DBMS_OBFUSCATION_TOOLKIT.DESGetKey(
   seed_string IN VARCHAR2)
 RETURN VARCHAR2;

パラメータ

表96-7 DESGETKEYプロシージャ/ファンクションのパラメータ

パラメータ 説明

seed

長さが80文字以上での値。

key

暗号化キー。

seed_string

長さが80文字以上での値。

key

暗号化キー。



MD5プロシージャ/ファンクション

これらのサブプログラムは、データのMD5ハッシュを生成します。MD5アルゴリズムでは、入力データから128ビットの暗号メッセージ・ダイジェスト(MD5ハッシュ)を生成することによって、データの整合性を保証します。

構文

DBMS_OBFUSCATION_TOOLKIT.MD5(
   input            IN   RAW,
   checksum         OUT  raw_checksum);

DBMS_OBFUSCATION_TOOLKIT.MD5(
   input_string     IN   VARCHAR2,
   checksum_string  OUT  varchar2_checksum);

DBMS_OBFUSCATION_TOOLKIT.MD5(
   input         IN  RAW)
  RETURN raw_checksum;

DBMS_OBFUSCATION_TOOLKIT.MD5(
   input_string  IN  VARCHAR2)
  RETURN varchar2_checksum;

パラメータ

表96-8 MD5プロシージャ/ファンクションのパラメータ

パラメータ名 説明

input

ハッシュを生成するデータ。

checksum

128ビットの暗号メッセージ・ダイジェスト。

input_string

ハッシュする文字列。

checksum_string

128ビットの暗号メッセージ・ダイジェスト。