# @chainsafe/fast-crc32c 中文文档

规范地址：https://npmcn.com/package/%40chainsafe/fast-crc32c/

版本：4\.2\.0
npm 元数据更新时间：2026-04-21T09:51:48.107Z
中文译文更新时间：2026-11-09T09:35:29.744Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40chainsafe/fast-crc32c
原文对照：https://npmcn.com/package/%40chainsafe/fast-crc32c/?lang=original
项目主页：https://github.com/ChainSafe/node-fast-crc32c#readme
源码仓库：https://github.com/ChainSafe/node-fast-crc32c

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：9.5 kB，7 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2021-05-26T09:39:53.773Z
- 最新版本发布：2025-01-27T16:04:44.412Z
- 近 30 天下载量：18198（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：5（近 12 个月 0 个）

## 中文简介

具有硬件加速度和软件回落的CRC32C算法.

## 安装

```sh
npm install @chainsafe/fast-crc32c
```

也可以使用：`pnpm add @chainsafe/fast-crc32c`、`yarn add @chainsafe/fast-crc32c`、`bun add @chainsafe/fast-crc32c`

## README

# 快转32c [![NPM version](https://badge.fury.io/js/fast-crc32c.svg)](http://badge.fury.io/js/fast-crc32c) [![Build Status](https://travis-ci.org/ashi009/node-fast-crc32c.svg?branch=master)](https://travis-ci.org/ashi009/node-fast-crc32c) [![Dependency Status](https://david-dm.org/ashi009/node-fast-crc32c.svg)](https://david-dm.org/ashi009/node-fast-crc32c) [![Coverage Status](https://coveralls.io/repos/github/ashi009/node-fast-crc32c/badge.svg?branch=master)](https://coveralls.io/github/ashi009/node-fast-crc32c?branch=master)

fast-crc32c是用于节点.js的CRC-32C算法执行 硬件加速(通过) [挥发器/sse4 crc32](https://github.com/Voxer/sse4_crc32) 以Anand Suresh盟誓 当硬件加速失败时返回到软件执行中.

## 业绩

CRC-32C更快,然后是CRC-32, 这可以利用 CPU 的全部操作 注册宽度(64bit),而不是CRC-32的8bit.

当使用硬件加速时,CRC-32C比软件快7x~9x左右 已实施CRC-32C.

### 基准

3项经过测试的实施是:

-   **se4 crc32c (中文(简体) )** 硬件加速 CRC-32C [se4 曲线32](https://github.com/Voxer/sse4_crc32)
-   **js crc32c (中文(简体) )** Javascript 已执行 CRC-32C
-   **js 弧点32** Javascript 已执行 CRC-32 from [缓冲-弧32](https://github.com/brianloveswords/buffer-crc32)

```shell
$ yarn run benchmark
yarn run v1.17.3
$ node benchmark
sse4_crc32c_hw for inputs 1024B x 3,210,508 ops/sec ±2.09% (87 runs sampled)
sse4_crc32c_hw for inputs 16836819B, avg 2055B x 252 ops/sec ±2.90% (79 runs sampled)
sse4_crc32c_sw for inputs 1024B x 1,358,720 ops/sec ±1.31% (89 runs sampled)
sse4_crc32c_sw for inputs 16836819B, avg 2055B x 96.41 ops/sec ±1.42% (71 runs sampled)
js_crc32c for inputs 1024B x 409,615 ops/sec ±1.46% (89 runs sampled)
js_crc32c for inputs 16836819B, avg 2055B x 26.00 ops/sec ±0.72% (47 runs sampled)
js_crc32 for inputs 1024B x 403,262 ops/sec ±1.55% (90 runs sampled)
js_crc32 for inputs 16836819B, avg 2055B x 24.82 ops/sec ±1.70% (45 runs sampled)
```

|  | 1024B (英语) | 16836819B,avg 2055B (英语) |
| :-- | --: | --: |
| sse4 crc32c hw (英语) | 3,210,508项行动/秒 | 252 行动/sec |
| sse4 crc32c sw (中文(简体) ) | 1 358 720项行动/sec | 96.41 行动/sec |
| js crc32c (中文(简体) ) | 409,615项行动/sec | 26.00 行动/sec |
| js 弧点32 | 403 262项行动/sec | 24.82 行动/sec |

## 安装

```shell
npm install fast-crc32c@^2.0.0 --save
# For node version before 6
# npm install fast-crc32c@^1.0.0 --save
```

### 使用量

```javascript
var crc32 = require('fast-crc32c');
var result = crc32.calculate(data, initial);
```

-   **数据** 需要, StringQ 缓冲, 需要消化的数据
-   **初次** 可选,编号,初始CRC-32C摘要

## 常见问题

### @chainsafe/fast-crc32c 是什么？

具有硬件加速度和软件回落的CRC32C算法\.

### 如何安装 @chainsafe/fast-crc32c？

在项目目录运行 npm install @chainsafe/fast-crc32c，或使用 pnpm add / yarn add / bun add。

### @chainsafe/fast-crc32c 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @chainsafe/fast-crc32c 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @chainsafe/fast-crc32c 可以商用吗？

@chainsafe/fast-crc32c 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @chainsafe/fast-crc32c 的下载量有多少？

根据 npm 官方下载统计，@chainsafe/fast-crc32c 在 2026/10/10 – 2026/11/08 这 30 天内被下载 18,198 次，日均约 607 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @chainsafe/fast-crc32c 还在维护吗？

最新版本 4\.2\.0 发布于 2025/01/28（1\.8 年前）；至今共发布 5 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/05/26。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

