問題タブ [hash-function]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 電話番号を含む膨大なデータセットのハッシュと暗号化技術
問題の説明: 私は、人々の電話番号情報を列の 1 つとして含む、非常に機密性の高いデータセットを扱っているところです。それらをいくつかのエンコードされた値として変換し、分析を行うには、(それらの暗号化/ハッシュ関数) を適用する必要があります。一方向のハッシュにすることもできます。つまり、暗号化されたデータを処理した後、元の電話番号に戻すことはありません。基本的に、電話番号を取得して、処理を実行できるランダムな値に変換するアノニマイザーを探しています。このプロセスについて最善の方法を提案してください。使用するのに最適なアルゴリズムに関する推奨事項は大歓迎です。
更新: データセットのサイズ 私のデータセットは、数百 GB のサイズで非常に巨大です。
更新: センシティブ センシティブ とは、電話番号を分析の一部にすべきではないことを意味していました。したがって、基本的には一方向ハッシュ関数が必要ですが、冗長性はありません - 各電話番号は一意の値にマップする必要があります --2 つの電話番号は同じ値にマップされません。
更新: 実装 ?
あなたの答えをありがとう.私は精巧な実装を探しています.私はハッシュのためにpythonのhashlibライブラリを調べていました.それはあなたが提案したのと同じ一連のステップを必ずしも実行しますか? ここにリンクがあります
できれば Python で、プロセスを達成するためのサンプル コードをいくつか教えてもらえますか?
hash - 衝突ハッシュ関数
こんにちは、ハッシュ関数に大きな問題があります。私は自分の問題を説明しようとします:
char のセットがあり、ハッシュ セットを使用してセットを変更したいので、ハッシュ関数を実行したいのですが、各 char には index があるので、次のようにします。
ペア --> インデックス p = 1 インデックス a = 2 インデックス i = 3 インデックス r= 4 ---> したがって、私のハッシュは 1234 を返します
しかし、たとえば私が持っている場合
そう --> インデックス s = 12 インデックス o = 34 ---> ハッシュ 1234
衝突!!!!
PS : 文字をアルファベット順に並べることができません....
それで、私を助けることができる人はいますか?? どうもありがとう :)
algorithm - k ワイズ独立ハッシュ関数の取得
k-wise 独立ハッシュ関数のファミリに属するハッシュ関数を使用する必要があります。関数を選択できる k-wise 独立ハッシュ関数のセットを生成できる、C、C++、または python の任意のライブラリまたはツールキットへの任意のポインター。
背景: ここでこのアルゴリズムを実装しようとしています: http://researcher.watson.ibm.com/researcher/files/us-dpwoodru/knw10b.pdf個別の要素の問題について。
私はこのスレッドを見てきました: Murmur ハッシュを使用してペアごとに独立したハッシュ関数を生成することについて言及しているk ペアごとに独立したハッシュ関数を生成します。k-wise独立ハッシュ関数に似たものがあるかどうか疑問に思っていました. 利用可能なものがない場合、そのような k-wise 独立ハッシュ関数のセットを構築することは可能でしょうか?
前もって感謝します。
c++ - hash_multimap find が正常に機能しない
しばらくの間、hash_multimap を使用しようとしましたが、一致するキーが見つかったことを知っていても、find メソッドはコンテナーの最後に反復子を与え続けます。私が混乱しているのは、以前は別のプロジェクトで同じコードを使用したことがあり、完全に機能していましたが、現在は再生されていることです。私が何かを見つけていることを知っている理由は、ハッシュ関数とハッシュ比較にいくつかの計算を入れたからです。これは、キーが見つかり、hash_multimap::find メソッドに与えたものと一致することを示していますイテレータをくれます。
最初にヘッダーファイル
そしてソースファイル
スペースを節約するために、上記のブロックから多くのメソッドを切り取ったことに注意してください。それらは当面の問題とは関係がないためです。ただし、それらの宣言はヘッダー ファイルに残しました。また、私がテンプレートを使ってやっているいくつかのことが醜いことも承知しています。とりあえず対処してください。
ここで、コードで何が起こっているのか、どこに問題があるのかについて詳しく説明します。getlocalobjects メソッドでは、"exists(key)" メソッドが呼び出され、hash_multimap に指定されたキーを持つ要素があるかどうかが判断されます。上記のように、 equal_to 関数に cout を入れて、いつ使用され、その結果が何であるかを教えてくれるので、何かを見つけることができることを知っています。
一貫して、(equal_to デバッグを介して) はいと言っていますが、exist メソッドは依然として false を返します。これにより、hash_multimap::find にバグがある可能性があると考えるようになりました。これは、何かが見つかったとしても、hash_multimap::end へのイテレータが返されることを意味するためです。
私の質問は、マルチマップの使用に関してひどく間違っているのでしょうか? 私の特性構造体には、マルチマップが正しく機能するために必要なものがありませんか?
EDITと、忘れていたhashKeyの実装が含まれています
ヘッダ
とソース
編集 [SOVLED] hash_multimap tp を unordered_multimap に変更したところ、動作するようになったので、最初の疑惑は正しかったです。現時点では、hash_multimap にバグがあり、find メソッドが常に最後に反復子を与えるということです。私はVisual Studio C ++ 2010を使用していることに注意してください。他のプラットフォームや他のコンパイラではバグが発生しない可能性がありますが、私の場合は反抗的にバグが発生しました
hash - ハッシュ関数の衝突確率は?
ハッシュ関数の衝突確率についてお聞きしたいのですが?
ありがとう