Hash 为短代码选择校验和以防止键入错误
我需要选择一种校验和算法,通过在代码末尾添加1个字符(也在[a-Z0-9]中)来检测用户何时错误输入了4个字符的[a-Z0-9]代码 对ASCII码求和并应用模是一个糟糕的解决方案,因为颠倒两个键的笔划不会引起注意 我可能会使用Fletcher算法,但我想知道是否有人知道为这个用例设计的算法(非常非常小的字节数,取决于位置)Hash 为短代码选择校验和以防止键入错误,hash,checksum,Hash,Checksum,我需要选择一种校验和算法,通过在代码末尾添加1个字符(也在[a-Z0-9]中)来检测用户何时错误输入了4个字符的[a-Z0-9]代码 对ASCII码求和并应用模是一个糟糕的解决方案,因为颠倒两个键的笔划不会引起注意 我可能会使用Fletcher算法,但我想知道是否有人知道为这个用例设计的算法(非常非常小的字节数,取决于位置) 谢谢。您可以尝试ISO 7064 Mod x,y算法。根据ISO描述: ISO/IEC 7064:2002中规定的检查字符系统可以检测(): 所有单个替换错误(单个字符替
谢谢。您可以尝试ISO 7064 Mod x,y算法。根据ISO描述: ISO/IEC 7064:2002中规定的检查字符系统可以检测():
- 所有单个替换错误(单个字符替换另一个字符,例如4234替换1234)李>
- 所有或几乎所有单个(局部)换位错误(两个单个字符的换位,相邻或之间有一个字符,例如12354或12543表示12345)李>
- 所有或几乎所有移位错误(整个字符串向左或向右移位)李>
- 双重替换错误的比例较高(同一字符串中有两个单独的单一替换错误,例如1234567的7234587)李>
- 所有其他错误的高比例
- (包括几种校验和算法的Java和Javascript实现)
- (解释并包括VC实现)
- (用于动物识别)
- (音乐行业也使用)
- (其他传媒公司)