gpt4 book ai didi

redundancy - 纠错码

转载 作者:行者123 更新时间:2023-12-01 05:27:16 25 4
gpt4 key购买 nike

对于允许银行/电汇的支付系统,我需要将支付与相应的用户帐户可靠地关联起来。为此,用户应在与其帐户关联的转账中包含引用号。

我想用内置冗余(额外符号)生成这个数字,以便我可以检测和纠正最多 N 个以下(可能是常见的)错误:

  • 序列中的错误符号(错别字)
  • 两个符号的交换(我猜这与两个不正确的符号相同)
  • 序列中缺少的符号
  • 额外 序列中的符号

  • 我搜索了一下,似乎 Reed Solomon 或 BCH 是常用的代码。我唯一找不到的是他们是否支持最后一种情况,即额外的符号。

    另外,我希望代码有一个失败模式,它说:“这太糟糕了,我无法修复它”,而不是给我一个随机的“更正”结果。我想我可以简单地通过生成稀疏的引用号来做到这一点,并希望它不太可能意外地碰到一个有效的引用号,但我宁愿有这样的事情:“我最多可以纠正 5 个错误,但如果它是超过3个,我放弃。”

    有什么想法吗?谢谢!

    最佳答案

    我还没有花太多时间深入研究这个问题,但我想我已经想出了解决这个问题的初步方法,我现在将继续:

    我将使用 32 个字符的字母表创建帐户引用号。我将这个字母表分成 2 个 16 个字符的集合,优化这些集合以最大程度地减少随机错字从另一个集合中产生一个字母的机会。例如,只需将您的键盘一分为二,使用方框中带有角 [1]、[4]、[v]、[z] 的字母作为一组,其他字母作为另一组。

    然后我将使用 [14, 8, 7]16 Reed-Solomon 代码对 32 位帐号进行编码,我首先将其拆分为 8 个 4 位字符。

    由此产生的消息,我将通过选择第 1 个半字母中的第 1 个、第 3 个、第 5 个……字符和从第 2 个半字母中的其他字符来转换为引用编号。这样,如果我检测到任何交换的、多余的或丢失的字符,我就可以“重新同步”引用编号。

    重新同步后,RS 代码应该允许我纠正最多 3 个其他错别字,如果有人犯了比这更多的错误,他们应该会遇到付款问题...... :)

    我很想听听任何人对这种方法可能有的任何评论。

    关于redundancy - 纠错码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13199985/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com