简介
croc 是文件传输工具,能让任意两台计算机简单安全地传输文件。
它使用中继服务器在两台计算机之间创建全双工实时通信层来保证传输速度,使用一次性的代码短语来识别端点,使用 PAKE 来保证安全,在最大程度上兼顾快速、简单、安全。
首次用户
-
使用
x env use croc即可自动下载并使用 -
x-cmd 提供1分钟教程,其中包含了 croc 命令常用功能的 demo 示例,可以帮你快速上手 croc 。
-
使用案例:
```sh
# 安装 croc
x env use croc
# 发送文件或文件夹(发送时会生成并显示代码短语)
croc send path/file
# 使用代码短语接收文件
croc <code-phrase>
# 发短讯
croc send --text "hello world"
# 使用自己的代码短语(必须超过 6 个字符)发送文件
croc send --code you-code-phrase path/file
# 自动覆盖文件而不提示
croc --yes --overwrite <code-phrase>
# 使用管道 - stdin 和 stdout
cat path/file | croc send
croc --yes <code-phrase> > out
```
功能特点
- 跨平台:可在 Windows、Mac 和 Linux 上使用,允许任意两台计算机传输数据。
- 安全可靠:提供端到端加密,使用 PAKE(密码验证密钥交换)创建强密码。
- 简单且快速:使用中继服务器来帮助传输,不需要本地服务器或配置端口转发,通过一次性的代码短语即可开始使用。
- 功能强大:允许多个文件传输,允许恢复中断的传输,支持代理,支持自托管中继服务器,优先 ipv6 并以 ipv4 为后备。
竞品和相关作品
- magic-wormhole:croc 的灵感来源之一,拥有 croc 的绝大部分功能,但它需要安装大量 python 依赖。
- toss:croc 的灵感来源之一,是一个超小型的文件传输工具。相比于 croc ,生成代码短语很长且需要配置防火墙。
- SCP(Secure Copy Protocol):SCP 是一个用于在本地主机和远程主机之间安全地复制文件的命令行工具。它使用 SSH 进行加密传输。
- rsync: rsync 是一个强大的文件同步工具,可以在本地和远程主机之间同步文件和目录。它支持加密传输和复制。
进一步阅读
- croc 源代码 - croc项目的源代码托管在 GitHub,你可以在这里找到最新版本的 croc 和参与社区贡献。
- croc 作者的博客文章 - 其中介绍了 croc 的缘由、原理和特点,文章简洁易懂。