利用独一无二的Cell实现CKB矿机(产品)所有权控制的想法

先讲一个威尼斯跟葡萄牙长途贸易开拓新航路的历史故事。

​ 在地理大发现时代,即我们熟知的新航路的开辟时期,意大利的威尼斯一直是个极其强大的存在,无论是地理优势,还是商业繁荣财富累积跟军事力量政治水平在当时都是NO.1。当时欧洲同亚洲的贸易基本被威尼斯的意大利人垄断,而来自东方的昂贵香料,需经过当时被称作“铁幕”的亚历山大、阿勒颇与大马士革,由穆斯林们长期控制着通往东方的各条商路才能到达欧洲,这也意味着沿途关卡的层层剥削,以及多变的政治形势跟商路盗匪的骚扰。尽管如此,威尼斯香料市场的生意在垄断之下依然赚得盆满钵满。

​ 而葡萄牙呢,地理位置处于欧洲边缘,军事实力很一般,可以说要什么没什么,毫无优势可言。也正是如此困境,才使得他们的航海技术跟造船技术相比其他地区发展跟进步得更快。随着技术的进步,卡拉维尔帆船相继在伊比利亚半岛出现,远洋探险成为了可能。这些融合了传统阿拉伯船只与传统欧洲船只特点的帆船,首次能离开风平浪静的地中海安全地航往大西洋的开放水域进行探索。葡萄牙远洋探险正是基于这样的历史背景跟条件下,开辟出绕道好望角直达印度的商路,中断了威尼斯对西欧香料贸易特别是胡椒贸易的垄断。

对这段历史有兴趣的朋友,可以看看下面这篇文章。这里就不继续展开叙述了。

《16世纪威尼斯的经济危机与贵族政府的成功应对》

​ 为什么要讲这样一个历史故事呢,我们需要一个历史对照映射,当今并不算新的区块链、加密技术究竟能带给我们什么样的改变呢?历史告诉我们,商品的流通可以在新技术之下绕过中间层的层层剥削,也就是没有中间商赚差价,这在互联网时代的现今同样相似地发生着。

​ 但除了绕过中间层,还有没有其他的方式存在,有办法可以不绕过吗?我们需要回归到中间层为何敢于剥削,本质是实施暴力的成本与回报。在商队带着商品经过非控制地区时,地区实施暴力掠夺的成本低,回报高导致了商队需要付出额外的流通成本来保障商品的安全。当成本高于回报时,掠夺跟剥削就不复存在,但在当时抵御暴力掠夺需要付出的成本【组建实力更强的护卫军队等】更高,历史条件所限。

加密技术及区块链技术的出现,让抵御暴力的成本得以在前所未有的降低,也让实施暴力的成本前所未有的提高。正是这种不对称性,让处于这个时代的我们有了更多的可能性。

​ 如果商品或者资产在流通过程甚至生产过程中,参与流通者对它实施掠夺的成本高于回报,我们有理由相信参与流通者会转为提供更好的服务,以从所有权者那获取报酬。这是可信任基础。

作为CKB小矿工的一场ASIC挖矿经历

​ 作为一名深受CKB毒害而初入矿圈的小矿工,发现从矿机期货采购到最终矿机托管投入生产的整个过程,作为矿机的所有者"我"从未见过这些实体矿机,也未曾见过参与流通矿机的矿机厂家、矿机销售、托管矿场销售、矿场技术运维,矿机售后技术的大家们,但一切自然而然地通过网络通讯和物流运输,矿机从厂家出厂,然后一路运到水电富余电力成本低廉的四川托管矿场上架,开挖了。有个矿圈大哥跟我说,矿圈没有合同,全靠信任。

​ 说实话我的心很大,虽然成功挖上矿了,中间也踩了一些坑,不得不说整个过程其实还是有点提心吊胆,其实这也是作为矿工小散普遍面临的问题:处于一种“假“信任状态,麻痹自己认为参与方不作恶。哪怕矿机现在在矿场里生产挖币了,但矿机真的掌握在自己手中吗?假设币价涨上天了,回报远远大于实施掠夺的成本时,这种信任状态还能存在吗?偷算力,扣押矿机、诈骗等等坑我相信以前有,现在有未来还会有。

​ 对于身处同个区域内的我,真正敢依靠暴力掠夺的成本相对高些。然而如果我是一名小散老外,跟我一样的“无接触式”挖矿模式还行得通吗,想通过采购中国AISC矿机同时托管到全球电力相对廉价的四川矿场,他需要付出多大的勇气跟成本,且能保证不被黑吗?如果能解决实体资产在流通过程不易被暴力掠夺的问题,资产控制权始终在所有者手中,意味着解放了更多的生产资料流通,资本跟生产设备会被部署至全球成本更低的区域,实现更高效的资源有效配置。

​ 以CKB的ASIC矿机为例,作为创造价值的生产设备的入参调参都相对简单,成本低廉且稳定的电力,有效散热的低温环境,一定温湿度,依托网络生产运行。如果能通过一种低成本的方案来保障所有者的矿机设备不受掠夺侵犯,我相信会释放更多的生产力和算力。这对于矿机研发厂家、参与流通者、提供成本更低的托管服务的地区经济,整个CKB网络都是大有好处的。

Nervos网络有低成本的解决方案做到保障实体资产的所有权不受侵害吗?

​ 利用非区块链的加密技术给矿机实施资产所有权控制的方案并非没有,但更可能的是成本高。我简单查了些资料:阿里云IoT设备身份认证也应该能解决这个问题,但成本呢?Nervos的Cell模型能以更低成本来解决这个问题吗?我们知道Cell模型

  • 空间大小:Capacity
  • 所有者权限:Lock script
  • 验证规则:Type script
  • 存储数据:Data

​ 其中利用Type脚本可以创建一个全网唯一type_script_hash特征符的独立cell,这串hash以OTP(One Time Programmable)烧录在ckb矿机硬件中,一个cell代表一台矿机的链上所有权。ckb矿机只允许通过定时检索链上所映射的cell并读取Data里的链接矿池及用户数据来配置挖矿。【硬件设计还是软件设计如何提高破解的成本】

​ 矿机的持有者通过持有并更新对应的miner_cell的data数据来完成矿池链接及对应账户的挖矿配置。也就是说如果不持有这个miner_cell,就算通过夺取了矿机实体也无法挖矿获利(敲诈除外)。

​ 当矿机彻底退出算力竞争市场时,也能通过销毁miner_cell释放出储存cell所需的ckb。

​ 我们知道CKB上链的成本很低也足够安全,Cell模型的Lock锁能够安全地保障你的资产所有权,Type Script能提供唯一性,data提供了自定义数据的写入。Cell模型提供了更多资产保管的可能性及可编程性。至于矿机自身相对应软硬件如何设计及成本多少,这种想法的可行性以及实际市场接受度,还需要大家一起来拍砖探讨。

6 Likes

逻辑上感觉没问题。
如果主要通过软件来实现,那硬件破解应该不难。如果要抵御硬件破解,恐怕要大幅增加研发和生产成本,另外矿池的协议也要改。
感觉这个需求的迫切程度还不足以支持这么大成本的改动。

目前挖矿托管也有比较正规的服务商,稍微贵一点,但是合同和服务都还是比较正规的。

虽然就这个问题来说我觉得经济性有点不达标,但楼主的这个创意对我挺有启发性的。感谢分享。

有没有办法改变采矿机中的固件?即Toddminer C1机器。

我个人也认为使用软件实现的话,破解的边际成本很低。就是不知道硬件实现是否有成本低的方案。
我本人就是踩了面上“正规”,价格稍贵的托管服务商的坑 :rofl:,具体哪家就不说了,服务时效矿场环境都真的差评,跑了两天幸好当时合同没先签果断换去另一家托管商,问题才得以解决。
其实这个设想的需求是跨国托管,现在的阶段一旦出问题设备追回基本无望,无论是我们矿机要出去,或者身处局势不稳定或成本高的地区老外朋友们想部署矿机在中国电价便宜的地区,如何利用技术低成本消除这种不信任状态。

固件是可以随便重新刷的,破解成本几乎为0.

我喜欢这些信息,因为C1机器无法按预期或据说能够正常工作。您愿意帮助我解决此问题以提高哈希率和效率吗?

您可以通过[email protected]与我联系。

然后,如何对机器进行编程以使效率最高?谁是编写此固件的人,以及如何将其输入采矿机?

你的意思是你的C1机器算力不足,达不到官方宣称的预期是吗?如果是这样的话,建议你通过你的矿机销售商联系到Toddminer厂家售后,他们有专业的技术人员会帮你处理。Toddminer厂家产品跟服务还是很不错的,我自己的亲身经历是因矿场环境问题设备算力不足,通过厂家售后技术远程处理得到了解决。
如果你想得到超频固件的信息,因为我也不是专业的技术人员。但有个常识性知识,超频有风险还需谨慎,超频容易导致烧坏算力板,这个厂家可不负责售后。

确实,超频是有风险的,但是如果您调整频率和电压以找到最佳位置,它将以最佳效率运行。弯腰的Toddminer C1仅以1.25 TH / s的速度运行,但以1.55TH / s的价格出售,F2Pool是另一个表现出9%拒绝的问题。桌上剩下的硬币太多了。你有什么想法?

Toddminer有联系吗?有人有吗?

很有意思的想法!我觉得通过 ckb 来确认 asic miner 的物权是完全可行的,只需要 asic 矿机在硬件层面做一些支持:

  1. 在 asic 矿机中增加验证 ckb header 和 merkle proof 的功能。
  2. 在用户购买 asic 时,要求用户提供一个 type_id, 这个 type_id 代表了一个 cell,在这个 cell 的 data 里面可以找到用户的 pubkey. 使用 type_id 保证了这个 cell 是唯一的,也使得用户的 pubkey 可以更新。
  3. 每一台 asic 出厂时将用户的 type_id 烧进硬件。这里我觉得可能是个难点,如何保证硬件里面设定的 type_id 不能被简单的替换/破解?
  4. asic 启动时需要提供用户证明,这个证明实际上是一个轻客户端proof,由用户 type id 对应的 cell,包含这个 cell 的 header,这个 header 后面的 N (e.g. 100) 个 headers 以及一个用户签名组成。asic 验证这个 proof 中的 header 没有问题,包含的 pow 总量大于上次启动时的 pow 总量(出厂时设置为0)。通过验证的话,读取 cell 中的 pubkey (即用户的 pubkey),并用这个pubkey验证签名。如果都通过则启动成功。
  5. 矿机启动后的任何操作,都需要有用户的签名才能成功。

如果用户想要更新 pubkey,例如 pubkey 掉了,或者转让给其他用户了,只需要更新对应的 cell 就可以了。因为增加了验证的功能,这样的 asic 矿机成本应该会增加(一点点?),但是可以省去很大的信任成本。

http://todek.io/这是他们的官网,上面有联系方式

感谢janx的回复,矿机启动后的任何操作都需要验签我个人不是很认可,因为会无形会增加矿机上架及维护的成本(托管方的运维上架人员需要学习增加的验签环节跟等待所有权人的签名或签名转移)。
只需要确保产出的ckb币流向是所有权人能控制的就可以了。其他的操作权应该还是放开。

是的,这是限制最大的一种做法,实际需要做到什么程度可以设计,甚至可以由用户自己决定(e.g. 用户可以配置什么操作需要签名)。

香港专业教育学院尝试网站没有运气。有人与他们联系吗?

有个问题,矿机连接哪个节点是矿场控制的,矿场修改全节点来针对特定 type_id 修改返回结果的话怎么办

你指的应该是矿池,矿场只是提供一个托管环境跟能连上网的网络,矿场其实可以理解为IDC机房托管,矿机是超算服务器。 我的理解全节点应该是在矿池端才对,矿池如果做恶的话,应该属于另一层面需要规避的问题了。

修改不了,在 step 4. 会被发现。

距离机器越近越容易作恶,只要可以控制距离机器最近的一个网关就可以随意替换所有数据包;