私は格安の擬似ランダム探して一対一int32-> int32の機能
- 全単射(1対1対応)
- あるint32-> int32の機能を探しています少なくとも1つの方向で計算する
- は、増加するシーケンス0,1,2,3、...を良い擬似ランダムシーケンスのように見えるシーケンスに変換するパターン)
私は格安の擬似ランダム探して一対一int32-> int32の機能
ge奇数とxorまたは別のものとxor。
Bijection:奇数は2のモジュロ乗の逆数を持ちますので、乗算は逆数の乗算によって取り消されます。もちろん、xorは別のxorによって元に戻されます。
これは、基本的に線形合同擬似乱数ジェネレータがどのように機能するかです。
おそらくこのタスクの過剰な攻撃ですが、pseudo random permutationや他のプリミティブを適用することを検討してもらえますか?block ciphersです。たとえば、カウンタモードの既知のキーを使用してdesを使用して行うことができます。
younumber xor (des (key, number counter))
何か試しましたか? –
同様の質問:[IDの難読化](http://stackoverflow.com/q/8554286/1009831)。 –
「安い」とはどのくらい安いですか?任意の合理的なブロック暗号は、あなたの擬似ランダム/ビットフリップの欲求を提供する必要があります。 –