如何用croc在10分钟内完成两台电脑间的P2P加密文件传输【免费下载链接】crocEasily and securely send things from one computer to another :crocodile: :package:项目地址: https://gitcode.com/GitHub_Trending/cr/croccroc 是一款命令行文件传输工具两台电脑各运行一条命令生成一个 3 个单词的短码文件就能带着端到端加密直接从一台传到另一台。不需要网盘、不需要端口转发中转型的中继服务器也看不到内容。下面按传一个 2GB 视频这个真实任务把安装、发送、接收和进阶选项完整走一遍。 2GB 视频怎么传到另一台电脑场景是这样的公司电脑上的一个 2GB 视频要拿到家里电脑上没有共享磁盘传网盘又慢又占容量。croc 解决的就是这种点对点文件传输——两台机器哪怕在不同运营商、隔着多个 NAT也能建立连接而且文件内容全程加密。安装 croc如果你已经装了 Go直接编译源码git clone https://gitcode.com/GitHub_Trending/cr/croc cd croc go build -o croc main.go sudo cp croc /usr/local/bin/编译完在任意终端输入croc能输出版本号就说明装好了。 发送和接收文件只要两条命令发送一条命令croc send /path/to/video.mp4终端会立刻显示一个 3 个单词的短码类似swift-tango-amber。这个短码是从 1296 个单词的词表里随机抽的发送端此时会保持等待直到有人拿着同一个码来连。接收输入短码在接收端运行croc不带参数然后在提示符处粘贴短码。注意在 Linux 和 macOS 上croc 故意不让你把短码直接写成命令行参数croc swift-tango-amber会被拒绝因为短码就是密钥不能暴露给同一台机器的其他用户看到进程列表。可以用环境变量传CROC_SECRET*** crocWindows 上直接croc 短码即可。连接建立后开始传数据默认开 4 条并行连接每条按 32KB 的分块顺序推进完成后会打印大小、速度和耗时。中途断了怎么办两端重新运行相同命令会从断点续传已收到的分块不会重发。默认情况下 croc 会通过公共中继基础端口 9009互相找到对方所以两端只要都能上网就行如果两台机器在同一局域网它还会优先走本地直连。 短码是钥匙中继读不到文件短码既当房间号又当钥匙短码在协议里被拆成两半用第一个单词参与哈希决定在中继里开哪个房间剩下的单词参与 PAKE密码认证密钥协商。两端各自算出一份相同的会话密钥之后的数据全部用它加密。中继转发的是密文拿到短码以外的任何信息都无法解密。中继只是交换机再看一张本地中继的时序图就很清楚了客户端先和 tcp local relay 交换 PAKE 消息、各自派生出强密钥然后房间里的所有数据都经过加密管道传输。中继的角色仅限于撮合和转发。短码的生成与拆分逻辑在 src/codephrase/想翻代码可以从这里切入核心传输逻辑在 src/croc/。 基础命令不够用时常用选项速查发送整个文件夹并保留目录结构croc send /path/to/folder先打包再发croc send --zip /path/to/folder排除不需要的文件croc send --exclude *.log /path/to/folder接收时指定保存目录croc --out /path/to/dir直接发一段文字croc send -t hello world限制上传速度比如 500KB/scroc --throttleUpload 500k send file.iso免交互、适合脚本加--yes管道输入也能发文件echo hi | croc send自己跑一个中继不放心公共中继的话在一台有固定地址的机器上运行croc relay默认监听 9009 到 9013 五个端口两端再用--relay 地址:端口指过来即可整个链路完全可控。中继的实现代码在 src/tcp/。 现在就可以试的第一条命令在你手边这台电脑上建个note.txt运行croc send note.txt拿另一台设备把短码输进去收一下——一次完整的加密文件传输就走完了。之后遇到任何参数问题croc send --help和croc --help里有全部选项。【免费下载链接】crocEasily and securely send things from one computer to another :crocodile: :package:项目地址: https://gitcode.com/GitHub_Trending/cr/croc创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考