开发基于以太坊的区块链底层平台,秘猿科技想做共识数据时代的Oracle
“与其说区块链是比特币的底层技术,不如说比特币是区块链技术的第一个成功的应用。”秘猿科技的创始人谢晗剑这样看待区块链和比特币的关系。
秘猿科技是一家从事底层区块链平台开发和共识算法研究的公司,其不久前发布了一个基于以太坊构架的区块链平台CITA,其上面可以开发各种区块链应用。CITA的底层算法被称为太极,这是一个许可链共识算法,具有高吞吐量、高容忍度、低通讯开销、低延迟等优点。
“比特币的底层区块链是公有链,公有链的问题在于效率太低,主要原因是公有链由全网所有节点共同控制,而每一个节点都可能是恶意节点,因此公有链的机制必须能够保证在这样的情况下系统还可以正常运行,”谢晗剑说,“从概念来说,许可链可以分为私有链和联盟链,无论哪一种,网络上每一个节点都是已知的,安全环境明显更好,因此系统设计上可以提升效率。”
CITA平台的主要用途是支持原生智能合约,同时也兼容基于以太坊的轻量合约,即开发者可以在平台上开发内容不可篡改的、可被机器可信任执行的、表达任意内容的合约。目前秘猿与中国印钞造币总公司合作了一个实验项目,实现了一个包括出票、贴现、转贴现、托收等操作的完整的票据系统。
我们在不久前的报道中提过这样的观点:比特币可能被设计更好的数字货币取代,但是区块链技术将会有更广泛的应用。支持比特币的底层脚本系统是受限的,几乎只能在其上记录交易流水,如果想要在其上开发其他应用则极为不便。
“正常记录一个交易最简单的办法,就是把交易者的私钥和区块链记录的公钥进行比对即可,这有点类似我们登陆邮箱时系统会把我们输入的密码在数据库进行比对,”谢晗剑说,“而比特币的脚本系统在记录一个交易时,专门写了一个程序,但是这个程序又仅仅是执行了比对私钥和公钥的功能。”
谢晗剑认为,并不是中本聪多此一举,这恰恰是他作为一个杰出工程师聪明的地方。比特币在最初是一个完全没有被验证过的巨型试验,当时的程序脚本最主要的目的是实现实用功能——对货币流转的记账,中本聪当时可能是考虑到了区块链应用的可拓展性,但是当时又没有精力投入更多的设计,因此程序只保留了密钥比对功能,以提醒后人可以做更多的开拓。
区块链从最初的一个分布式的数据库,到支持智能合约,是一个类似从功能手机到智能机的巨大飞跃。如果仅仅作为一个分布式的记账系统,区块链将无法承载商业或金融系统复杂的功能,而一旦智能合约得到普及,就可以首次突破公司的边界,在一个特定的系统内实现商业流程的自动化。“现在这一领域的基础设施尚不完善,我们希望能成为共识数据时代的Oracle。“谢晗剑说。
说到技术上的壁垒,谢晗剑表示,区块链的底层代码看起来像 Java script,但是仅仅是看起来像而已,其实则完全不同。区块链是一个交叉学科,做区块链底层技术的开发,需要用到密码学的知识,还要处理分布式计算带来的时间延迟问题,此外,要理解区块链的激励机制还需要掌握一些金融和经济方面的知识,目前这方面的人才仍然比较缺乏。
秘猿科技的创始人谢晗剑是以太坊下一代共识算法Casper核心开发团队成员,也是以太坊交易所云币的联合创始人,以太坊创始人Vitalik Buterin 是秘猿的顾问,目前秘猿科技正在进行融资。
====================================分割线================================
本文转自d1net(转载)
一个基于DPoS共识算法的区块链案例解析 前面我们介绍了PoW以及PoS的案例,我们会发现它们都有一些缺点,比如PoW耗费能源比较多,而PoS是持有的币越多,成功挖矿的几率越大,这会造成贫富差距越来越大,并且人们都不太愿意消耗自己的币。 而我们的DPoS,全名为Delegated Proof of Stake,也就是股份授权证明就解决了这些不足。 DPoS就是大家投票选出一定数量的节点来挖矿,用户拥有的票的数量和他持有的币数量有关。这就和股份制公司很像了,大家投票选出董事会成员。 这些被选出来的拥有挖矿权的节点的挖矿权力是一模一样的。 如果某个节点挖到了矿,那么他就要将获得的币分一些给投票给他的人。
区块链之旅(三)智能合约与共识机制 智能合约是一套以数字形式定义的约定,包括合约参与方可以在上面执行这些约定的协议。智能合约的基本思想是,各种各样的合约条款可以嵌入到我们使用的硬件和软件中,从而使得攻击者需要很大的代价去攻击。
相关文章
- oracle 在C# 中调用oracle的数据库时,出现引用库和当前客户端不兼容的问题解决方案
- 【C/C++学院】(24)Oracle数据库编程--管理oracle
- 【Oracle】oracle的LAG和LEAD分析函数
- 【Oracle】修改oracle监听端口
- struts+hibernate+oracle+easyui实现lazyout组件的简单案例——struts.xml配置详情
- 《oracle每天一练》Oracle冷备份与数据恢复
- Oracle cmd乱码
- oracle数据库执行脚本常用命令总结
- cx_Oracle连接oracle数据库
- ORA-26663 Oracle Streams 在删除进程出错
- Oracle sql"NOT IN"语句优化,查询A表有、B表没有的数据
- 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之RAC 特殊问题和实战经验(五)
- 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之缓存融合技术和主要后台进程(四)
- 【学亮IT手记】oracle集合运算
- Oracle 查询表中各列名称、表中列数
- Oracle 数据库 恢复
- oracle 表连接 - hash join 哈希连接
- Linux7下安装oracle 12c
- Oracle主机变量锚定、游标变量
- Oracle 技能强化 Part 5 使用字符串