问题标签 [crc]

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.

0 投票
2 回答
792 浏览

ruby - crc64-jones 或 crc64-ecma 在 ruby​​ 中可用?

我阅读了一篇论文,该论文解释了使用 CRC-64-ISO 算法生成的 CRC 作为哈希键可能会导致大量数据的冲突。Postmodern 的 Ruby CRC 项目非常有趣,但 CRC64 类似乎使用的是 CRC-64-ISO 算法。

我希望从规范的输入中生成可能是唯一的 id,这些 id 稳定且有点人性化,例如,在手动维护的电子表格中很容易使用。我只会使用 SHA1,但它们很长。

我只熟悉哈希键的基础知识,而且我几乎没有发现 CRC-64-ISO 问题,并且在这一点上感觉没有能力组合一个具有更好哈希特性的类。是否有现有的 ruby​​ 库可以在这里使用?

0 投票
4 回答
13061 浏览

crc - 是否可以使用 CRC 进行基本的纠错?

我知道使用 CRC 的全部目的是进行错误检测,但我听说有人说除了错误检测之外,它还可以用来进行基本的纠错。我很好奇是不是这样,如果是这样,它有多强大?我的意思是,我们通常将 CRC 称为能够执行 x 位检测,但我很好奇它是否能够执行 x 位校正。如果是这样,这是如何工作的?谢谢。

0 投票
2 回答
14418 浏览

java - CRC-16 与 0xA001 多项式

我想用 0xA001 多项式计算字节数组的 CRC-16 校验和。但我真的不知道如何在 Java 中做到这一点,以及如何使用给定的多项式。它是某种特殊值(0xA001)吗?你能指点我一个可以为我计算校验和的库,或者指点我一些有用的资源吗?

在此先感谢,M。

0 投票
1 回答
19535 浏览

crc - 什么是汉明距离,我如何为 CRC 方案确定它?

在学习计算机网络课程时,教授谈到了示例代码中两个有效代码字之间的汉明距离。我已经阅读了有关汉明距离的信息,从告诉 2 个字符串之间的差异距离的角度来看,这是有道理的。例如:

发送方发送代码字 1,引入了一个错误,接收方收到 10100。所以您看到第 4 位已损坏。这将导致汉明距离为 1,因为:

2 个字符串的 XOR 得到一个 1,因此汉明距离为 1。我理解到这一点。但随后教授问:

  • 标准 CRC-16 位协议的汉明距离是多少?
  • 标准 CRC-32 位协议的汉明距离是多少?

我有点困惑,想知道是否有人可以提供帮助。谢谢。

0 投票
4 回答
6162 浏览

delphi - 提高 Crc16 计算的速度

我需要在大文件上使用 1021 美元的多项式计算 Crc16 校验和,下面是我当前的实现,但它在大文件上相当慢(例如,90 MB 文件大约需要 9 秒)。

所以我的问题是如何改进我当前的实现(使其更快),我用谷歌搜索并查看了一些实现表查找的示例,但我的问题是我不明白如何修改它们以包含多项式(可能是我的数学失败)。

0 投票
2 回答
2052 浏览

crc - 重命名文件会改变它的CRC吗?

如前所述,重命名文件会更改 CRC 吗?我检查了纯文本文件,但没有。这是否适用于所有格式的所有文件?

0 投票
1 回答
574 浏览

ftp - 在低带宽情况下上传大文件(成功)的最佳方法?

我的工作包括每天将存档文件(10-25mb)上传到 FTP 服务器(使用 cuteFTP)。问题是上传是从偏远的村庄完成的,那里的 USB 数据卡带宽很差。结果,上传的几个文件被损坏。

两个问题:

  1. 有什么方法可以更有效地上传文件吗?除了CuteFTP之外,还有什么模式需要更少的带宽?

  2. 还有什么方法可以通过使用 CRC 等即时检查哪些文件已正确上传,以便上传者在上传时如果数据损坏可以立即重新上传?

我对 PHP 和 MySQL 比较满意。

任何建议...谢谢!

问候,数据库

0 投票
1 回答
880 浏览

c#-4.0 - 校验和算法的并行优化?

下面的代码示例是我在我的一个项目中使用的 CRC-CCITT 的实现。

CRC-CCITT 使用以下多项式公式:

问:上面的多项式只不过是一系列加法/乘法运算。数学的基本定律表明,加法/乘法运算是可以互换的等等,所以表达式如下:

SUM(from 1 to 10) == SUM(from 1 to 5) + SUM(from 6 to 10)是真的。

我需要优化上面的代码,这可能是我项目中调用频率最高的东西,(至少120次/秒)。考虑到上述情况,这是否可以使用 CRC 校验和?我正在考虑使用 Parallel.For(...) 来解决问题,这是否有意义?有人有什么建议吗?

更新 :

实际上每个连接120次。我正在处理至少 15 个同时传入的连接,数据速率为 120[Hz] 等。字节数组可能会有所不同 - 理论最大值 = 65k 字节,但这种情况很少见,最常见的是大约 1k 字节。

0 投票
2 回答
12450 浏览

objective-c - 在 Objective-C 中获取 NSData 的 CRC 校验和

如何在 Objective-C 中计算 NSData 对象的 CRC(32 或 64)?

提前致谢!

0 投票
2 回答
2594 浏览

c# - CRC 函数。将 C 转换为 C#

我需要将这些 C 函数转换为 C#。只是想仔细检查我是否做得对。谢谢!

C代码:

C#代码: