暗号テキストフィールドの取得スキーム
1. シナリオ要件
通常の暗号化モードでは、コンテンツ全体が全体が暗号化されているため、暗号文にはあいまいクエリの機能がありません。一部のフィールドにはファジー クエリ要件があることを考慮して、SDK は高度な暗号化モードを提供でき、暗号化された暗号文は引き続きファジー クエリ機能をサポートできます。ここでは、ISV がソリューションを決定する際の選択に役立つように、このモデルを簡単に紹介します。
通常の暗号化では、データベース内の暗号化されたデータを取得するときに全文一致を使用する必要があります。たとえば、名前「Zhang Dati」は通常の方法で暗号化され、「DQ21aTz/oe9qT2Xje1tTcddQ」になります。データベースにクエリを実行するときに、「Zhang Dati」に関するレコードを取得したい場合、対応するフィルタリング条件は、暗号化された名前は ""DQ21aTz/" oe9qT2Xje1tTcddQ" レコードとして保存されます。ただし、名前に "大铁" が含まれる人のレコードを取得したい場合、当初はデータベースのファジー クエリ (SQL のようなステートメントなど) を使用して取得できました。
現在、当社の暗号化製品は、このニーズを最大限に満たそうとしています。ファジー クエリを許可し、ISV も許可する暗号化モードがあります。
ただし、この方法を使用するには一定のコストがかかります:
• ファジー クエリ暗号化方式をサポートし、 暗号文の出力が比較的長い;
• サポートされるファジー クエリ 句の長さは、次の値より大きくなければなりません。または 4 英語 / 数字、または 2 中国語文字 ## に等しい#. 短すぎるクエリはサポートされていません (セキュリティ上の理由);
• 返された結果リストには 個の冗長な結果が含まれる可能性があるため、フィルタリング ロジックを追加する必要があります: 最初にレコードを復号化してからフィルタリングします;
本製品では、このフィールドの暗号化モードをフィールドごとに個別に設定できます。 アプリケーションのシナリオに応じて、各フィールドの暗号化スキームを確認してください。 あなたのビジネスに基づいて慎重に検討して選択してください。暗号化が開始されると、変更のコストが高くなります。
#2. プランの紹介
#2.1通常の方法:
1) は、次の場合にのみ適用されます。携帯電話番号 以下のフィールド: SQL ステートメントでは、これらは (key = "value") の形式で where 句に出現するか、where 句には存在しません。
#2)カウンター電話番号フィールド: の where 句に出現する最初の 3 桁 (「%上位 3 桁」のようなキー) のあいまいクエリSQL ステートメント。 (注: つまり、携帯電話番号の最初の 3 桁のあいまいクエリです)
2.2 あいまいクエリ方法をサポートします:
1)SQL ステートメントの where 句に出現する全文任意の文字列の一部 (「%partial%」などのキー) をあいまい検索します。 (携帯電話番号以外のフィールドにのみ適用されます:)
2)携帯電話番号フィールドのみ: SQL ステートメントの where 句に表示されます (キー例: "%最後の 4 桁" の下 4 桁のあいまいクエリ)。 (注: 携帯電話番号の最後の 4 桁を使用してレコードをクエリします。4 桁未満のあいまいクエリはサポートされていません)
アプリケーションのシナリオに応じて、各フィールドの暗号化スキームを確認してください。
注: お客様のビジネスに基づいて慎重に検討し、選択してください。 。暗号化が開始されると、変更のコストが高くなります。
各フィールドに使用する暗号化スキームによっては、暗号化の長さが異なる場合があります。それに応じて RDS の長さを変更します:
##正確なクエリ(#ニックネーム/受信者名varchar(32 文字長*4)varchar(32 文字長*8)通常 varchar(32 文字長*4) シナリオ 4ファジー クエリ (電話 暗号文の例:
| シナリオ 1、2) | #ファジー クエリ ( シナリオ 3) |
#(その他のシナリオ) | ##varchar (32文字数*8) | |
シナリオ 5) | ||
varchar(16 (数値長-8) (24)) | varchar(20 (文字長*4)) |
シナリオ フィールドクリアテキスト通常の方法ファジークエリメソッドをサポートnormal##13834566786このドキュメントに関する FAQ はありません
|
| ||
nick/ 受信者名 / | normal taabaoTEST | ##~CKoqAl2hWzh54uBFv9Suug==~1~ | |
nick/ 受信者名 / | taabaoTEST | #~CKoqAl2hWzh54uBFv9Suug==~ weroiHKLphWWioZ32nkndkWEfjhwiensdfwWKHrw~1~ ######################################################## | |
通常の方法 | 電話 | ##13834566786 $138$SuR h6AtlSj8Z59W2W9EQ==$1$ | ##ファジー クエリをサポート方法 |
電話 | ##$SuR h6AtlSj8Z59W2W9EQ= =$Zut6yIQxS3DclSj/Z5YdwH9EQ2x$1$ | さまざまなシナリオでのコード変更計画: コード開発計画に表示されます。 | |
FAQ |
|