drand主网还是测试网?tlock时间锁加密如何选择并配置正确的网络 drand主网还是测试网tlock时间锁加密如何选择并配置正确的网络【免费下载链接】tlockTimelock Encryption made practical. The Go tlock library and the tle cmd line tool home to encrypt towards the future.项目地址: https://gitcode.com/gh_mirrors/tl/tlocktlock 时间锁加密Timelock Encryption让你把数据加密到未来只有到达指定时间后才能解密。它依赖 drand 阈值网络按固定频率3 秒一轮广播签名来解锁数据由 Go 库tlock和命令行工具tle组成。新手最常困惑的问题就是该连 drand 主网还是测试网本文用一张对比表 完整配置步骤帮你一次搞懂。 先看懂tlock 时间锁加密如何依赖网络tlock 的核心流程见 tlock.go加密时根据目标时间换算出未来的 drand 轮次号round把数据的密钥锁定到该轮解密时向网络请求对应轮次的 BLS 签名来还原密钥。时间没到就报too early to decrypt。也就是说你连哪个 drand 网络、用哪个 chainhash直接决定数据何时、能否被解锁。网络信息在 networks/http/http.go 中通过NewNetwork校验——它还会强制检查该链是否为非链接链unchained时间锁加密只支持这类链。⚖️ drand 主网 vs 测试网核心区别对比对比项drand 主网Mainnetdrand 测试网Testnet官方中继端点https://api.drand.sh/美https://api2.drand.sh/欧https://api3.drand.sh/亚https://drand.cloudflare.com/全球负载均衡https://pl-us.testnet.drand.sh/https://pl-eu.testnet.drand.sh/https://testnet0-api.drand.cloudflare.com/支持时间锁的链3 秒/轮、G1 签名52db9ba7…84e9713 秒/轮两条链G1f3827d77…202cG27672797f…f5bf安全性生产级、高可用自 2019 年持续运营⚠️不视为安全仅用于测试适用场景真实数据、长期锁定功能验证、学习练习 官方建议正式数据请锁定到主网测试网只用于试验。完整端点与 chainhash 清单见 README.md。 主网配置生产环境最省事的选法好消息tle的默认值就是主网cmd/tle/commands/commands.go 中定义了DefaultNetwork与DefaultChain。不传网络参数即默认连https://api.drand.sh/和主网 quicknet 链。# 默认主网锁定 10 天后解锁 tle -D 10d -o encrypted_file data.txt # 10 天后解密默认主网同样不用传 -n / -c tle -d -o decrypted.txt encrypted_file想显式指定主网例如使用欧洲中继、或确保公钥完整性而用完整 chainhashtle -nhttps://api2.drand.sh/ \ -c52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971 \ -D 10d -o encrypted_data data.txt也可以用轮次号代替时长-r/--round数据在该轮次广播后即可解密详见 cmd/tle/commands/encrypt.go。 测试网配置3 个参数讲清楚测试环境用测试网可以免费快速验证流程。只需换两个参数-n网络端点-cchainhash。# 测试网加密5 秒后解锁 tle -nhttps://pl-us.testnet.drand.sh/ \ -c7672797f548f3f4748ac4bf3352fc6c6b6468c9ad40ad456a397545c6e2df5bf \ -D 5s -o encrypted_data data.txt # 测试网解密必须带上相同的网络参数 tle -d -nhttps://pl-us.testnet.drand.sh/ \ -c7672797f548f3f4748ac4bf3352fc6c6b6468c9ad40ad456a397545c6e2df5bf \ -o decrypted_data encrypted_data 小技巧tle -m可打印当前 drand 网络的元数据chainhash、公钥、轮次等方便确认自己连对了网络。用环境变量免去重复敲参数tle支持TLE_前缀的环境变量cmd/tle/commands/commands.go 中通过 envconfig 解析命令行参数会覆盖环境变量export TLE_NETWORKhttps://pl-us.testnet.drand.sh/ export TLE_CHAIN7672797f548f3f4748ac4bf3352fc6c6b6468c9ad40ad456a397545c6e2df5bf tle -D 5s -o encrypted_data data.txt # 无需再写 -n / -c 解密时网络怎么选v1.3.0 起自动检测从 v1.3.0 开始tle解密时会自动检测密文中的 chainhash 和网络主网密文直接tle -d encrypted_file即可。只有使用非默认网络如测试网、自建 drand时才需要显式传-n/-c。若你指定了非默认端点却仍用默认 chainhashtle会在终端给出警告提示避免网络与链不匹配的坑。❓ 常见问题清单报错not an unchained network你选的链不是非链接链而时间锁只支持 unchained 链见 networks/http/http.go 的ErrNotUnchained。请改用上文列出的链。报错too early to decrypt当前轮次还没到解锁轮次耐心等到期即可定义于 tlock.go 的ErrTooEarly。旧密文解不开v1.0.0 之前生成的测试网密文需用旧版工具go install github.com/drand/tlock/cmd/tlev0.1.0。能否自建 drand 网络可以tle允许指向任意 drand 端点但安全保证完全取决于你对该网络的信任。✅ 总结一句话选型指南正式数据 → 主网直接用默认参数或显式配api.drand.sh52db9ba7…链学习测试 → 测试网配pl-us.testnet.drand.sh 对应 chainhash切勿用于真实数据解密 → 尽量不传参v1.3.0 以后自动检测非默认网络才需手动指定。本地搭建体验git clone https://gitcode.com/gh_mirrors/tl/tlock go build cmd/tle/tle.go更多参数细节与库 API 用法可参考项目根目录的 README.md 与测试文件 tlock_test.go。【免费下载链接】tlockTimelock Encryption made practical. The Go tlock library and the tle cmd line tool home to encrypt towards the future.项目地址: https://gitcode.com/gh_mirrors/tl/tlock创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考