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:02 阅读更多 →
声控游戏《百宝盒资源》下载安装与麦克风配置完整指南

声控游戏《百宝盒资源》下载安装与麦克风配置完整指南

这次我们来看一个声控游戏《百宝盒资源》的下载安装教程。这个游戏主打声音控制玩法,通过麦克风输入实现游戏操作,适合想要体验语音交互游戏的玩家。 对于声控游戏,大家最关心的是安装包获取渠道是否安全、安装步骤是否清晰、硬件要求是否明…

2026/7/24 12:05:02 阅读更多 →
TMS570LS0714安全MCU热管理、时钟与电源设计实战解析

TMS570LS0714安全MCU热管理、时钟与电源设计实战解析

1. 项目概述与核心价值在汽车电子、工业控制这类对可靠性要求极高的领域,选对一颗微控制器只是第一步,真正决定系统能否在严苛环境下长期稳定运行的,往往是那些隐藏在数据手册深处的“硬核”参数。今天,我们就来深入聊聊TI的TMS57…

2026/7/24 12:05:02 阅读更多 →

最新新闻

AI Agent如何重塑企业工作流:实在Agent的实践与突破

AI Agent如何重塑企业工作流:实在Agent的实践与突破

1. 项目概述:AI Agent如何重塑企业工作流2026年的企业服务市场正在经历一场静默革命——AI Agent已经从实验室概念进化成真正能替代人工的"数字员工"。最近半年我密集测试了17款主流AI Agent产品,其中「实在Agent」的表现尤为突出。这款由国内…

2026/7/24 12:14:04 阅读更多 →
科技先知凯文·凯利预言AI终局:未来五年聚焦三大赛道,人机共生时代将至!

科技先知凯文·凯利预言AI终局:未来五年聚焦三大赛道,人机共生时代将至!

凯文凯利预言AI终局:未来五年聚焦三大核心赛道,人机共生时代来临!在2026世界人工智能大会(WAIC)上,曾准确预言云计算、物联网和虚拟现实的科技先知凯文凯利,将目光投向了AI更远的前沿。他认为&a…

2026/7/24 12:14:04 阅读更多 →
深度解析TI ADS8353/7853 SAR ADC评估套件:从硬件设计到性能测试实战

深度解析TI ADS8353/7853 SAR ADC评估套件:从硬件设计到性能测试实战

1. 项目概述:从芯片到系统,如何高效评估一颗高性能SAR ADC在精密数据采集、工业自动化或者医疗成像系统的设计初期,选型和评估模数转换器(ADC)往往是决定项目成败的关键一步。你手头可能有一份几十页的数据手册&#x…

2026/7/24 12:14:04 阅读更多 →
当工厂模式遇见状态机:FPGA设计中的可复用架构实战

当工厂模式遇见状态机:FPGA设计中的可复用架构实战

导语:为什么你的RTL代码越写越乱“这个模块我已经写了第三遍了,每次改需求都要重写。”——某FPGA工程师的深夜吐槽“新同事看了一周的代码还是没搞懂状态机跳转逻辑。”——某项目负责人的无奈“综合报告说有200个latch,但我明明检查了所有c…

2026/7/24 12:14:04 阅读更多 →
Python基础之面向对象三大特征 -多态

Python基础之面向对象三大特征 -多态

基于鸭子类型的多态 # 定义类 class Dog:def go(self):print("小狗熊")# 定义类 class Fish:def go(self):print("鱼儿游")# 定义类 class Bird:def go(self):print("鸟儿飞")# 定义类 class Robot:def go(self):print("机器人走路")#…

2026/7/24 12:14:04 阅读更多 →
162.2026年国家级科研瓶颈:高精度滚珠丝杠预紧力与热伸长补偿

162.2026年国家级科研瓶颈:高精度滚珠丝杠预紧力与热伸长补偿

2026年国家级科研瓶颈:高精度滚珠丝杠预紧力与热伸长补偿 高精度滚珠丝杠的预紧力与热伸长补偿,长期卡在一个“预紧力调高→刚度上升→摩擦发热加剧→热伸长失控→被迫降低预紧→刚度下降”的死循环里。预紧力决定了轴向刚度和传动精度,但预紧…

2026/7/24 12:13:04 阅读更多 →

日新闻

用Highcharts 创建可拖拽三维散点立方体3D图表

用Highcharts 创建可拖拽三维散点立方体3D图表

该案例基于Highcharts scatter3d 三维散点图实现空间立方体散点可视化,核心特色:三维 X/Y/Z 三轴空间,所有散点分布在 0~10 立方体空间内;散点使用径向渐变实现立体 3D 圆球质感;支持鼠标 / 触屏拖拽画布,…

2026/7/24 0:00:29 阅读更多 →
AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口 AppCertDlls 位于 HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls。本文的程序功能是只读列出这个键在 64 位和 32 位注册表视图中的全部值,并显示每条值的来源、名称、类型和可安全显示的数…

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

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

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

2026/7/24 0:00:29 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/7/23 17:49:47 阅读更多 →

月新闻