技术解读区块链密码学的起源,了解多链与非对称加密

来源:火星财经 作者:佚名 2018-07-04 10:47:21

多链与非对称加密DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,作为私钥。 常见的对称加密算法:DES,AES,3DES等等。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

74.jpgDdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

非对称加密指的是:加密和解密使用不同的秘钥,一把作为公开的公钥,另一把作为私钥。公钥加密的信息,只有私钥才能解密。私钥加密的信息,只有公钥才能解密。 常见的非对称加密算法:RSA,ECC。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

另一方面,甲方可以使用乙方的公钥对机密信息进行签名后再发送给乙方;乙方再用自己的私匙对数据进行验签。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。 非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

非对称密码体制的特点:算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快。对称密码体制中只有一种密钥,并且是非公开的,如果要解密就得让对方知道密钥。所以保证其安全性就是保证密钥的安全,而非对称密钥体制有两种密钥,其中一个是公开的,这样就可以不需要像对称密码那样传输对方的密钥了。这样安全性就大了很多。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

在EKT中,我们就使用了公私钥结合的非对称加密和路由策略的机制实现拜占庭容错。我们EKT的多链,采用“多链分而治之”的新方案重新设计了一个保障每个合约都能正常运行的公链,其中就使用到了非对称加密对用户的信息进行保存,同时主链和子链信息共享但是功能隔离。这一创新极大程度上简化了架构,降低了数据处理压力,确保一条链上流量激增不会影响到另一条链的效率,在链上进行的任何业务都不会收到其他业务干扰,有效实现了资源隔离。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

在EKT中Token链是一个并行多链的结构,多链多共识,共享用户基础。EKT的Token是链上的一个属性,就像使用了utxo模型的链utxo有其他Token一样,我们的转账事件也是内置的。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

其实EKT解决的一个核心问题是,目前Dapp的开发难度的问题如果使用以太坊的Solidity开发,需要学习以太坊的一整套逻辑,在复杂应用开发的时候需要考虑各种优化方案,同一个功能使用传统C/S结构一天写完的,用以太坊可能要写几周时间,对开发者来说很不友好。 DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

例如针对C/S模型,要写一个非对称加密服务需要: DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

1. 设计一个服务端,可以计算出一对秘钥pub/pri。将私钥保密将公钥公开。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

2. 设计一个客户端请求服务端时,拿到服务端的公钥pub。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

3. 客户端通过AES计算出对称加密的秘钥X。 然后使用pub将X进行加密。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

4. 客户端将加密后的密文发送给服务端。服务端通过pri解密获得X。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

5. 最后还要设计两边通讯机制,通过对称密钥X以对称加密算法来加解密。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

这一套流程若要Dapp/公链开发者写出来,势必在真正开发区块链功能之前就已经被这些繁琐但其实通用的步骤耗费过多精力和资源。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

EKT的中心思想就是设计一个社区的机制,让开发者可以轻易的开发一个可以承载DAPP的主链,其他的交给EKT来处理, EKT 的“一链一主币,多链多共识”的机制为后来的区块链项目开发提供了很大的便利,可以使用于任何区块链适用的应用场景。 EKT 提供了一套底层的区块链机制,其他的区块链项目可以很容易的基于 EKT 的主链代码部署一套自己的主链。在EKT上编写的区块链项目将无需过于担心安全性问题,因为每一个接口都是非常简单并且在许多条并行主链上部署和运行的。部署主链时可以灵活的发行自己主链的代币以及选择共识算法。新部署的主链也可以加入到 EKT 通用积分的整个生态,共享 EKT 生态的用户资源,代币也可以和EKT 主币以及其他主链的代币进行交换和流通。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

EKT主链上每个DPoS节点的公钥都是公开的。这是一种兼顾效率、安全和去中心化的解决方案。Token现在一般被定义成一个智能合约,但如果把它变成一个预先定义好事件的“对象”,这个“对象”可以有自己的参数(比如总量、共识机制等等),则会带来更好的安全体验。接受token的地址可以有两种:普通的用户地址和合约地址,合约地址收到token之后可以执行非图灵完备的合约语言,进行简单的状态计算和token转移。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

以上是作者对区块链密码学的一些思考,和一些在设计EKT的多链多共识时对建设非对称加密底层的考虑。欢迎大家提出疑问,共同探讨。DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

参考阅读:DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

20140314 密码学的发展简史DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

20161225 加密算法之:对称加密与非对称加密扫盲贴DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

20170119 区块链 - 比特币的共识机制DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

20170907 从艺术到科学—密码学的发展历程DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

20180414详解“多链多共识”机制DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

20180202 区块链和比特币 不过是密码学历史上的一次小高潮?DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

20180622 EKT对话Bit-Z,精彩直播访谈回顾DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

《History of cryptography》DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

《BTC whitepaper》DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

《Ethereum whitepaper》DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

《EKT whitepaper》DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么


DdZBCfans | 区块链爱好者_区块链技术_区块链开发_区块链是什么

公众号关注 bcfanscom 或搜索“区块链粉丝”,参与大咖直播和糖果空投活动

BCfans公众号

  • 比特币现金硬分叉,是技术革新还是权利之争?
    比特币现金硬分叉,是技术革新还是权利之争? 09-02 16:52

    在比特币诞生的短短不到十年的历史中,整个社区中爆发了多次的争论,不仅仅是核心开发者和矿工之间的矛盾,还包括开发者与开发...

  • LGGroup乐金钱包软件开发
    LGGroup乐金钱包软件开发 08-31 12:19

    LGGroup支付钱包系统软件开发欧生 137-6067-4940 (LGGroup支付钱包APP软件开发、LGGroup支付钱包APP系统开发、LGGroup支付钱包系统源码开发、LGGroup支...

  • 区块链跨链钱包开发,多币种钱包app开发
    区块链跨链钱包开发,多币种钱包app开发 08-31 12:19

    区块链跨链钱包开发,多币种钱包app开发  区块链钱包是最近非常火爆的一个方向,像新出的Plustoken、HOO等这些钱包app功能都是非常强大的,...

  • 基于华为云区块链服务快速部署和搭建链上应用
    基于华为云区块链服务快速部署和搭建链上应用 08-31 12:19

    华为云区块链服务的整体架构华为云区块链服务BCS是面向企业及开发者的高性能、高可用和高安全的区块链技术平台服务,可以帮助企业和开...

  • V神谈分片技术、等离子技术以及第二层解决方案
    V神谈分片技术、等离子技术以及第二层解决方案 08-31 12:19

    ​ V神,以太坊的创始人,今日在关于开发应该集中在第一层还是第二层这个问题上发表了自己的看法。他说两者之间的权衡这种将是这个......

  • 区块链交易平台开发 公开透明不可篡改
    区块链交易平台开发 公开透明不可篡改 08-30 21:32

    区块链给企业商家带来了不一样的惊喜,同时以区块链技术为基础诞生了许多的衍生系统.赢在移动区块链交易平台就是在这个基础上...

  • 区块链挖矿系统APP定制
    区块链挖矿系统APP定制 08-30 20:54

    区块链挖矿系统研发【咨询开发薇电180-2240-1717高坤】区块链挖矿系统软件定制 最近区块链行业非常热闹,币圈人,都是营销的集...

  • 区块链商城交易系统平台开发
    区块链商城交易系统平台开发 08-30 20:33

    区块链商城交易系统开发,区块链商城交易系统软件,区块链商城交易系统定制,区块链商城交易系统:138-2848-7919可微区块链给...

  • 以太坊开发者资源工具集合
    以太坊开发者资源工具集合 08-30 16:07

    image 1 开发语言、框架与工具 语言 Solidity - 官方推荐以太坊智能合约开发语言,也是目前最为主流的智能合约语言。 Bamboo - 是一种将智...

  • POWH3D区块链开发
    POWH3D区块链开发 08-30 15:15

    POWH3D区块链开发【185→94O6→0l81微电 曾生】​a,从日活的角度说,以太坊上现在dapp是啥?不是idex,也不是分叉以德,更不是以太猫,是一个...

  • 币圈资讯(8月30日)
    币圈资讯(8月30日) 08-30 14:00

    币圈区块链联盟99%币圈的人都关注了 2018.8.30 周四 区块链资讯 1.广州开发区金融局近日联合广州开发区经济和信息化局下发通知,...

  • LGGroup钱包系统开发
    LGGroup钱包系统开发 08-30 12:35

    LGGroup支付钱包系统软件开发欧生 137-6067-4940 (LGGroup支付钱包APP软件开发、LGGroup支付钱包APP系统开发、LGGroup支付钱包系统源码开发、LGGroup支...