假设我有一系列索引号,其中包含检查数字 http://en.wikipedia.org/wiki/Check_digit。如果我有足够公平的样本(例如 250 个样本索引号),我是否有办法提取用于生成校验位的算法?
我认为至少应该有一种编程方法来找到一组可能的算法。
更新:索引号的长度为 8 位,包括校验位。
不,一般情况下不行,因为数量possible算法远比你想象的要多。 250 个样本空间可能不足以进行正确的数值分析。
举一个极端的例子,假设您的样本长度均为 15 位。你会not如果算法改变了超过 15 个字符的行为,则能够可靠地检测到该算法。
如果您想确定,您应该对检查数字有效性的代码进行逆向工程(如果可用)。
如果您知道该算法是从比“每种可能的算法”更小的子集中得出的,那么它可能是可能的。但算法可能只是故事的一半 - 即使使用相同的算法,乘数、指数和环绕点也会发生变化。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)