3

暗号化されたデータをデータベースに保存しています。

プレーンテキストデータの「ハッシュコード」またはフィンガープリントまたはチェックサムを作成する方法はありますか?「ハッシュコード」で並べ替え/並べ替えると、プレーンテキストデータを保存して実行した場合と同じ順序になります。操作による同じ並べ替え/順序?

基本的に、プレーン テキスト データの順序を維持する値を提供する SOUNDEX() タイプの関数が必要です。次に、暗号化されたデータと「ハッシュコード」の両方を保存し、「ハッシュコード」フィールドでデータの順序を照会します。

これはアプリケーションで実行する必要があり、できれば SQL DB では実行しないでください。

Entity Framework と SQL 2008 と C# 4.0 を使用しています。

4

1 に答える 1

3

暗号化は平文の明らかな構造を意図的に破壊するため、順序付け構造も破壊されます。非暗号化ハッシュコードを使用すると、暗号化されていないレコードの既知の構造を考えると、セキュリティ リークが発生する可能性があります。

暗号化されていないデータから注文列を簡単に作成して保存できますが、新しいレコードが追加されるたびにデータベースの全部または一部を復号化する必要があります。

10、20、30 など、10 ごとにレコードに番号を付けることから始めることができます。これにより、バイナリ検索を使用して新しいレコードを挿入できます。ときどきデータベース全体を解読して番号を付け直し、レコード間のギャップを復元します。理想的な解決策ではありませんが、可能な解決策です。

于 2012-09-03T11:37:03.310 に答える