问题标签 [checksum]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hash - 为什么下载有时会标记 md5、sha1 和其他哈希指标?
我到处都看到了这个:
在这里下载!SHA1 = 8e1ed2ce9e7e473d38a9dc7824a384a9ac34d7d0
这是什么意思?就下载而言,哈希是如何发挥作用的……我能用它做什么?这是一个遗留项目,您曾经在下载整个文件后必须验证一些校验和?
algorithm - 如何生成验证码/号码?
我正在开发一个应用程序,用户必须拨打电话并使用手机键盘输入验证码。
我希望能够检测他们输入的数字是否正确。电话系统无法访问有效号码列表,但它会根据算法(如信用卡号码)验证号码。
以下是一些要求:
- 输入有效的随机码一定很困难
- 如果我打错字(数字换位,错误数字),一定很难有一个有效的代码
- 我必须有合理数量的可能组合(比如说 1M)
- 代码必须尽可能短,以避免用户出错
鉴于这些要求,您将如何生成这样的数字?
编辑 :
@Haaked:代码必须是数字,因为用户是用手机输入的。
@matt b:第一步,代码显示在网页上,第二步是调用并输入代码。我不知道用户的电话号码。
跟进:我发现了几种算法来检查数字的有效性(请参阅这个有趣的 Google 代码项目:checkDigits)。
algorithm - TNT.com 跟踪号使用什么校验和(如果有)?
我正在编写一些软件来识别跟踪号码(就像谷歌在搜索 FedEx 或 UPS 号码时识别它们一样)。大多数快递员使用系统,例如“加权平均模数系统”,可用于识别号码是否为有效的跟踪号码。有谁知道 TNT 托运号码是否使用这样的系统,如果是,它是什么?我已经问过 TNT 的支持,代表告诉我他们没有……但我想再确认一下。
windows - 如何远程获取 Windows 机器上文件的校验和?
我正在尝试使用自动发现工具检查远程 J2EE 应用程序服务器中的 JAR 文件何时更改了内容。目前,系统使用 WMI 下载整个 JAR 以在本地对其进行校验,这对于大型 JAR 来说速度很慢。
对于 UNIXy 服务器(和带有 Cygwin 的 Windows 服务器),我可以通过 SSH 登录并运行md5sum foo.jar
. 理想情况下,我想避免在远程服务器上安装额外的软件(可能有数千个),那么有没有一种在普通 Windows 服务器上执行此操作的好方法?
algorithm - 强大而快速的校验和算法?
在以下用例中,您可以推荐哪种校验和算法?
我想生成小型 JPEG 文件(每个约 8 kB)的校验和,以检查内容是否更改。不幸的是,使用文件系统的修改日期不是一种选择。
校验和不需要在密码学上很强大,但它应该能够可靠地指示任何大小的变化。
第二个标准是速度,因为它应该可以每秒处理至少数百张图像(在现代 CPU 上)。
计算将在具有多个客户端的服务器上完成。客户端通过千兆 TCP 将图像发送到服务器。所以没有磁盘 I/O作为瓶颈。
checksum - 我怎么能猜到校验和算法?
假设我最后有一些带有 16 位校验和的数据包。我想猜测使用了哪种校验和算法。
首先,从转储数据中我可以看到数据包有效负载中的一个字节变化完全改变了校验和,所以我可以假设它不是某种简单的异或或求和。
然后我尝试了 CRC16 的几种变体,但运气不佳。
这个问题可能更偏向于密码学,但我真的对任何易于理解的统计工具感兴趣,以找出这可能是哪个 CRC。如果其他一切都失败了,我什至可能会转向绘制不同的 CRC 算法。
背景故事:我有带有某种校验和的串行 RFID 协议。我可以毫无问题地重播消息并解释结果(没有校验和检查),但我无法发送修改过的数据包,因为设备将它们丢弃在地板上。
使用现有软件,我可以更改 RFID 芯片的有效载荷。但是,唯一的序列号是不可变的,所以我没有能力检查每个可能的组合。尽管我可以生成递增一的值转储,但不足以使详尽的搜索适用于这个问题。
如果问题本身还不够,则可以使用带有数据的转储文件:-)
需要参考文件吗? CRC 错误检测算法的无痛指南是很好的参考,我在这里提出问题后发现。
最后,在接受的答案比它的 CCITT 非常有用的提示之后,我 使用了这个 CRC 计算器,并将生成的校验和与已知的校验和异或得到 0xffff,这使我得出结论,最终的异或是 CCITT 的 0x0000 的 0xffff 插入。
checksum - JPEG内置校验和/指纹?
我正在编写一个脚本来查找大型图像库中的删除重复项。目前我正在做一个两通过滤器,首先查找相同大小的文件,然后对文件的 10240 字节片段执行 sha256 以获得具有相同大小的文件的指纹(此处的代码)。
它工作得很好,但我猜可能有内置于 jpeg 格式的校验和,我可以使用它来代替 sha256。
有谁知道是否有校验和或其他可以充当校验和/指纹的组件?如果是这样,是否有一种有效的方法来访问它们?
file - 文件的 CRC 检查
我正在使用一个小型 FAT16 文件系统,我想为存储配置信息的单个 XML 文件生成 CRC 值。如果数据更改或损坏,我希望能够检查 CRC 以确定文件仍处于原始状态。
问题是,如何在不改变文件本身的 CRC 值的情况下,将 CRC 值放入文件中?我可以想到几个解决方案,但我认为这个问题必须有一个相当标准的解决方案。
.net - 客户端使用 WCF 将数据上传到中央服务器,如何验证数据是否已上传?
少于 10 台客户端计算机,每台都有自己的安装程序,必须将数据上传到中央服务器。
客户端数据库如下所示:
tblSales - rowGuid - randomNumber
中央服务器数据库:
- 行指南
- 随机数
- 插入日期
我计划使用 WCF 将文件发送到中央服务器。
如何验证行已插入服务器?我有哪些验证选项?
我可以返回插入的行数并将其与发送的行数进行比较,但是还有其他更强大的方法吗?
checksum - 我怎么能猜到校验和算法?
如果给出了给定的代码 + CRC 字符串,我如何找出 CRC 算法?
我有几个由代码 + 匹配的 CRC 组成的字符串,但不知道如何计算有问题的 CRC,以便我可以生成更多代码字符串。以下是一些示例(16 位代码 + 4 位 CRC):
这些代码来自像 X10 产品这样的射频 (433MHz) 发送器。
我不确定这是 CRC 还是它是什么,但至少它以某种方式从这些代码字符串中计算出来。
更新
RE:找到我也认为是最好的解决方案的规范,但由于这不是选项,我需要以某种方式强制校验和计算。
这就是问题所在,我没有规格,也无法在任何地方得到它们。我已经尝试了几种不同的校验和计算方法而没有结果,有没有办法比较输入字符串找出它们的共同点,这样就可以得到算法