# @fyears/rclone-crypt 中文文档

规范地址：https://npmcn.com/package/%40fyears/rclone-crypt/

版本：0\.0\.7
npm 元数据更新时间：2024-03-23T15:21:15.221Z
中文译文更新时间：2026-11-15T19:42:29.137Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：33.8 kB，6 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- 运行依赖：6 个
- 首次发布：2023-12-28T18:54:32.921Z
- 最新版本发布：2024-03-23T15:21:14.804Z
- 近 30 天下载量：5832（2026-10-16 至 2026-11-14，npm 官方下载统计）
- 已发布版本数：6（近 12 个月 0 个）

## 中文简介

RClone 密码

## 安装

```sh
npm install @fyears/rclone-crypt
```

也可以使用：`pnpm add @fyears/rclone-crypt`、`yarn add @fyears/rclone-crypt`、`bun add @fyears/rclone-crypt`

## README

# RClone 密码

在TypeScript/JavaScript中执行RClone Crypt算法子集.

这基本上是一些逐行翻译 [`rclone/backend/crypt/cipher.go`](https://github.com/rclone/rclone/blob/master/backend/crypt/cipher.go) 财务报告和审定财务报表 [`rclone/backend/crypt/cipher_test.go`](https://github.com/rclone/rclone/blob/master/backend/crypt/cipher_test.go),特征有限.

# 为什么

因为我希望使用广泛使用的Rclone格式在TypeScript/JavaScript加密文件.

# 使用量

```bash
npm install @fyears/rclone-crypt
```

```typescript
import { Cipher } from "@fyears/rclone-crypt";
import { deepStrictEqual } from "assert";

(async function () {
  const password = "custom-password";
  const salt = "custom-salt";
  const cipher = new Cipher("base32");
  await cipher.key(password, salt);

  const fileName = "custom-dir/custom-filename";
  const encFileName = await cipher.encryptFileName(fileName);
  console.log(encFileName);
  const recoveredFileName = await cipher.decryptFileName(encFileName);
  console.log(recoveredFileName);
  deepStrictEqual(fileName, recoveredFileName);

  const fileContent = new Uint8Array([1, 2, 3, 4, 5]); // user provided
  const encFileContent = await cipher.encryptData(fileContent);
  console.log(encFileContent);
  const recoveredFileContent = await cipher.decryptData(encFileContent);
  console.log(recoveredFileContent);
  deepStrictEqual(fileContent, recoveredFileContent);
})();
```

# 特征

-   [x] 文件名加密/解密
-   [x] 文件内容加密
-   [x] 许多测试
-   [ ] 流媒体加密/解密
-   [ ] ~文件名模糊( 未规划)~

## 常见问题

### @fyears/rclone-crypt 是什么？

RClone 密码

### 如何安装 @fyears/rclone-crypt？

在项目目录运行 npm install @fyears/rclone-crypt，或使用 pnpm add / yarn add / bun add。

### @fyears/rclone-crypt 支持 TypeScript 吗？

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

### @fyears/rclone-crypt 支持 ESM 还是 CommonJS？

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

### @fyears/rclone-crypt 可以商用吗？

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

### @fyears/rclone-crypt 的下载量有多少？

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

### @fyears/rclone-crypt 还在维护吗？

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

