ChatGPT解决这个技术问题 Extra ChatGPT

23,148,855,308,184,500 是一个神奇的数字,还是纯粹的机会?

锁定。这个问题及其答案被锁定,因为这个问题离题但具有历史意义。它目前不接受新的答案或交互。

this one 等新闻报道表明上述数字可能是作为编程错误出现的。

美国一名男子突然到他当地的加油站买一包香烟 - 却发现他的卡被收取了 23,148,855,308,184,500 美元。那是 23 万亿美元(14 万亿英镑)——是美国国债的许多倍。*

在十六进制中,它是 $523DC2E199EBB4,乍一看似乎并不十分有趣。

任何人对什么编程错误会导致这种情况有任何想法?

无聊的加油站服务员?
好吧,奥巴马确实说过他正在制定一项新的刺激计划来缓解赤字……
究竟这家伙有什么样的信用卡,该交易通过并引发了仅 15 美元的透支费用......加油站也可能对 2% 的信用卡处理费不满意。
即将被解雇的程序员的复活节彩蛋;)
也许这是某种新的反吸烟运动。 (“看看吸烟到底要花多少钱!” :-)

S
Shaihi

将美分加到数字上,得到 2314885530818450000,十六进制为 2020 2020 2020 1250。

你看到图案了吗?前六个字节已被空格覆盖(十六进制 20,十进制 32)。


再次证明空白不是无害的。
如果这是真的,那么您刚刚获得了“年度最佳调试”奖 :)
VISA 可能比 NASA 更需要他。
看起来他买了一个纸箱,而不是一包 - 十六进制 1250 = 12 月 4688,或 46.88 英镑
书呆子:通过调试他错误的信用卡报告来找出一个男人抽的香烟的品牌和数量;)
S
Synetech

稍等一下;发生了一些可疑的事情。

虽然空格填充的解释看起来确实不错,但它可能(至少部分)似是而非。

VISA 表示,有“不到 13,000 名”客户受到 Visa Buxx 预付卡的混乱影响。到目前为止,我已经找到了几个新闻。新罕布什尔州的乔什·穆辛斯基,田纳西州的杰森·布莱恩,德克萨斯州的罗恩·西尔,贝塞尔的凯伦·泰勒十几岁的儿子,以及奥瓦通纳的十几岁的女孩伊丽莎白·刘易斯。

问题是所有这些费用都完全相同:23,148,855,308,184,500.00 美元。如果问题出在空间填充上,那么为什么所有这些都具有完全相同的 0x1250 美元(46.88 美元)费用?其中两人在加油站买了烟,另外两人在餐馆付了钱,刘易斯买了鸡蛋和牛奶,最后一个是在药店买的。所有这些不同的项目的成本是否相同? 46.88 美元的餐馆账单似乎还可以,但一包香烟呢?用于牛奶和鸡蛋‽

空格填充错误是有意义的,除了它不考虑 0x1250 常量。为什么最后一个 WORD 中的所有数字都以 0x2020 2020 2020 1250 而不是 0x2020 2020 2020 2020 或不同的数字结尾?

嗯,如果只有 13,000 名客户受到影响,那么确切的具体费用可能会以某种方式触发错误。在这种情况下,它不仅仅是一个字段错误。如果只是文本字段被解释为 64 位整数,那么为什么其他数量没有引起它,从而影响到每个人,而不仅仅是 <13,000。不过,为什么 13,000 人恰好在同一周内收取完全相同的费用?

他们说这是一个“临时编程错误”,很可能是这样,但它会是黑客行为吗?在那种情况下,它可能是一个幻数。事实上,它可能是两者的结合:一些黑客放置了 0x1250 自动收费,与空格填充错误相结合,导致检测到一个或两个错误。

Register 认为答案确实是填充字段错误,但没有详细说明为什么它们都相同,尽管其中一条评论提到该数字可能四舍五入到最接近的 100 美元(不太可能,因为银行和银行软件明确地去长度以确保精度)。

(还有一个类似的早期错误的 report。)

杰森布莱恩特的账单:

https://i.stack.imgur.com/iJsz0.jpg

伊丽莎白刘易斯的法案:

https://i.stack.imgur.com/vZKKt.png

罗恩·西尔的账单:

https://i.stack.imgur.com/XHzRa.jpg

Josh Muszynski 的账单:

https://i.stack.imgur.com/XvqvL.jpg


可能十六进制数 1250 = dec 4688 是引起某种额外欺诈检查方法的最小值。如果它完全等于这个代码中的错误是否引入?
+1 你能想象如果 13,000 名客户同时进行退款会发生什么? :P
@petebob796 实际上每个字节都是单独处理的,所以 1250 (12 50) 是 18 和 80。18 是控制字符,80 是大写 P(至少在 ASCII 中)。嗯... Ctrl+P?
12.50 美元是一个相对较小的整数。在数以百万计的交易中,有 13,000 笔交易的确切金额并不令人惊讶。但它确实需要与触发覆盖的其他一些逻辑缺陷相结合。
12.50 小而圆,但它与 0x12.50 完全不同。如果有人花 12.50 美元买一包香烟,我很高兴我戒烟了。
P
PaulG

当您通过卡购物时,软件会立即上线以确保您有足够的资金进行购买,但只会保留用于交易的资金。在工作日结束时,软件会收集过去 24 小时内的所有交易,并将其提交给收单银行进行处理。

提交给银行的过程称为结算,它通过以非常严格的格式发送纯文本文件来完成。 (这都是几十年前开发的,现在使用它的系统数量使其难以现代化)

每个交易在文件中显示为一行文本,其中一部分是交易价值。此字段应为 11 个数字字符(在左侧填充零),并且将始终保存最小公分母中的值(在本例中为美分)。 11 个数字字符可以很好地满足任何货币的值。

看起来这种情况下的支付处理器对其提交软件进行了一些更改,并错误地将零填充替换为空格填充。 a) 服务提供商、b) 收单银行和 c) Visa 是如何在没有被取走的情况下获得的,这让我无法理解。该结算文件的净值(13,000 笔高额交易)将是天文数字,也许这在某个地方也是一个促成因素。


“11 个数字字符可以很好地满足任何货币的价值。” ——津巴布韦元呢?
谁在津巴布韦通过 VISA 付款? (^_^)
这是一个很好的评论。但如果是软件故障,则无法证明 a) 服务提供商、b) 收单银行和 c) Visa 都看到了。它可能在任何时候出现。
佚名

如果您删除尾随零,这将验证为 VISA 卡号。我的猜测是他们刷卡然后手动输入号码,认为刷卡失败了。


大声笑 - 我们刚刚公布了他的 Visa 卡号吗?.. 他又叫什么名字?
ps 这是最有可能的答案,第一个答案的 200+ 票来自极客 :) 每年大约有 50+ 亿次签证交易。
不,这是一个错误,而不是使用错误。大约 13000 名客户受到此错误的影响。
前六个字节纯粹是空格的可能性有多大?
不太可能.. 与不同客户的多次交易,都涉及完全相同的金额!
H
Hans Passant

最终的谜团仍然是 12 50 的来源。它们是 Ctrl+R、P 的 ASCII 代码。这恰好是您必须输入的密码才能输入 QuickBooks 的验证代码。

链接:Where to enter Validation code

真是巧合。我想知道当您在错误的位置键入这些键时会发生什么...


佚名

如果您将 64 位表示左移 8 位(乘以 256),您将得到一个格式正确的信用卡号和 3 个空位,这 3 个安全的额外数字(由于某种原因全为零)。随机数给出格式良好的 CC 编号的几率只有十分之一。

5926 1069 5889 5232 000


佚名

如果你使用数字 23148855308184500 的二进制等值 (1110101110110100) 解码,你会得到 K 矿,这是采矿和矿石的普通话字符。 Kmine 可能意味着“知识矿山”或类似 kmine Holdings Ltd. 的意思。也许 K(矿山或矿石)与美国银行或 Visa 之间存在相关性?


我认为一切都比这更深刻。如果将此数字乘以胡夫金字塔的高度,然后将每三个数字乘以 2012,您将得到半人马座阿尔法星的 1/666 长度。

关注公众号,不定期副业成功案例分享
关注公众号

不定期副业成功案例分享

领先一步获取最新的外包任务吗?

立即订阅