croc:用 PAKE 加密解决“无公网也能安全传文件“的命令行工具
信息充足下面直接输出完整笔记。croc用 PAKE 加密解决无公网也能安全传文件的命令行工具一句话定位croc 是一个用 Go 编写的 CLI 文件传输工具核心价值不是又一个传文件的而是把PAKE密码认证密钥协商这个密码学协议做成了零配置的日常命令——它处于成熟可用而非前沿实验阶段是渐进优化不是范式突破但它把正确的工程决策组合到了一起。核心观点croc 作者在 README 里声称这是唯一同时满足以下所有条件的 CLI 传文件工具通过中继relay让任意两台机器互通不需要端口转发使用PAKE做端到端加密密钥不经过中继服务器支持跨平台Win / Mac / Linux / Android支持多文件、文件夹、断点续传IPv6 优先IPv4 回退可接 Tor 或 SOCKS5 代理这个同时满足的说法是有含量的——后面交叉验证部分会核实。最核心的机制PAKE 让中继服务器瞎了眼croc 最巧妙的设计只有一个点中继服务器只负责中转 TCP 流量永远看不到明文。具体流程发送方运行croc send终端打印一个随机 code phrase如purple-monkey-dishwasher接收方输入这个 code phrase双方通过PAKE协议在不可信的中继通道上协商出一个共享对称密钥之后的数据流用AES-GCM加密中继服务器只是一个哑管道PAKE 的关键特性是即使攻击者截获了完整通信记录也无法暴力破解 code phrase每次尝试都需要真实发起一次握手服务器可以限速。这比传统发文件链接密码的方案安全很多后者的密码容易被中间人直接拿走。# 发送方自动生成 code phrase $ croc send ./report.pdf Sending report.pdf (2.1 MB) Code is: 7-skydive-cornea # 接收方任意平台任意网络 $ croc 7-skydive-corneaLinux/macOS 下为防止 code phrase 泄漏到进程名CVE-2023-43621接收时用环境变量传参CROC_SECRET7-skydive-cornea croc其他常用操作# 发多文件排除目录 croc send --exclude node_modules,.venv ./my-project # 管道传输流式 cat db_dump.sql | croc send # 接收并输出到 stdout croc --yes 7-skydive-cornea db_dump.sql # 自建中继最少 2 个端口 croc relay --ports 9009,9010 # 通过自建中继发文件 croc --relay myrelay.example.com:9009 send ./file放进历史脉络里看croc 比什么更好工具加密中继断点续传依赖scp / rsync有SSH❌ 需直连或 VPN❌需 SSH 账号magic-wormholeSPAKE2更严谨✅ 但不参与传输❌Python 生态crocPAKE AES-GCM✅ 参与但不解密✅单个 Go 二进制局域网拖拽/AirDrop部分❌ 跨网不行❌同网段croc 比 scp 好在哪scp 要求双方都有 SSH 访问权限企业防火墙经常拦 22 端口croc 用普通 TCP 9009-9013更容易穿透。croc 比 magic-wormhole 好在哪根据 CSDN 的对比测评见交叉验证节croc 速度快约 18%弱网断线恢复快 2.8 倍且 Go 单二进制比 Python 环境更容易分发。但 magic-wormhole 的中继服务器不参与数据传输在架构上更干净——croc 的中继虽然看不到明文但确实承载了全部流量带宽运营成本更高。交叉验证信源一CSDN《croc vs magic-wormhole 技术深度对比》2025-09认同 croc 的速度优势85.6 Mbps vs 72.3 Mbps测试 1GB 文件认同断点续传是 croc 的决定性差异magic-wormhole 在 30% 丢包率下测试失败补充了一个原文没说清楚的点magic-wormhole 的中继架构更轻量中继只做信令不做数据而 croc 中继需要承担全部流量带宽——这意味着使用 croc 官方公共中继时带宽受限于中继服务器建议大文件用户自建中继在安全性上补充magic-wormhole 使用 Curve25519 SPAKE2密钥协商上比 croc 的自定义 PAKE 实现更经过学术验证croc 的安全性够用但不是最严谨的选项信源二知乎《magic-wormhole 神奇虫洞介绍》2021侧面印证magic-wormhole 早于 croc 使用了 PAKE 思路croc 的作者在 README 致谢中也明确写了感谢 warner 的想法——warner 正是 magic-wormhole 的原作者。这说明 croc 在设计上有意学习了 magic-wormhole再加上工程化打磨补充了负面信息magic-wormhole 社区反映其传输大文件稳定性不如 croc这与对比测评的结论一致综合判断两个独立信源基本认同原文的核心主张同时揭示了原文未充分说明的架构代价——croc 用中继参与传输换取了更简单的使用体验和断点续传能力这是一个合理的工程取舍但不是没有成本。边界与局限原文没说透的官方公共中继是单点默认使用croc.schollz.com这个服务器宕机或被封锁国内用户注意传输就失败。企业敏感数据不应该走任何公共中继必须自建。code phrase 安全性依赖随机性生成的 5-7 个单词短语熵值约 60 bit对于临时性传输够用但如果 code phrase 通过不安全渠道如微信传给对方中间人窃取后可以抢在真正接收者之前连接——croc 本身有防护PAKE 只允许一次握手但用户心理上容易掉以轻心。中继流量可见性加密的是内容但谁在什么时间传了多大的文件对中继运营者是可见的有元数据泄漏。Tor 代理可缓解但大多数用户不会用。文章声称唯一满足所有条件的 CLI 工具——这是一个典型的时效性声明随时可能被新工具打破读者不必当真核心是理解它在当前工具矩阵里的定位。推演接下来会怎样croc 的 Go 单二进制 自建中继的组合正好踩在了企业内网文件分发和开发者工作流两个场景的需求上。可以预见国内镜像和 CI/CD 集成如 Dockerfile artifact 传输会越来越多地用到它随着--exclude和--quiet等自动化友好参数的完善croc 被嵌入脚本的频率会提升但浏览器端或 Web UI 方向不是它的重点——Android 的两个 F-Droid 客户端质量参差不齐移动端体验仍是短板magic-wormhole 生态Python和 croc 生态Go/CLI大概率长期共存不会有一方消灭另一方个人启发对开发者把 croc 加入你的工具箱替代发百度网盘链接或用微信传文件这两个低安全性习惯。尤其是跨公司传代码包、配置文件时croc send 电话念 code比任何云盘都安全。对运维/DevOps在 CI 管道里有一类场景——构建产物需要从内网传到隔离环境——croc 自建中继 --quiet静默模式几乎是零成本的解决方案不需要搭 FTP/SMB。对企业决策者不要让员工用公共中继传敏感数据。部署一个自建 croc relay 的成本极低Docker 一行命令但能把数据流量控制在内部。延伸思考PAKE 为什么没有更早普及PAKE 协议在学术上已有几十年历史但直到 croc 这类工具出现才在日常工具中可见——是密码学落地工程化太难还是行业教育不足未来哪些场景会是下一个 PAKE 普及点比如 SSH 密钥替代中继参与传输 vs 中继只做信令的设计选择本质是在易用性断点续传、NAT 穿透和架构纯洁性之间的取舍。随着 WebRTC / QUIC 成熟未来是否会有工具把两者都做好——既不依赖中继带宽又支持断线重连croc 依赖作者个人维护公共中继服务器README 里也明确呼吁赞助。开源基础设施的可持续性问题在这里非常具体如果 schollz 停止维护不自建中继的用户会立刻受影响——这提醒我们评估任何依赖公共端点的工具时都应该把是否可自托管作为一级评估维度。 参考来源GitHub - schollz/croc: Easily and securely send things from one computer to another :package: · GitHub

相关新闻

方达炬  发明一例新字词  一例经济司法罪名制度  一例刑事司法罪名制度:缺陷电源传输罪;缺陷产品上市罪;

方达炬 发明一例新字词 一例经济司法罪名制度 一例刑事司法罪名制度:缺陷电源传输罪;缺陷产品上市罪;

方达炬 发明一例新字词 一例经济司法罪名制度 一例刑事司法罪名制度: 缺陷电源传输罪 缺陷产品上市罪

2026/7/24 12:06:37阅读更多 →
结合GEO优化,私有化AI部署提升搜索曝光率

结合GEO优化,私有化AI部署提升搜索曝光率

为何关注本地化与私有化部署在探讨武汉地区支持私有化部署的AI数字员工服务商有哪些这一议题时,企业的核心诉求往往聚焦于数据主权、响应速度以及深度业务整合能力。相较于通用的SaaS工具,私有化部署允许企业将AI系统直接搭建在自有服务器或指定的云端环…

2026/7/24 12:06:37阅读更多 →
WhatsApp 发送频率控制的令牌桶算法实现

WhatsApp 发送频率控制的令牌桶算法实现

WhatsApp 发送频率控制的令牌桶算法实现 目录 为什么固定间隔的限速不够用令牌桶的核心思想基础实现:单线程令牌桶进阶:多节点独立桶 全局配额与调度器的集成生产环境的落地经验小结1. why 固定间隔的限速不够用 前面好几篇文章都提到过 time.sleep(8) …

2026/7/24 12:06:37阅读更多 →
AI工具链如何提升学术专著写作效率

AI工具链如何提升学术专著写作效率

1. 专著写作的痛点与AI工具价值 写专著这件事,本质上是在和时间赛跑。我见过太多学者和专业人士,从最初的踌躇满志到后期的疲于奔命——文献管理混乱、写作效率低下、格式反复调整,这些琐碎事务消耗了本该用于核心思考的精力。去年帮一位医学…

2026/7/24 16:51:56阅读更多 →
OpenClaw「养虾」实战手册,从下载部署到下发自动化任务演示(含安装包)

OpenClaw「养虾」实战手册,从下载部署到下发自动化任务演示(含安装包)

🦞 OpenClaw 小龙虾双系统部署实操指南|搭建专属桌面 AI 数字员工 适配平台:Windows 10/11(64 位)、Mac 系统|新手友好|可视化图形操作|无编程门槛 下文附上两大平台资源下载地址&…

2026/7/24 16:51:56阅读更多 →
AI Agent架构师:2026年黄金职业的核心能力与转型路径

AI Agent架构师:2026年黄金职业的核心能力与转型路径

1. 为什么Agent架构师会成为2026年的黄金职业?最近两年,我观察到技术招聘市场出现一个有趣现象:传统架构师的岗位需求增速放缓,而具备AI Agent系统设计能力的候选人却越来越抢手。去年我帮某头部互联网公司面试架构师岗位时&#…

2026/7/24 16:51:56阅读更多 →
C++基类调用子类方法:虚函数、CRTP与回调的实战解析

C++基类调用子类方法:虚函数、CRTP与回调的实战解析

1. 项目概述:当基类需要“预见”子类行为时在C面向对象编程的日常开发中,我们经常遇到一个看似矛盾的需求:一个基类的方法,在它的实现逻辑里,需要调用一个由子类重写的虚函数。这听起来有点绕,我举个实际的…

2026/7/24 16:51:56阅读更多 →
三天搭完一个 Agent:是产品人的礼物,更是落地的陷阱

三天搭完一个 Agent:是产品人的礼物,更是落地的陷阱

【摘要】 智能体开发门槛随大模型能力快速下探,行业内超八成 Agent 项目止步 Demo 阶段难以进入生产环境。文章从工程落地视角拆解技术增长与落地停滞的剪刀差成因,梳理业务定义、边界设计两大核心门槛,提供立项前的五维自检框架,…

2026/7/24 16:51:56阅读更多 →
Whisper+GPT-SoVITS:语音识别到音色克隆的全链路实战

Whisper+GPT-SoVITS:语音识别到音色克隆的全链路实战

WhisperGPT-SoVITS:语音识别到音色克隆的全链路实战 一、引言 语音 AI 正在经历爆发式增长。OpenAI 开源的 Whisper 实现了接近人类的语音识别能力,而 GPT-SoVITS 等音色克隆技术让"复制一个人的声音"成为现实。 本文将打通语音全链路&#xf…

2026/7/24 16:49:55阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 0:58:53阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 0:58:53阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 0:58:53阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好,我是一名编程初学者,同时这也是我编程学习之路上的第一篇博客。在这里,我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手,目前在学习c语言,我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:06阅读更多 →
【LeetCode 54】螺旋矩阵

【LeetCode 54】螺旋矩阵

问题描述: 解法: 1、模拟(参考自【LeetCode 54】螺旋矩阵-CSDN博客) int *spiralOrder(int **matrix, int matrixSize, int *matrixColSize, int *returnSize) {static const int dirs[4][2] {{0, 1}, {1, 0}, {0, -1}, {-1, …

2026/7/24 0:00:06阅读更多 →
2026 WAIC:模型隐身、智能体疯野,厂商竞赛聚焦办公场景与商业闭环

2026 WAIC:模型隐身、智能体疯野,厂商竞赛聚焦办公场景与商业闭环

知春路不相信模型领先今年WAIC大会,昔日AI六小龙来了五家,分别是Kimi、阶跃星辰、Minimax、百川智能、零一万物。连放弃基模的百川和零一万物都来了,唯一缺席的竟是近几个月来风光无限的智谱。(DeepSeek一直不参加)WAI…

2026/7/24 0:00:06阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/23 22:58:43阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/23 18:58:18阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/23 18:58:18阅读更多 →