0
我有一个简单的问题,由于缺乏知识我无法解决,而且我在网上找不到任何线索。从数字列表中生成一个值
我想:
- 生成从数(INT的阵列)的列表的 “值1”。
- 从随机数生成“值2”。
- 然后通过比较“值2”和“值1”来检查号码列表中是否存在随机数。
为什么我想生成这些值,而不是简单地做一个数组列表中随机数的数组搜索?
因为有必要隐藏号码列表,并且能够通过比较值进行快速检查。
我曾想过“散列”方法,但没有办法散列int数组。
我也想过RSA密码系统,从数字列表生成一个“私钥”,然后从随机数生成“公钥”。但我找不到实现它的方法。
我想知道是否有办法做我想做的事情?
谢谢你的帮助。
实施例:
在PHP服务器具有号码的列表。 (例如:[10,20,24,6,98])
JS中的客户端向服务器发送一个号码。 (实施例:8)
然后
// [10, 20, 24, 6, 98] to hashed or key
$computedIntArray = HashedOrRsaEncrypted($ServerIntArray);
// 8 to hashed or key
$computedClientNumber = HashedOrRsaEncrypted($ClientNumber);
// return true if the clienthashedvalue is present in the serverIntArray
$trueOrFalse = IsPresentInArray($computedClientNumber, $computedIntArray);
我想你是误会我的问题。它不是关于生成随机数,而是关于从一个数字列表中生成一个散列或一个私钥或一个值,并对一个随机数(例如5)进行相同操作。然后能够比较散列或密钥(私有/公共)或值,以便知道随机数是否存在于数字列表中。 – NoSkiiilL
对,为了测试一个数字是否已经在使用,你可以使用一个对象作为散列表或一个集合。但问题在哪里? –
我编辑了我的文章并添加了一个示例。我开始想,也许我想做的事情是不可能的。对不起,我找不到表达自己的另一种方式,英语不是我的母语。谢谢你的帮助。 – NoSkiiilL