2019独角兽企业重金招聘Python工程师标准>>>

1

Po.et 核心组件概述

本文由Po.et核心开发成员Lautaro Dragan 撰写,详细剖析了Po.et的技术细节。

在Po.et发布时,我们就有打算要建立一个可以用来管理数字资产所有权的安全、稳定的系统的愿景;同时我们希望这个平台易于使用,便于程序员开发。我们坚信,平台的最核心的价值在于在Po.et协议上搭建的各类媒体类DApp。然而, 计划并实现能够和我们愿景相匹配的软件架构需要非常大的工作量。软件堆栈的架构搭建需要大量的分析和试验,还需要对具体场景应用的进行细致的思考。本文将从Po.et技术堆栈的三个主要构成部分去分析Po.et如何将各部分更好地整合在一起,并结合Po.et协议落地的一些应用来展开具体讨论。

2

Po.et 的三层架构

应用层

应用层涵盖了用户需要通过Po.et来内容注册并进行所有权信息管理的一系列工具。这通常包括了所有面向用户的应用,比如CMS集成、内容钱包、以及基于Po.et搭建的许多界面。

主要的一个工具是Po.et的WordPress插件。这个插件将可以让任何用户都可以在WordPress里对内容进行时间戳处理;WordPress本身是目前全球最流行的内容管理系统(CMS),该系统占据全球网站的30%。通过这种方式,任何使用WordPress的用户都可以通过插件在Po.et网络中进行内容注册。

Po.et同时还会提供一个区块浏览器,它会和blockchain.info类似,任何人都可以在上面轻松地搜索在Po.et平台上注册过的内容,并搜索与之对应的每个元数据来确定如何对这些内容进行再次分配。

中间软件层

同时,Po.et会给开发者提供一些可用的资源,开发人员可以使用这些资源将工具和服务集成到Po.et平台上去。这些工具将作为面向用户的应用和Po.et协议之间的开发者桥梁。

这些资源中最应用最广泛的将会是Frost。Frost是一个开放的、RESTful的API,应用程序可以在不需要私人秘钥基础设施的基础上和Po.et网络进行交互。我们开发Frost的目的是为了让内容发布者使用用户名和密码,就可以轻松地链接至Po.et网络,追溯时间戳数据。有了Frost这一核心组件,Po.et不仅安全可靠,同时也易于使用。

除了Frost API之外,我们还会为开发者提供代码库,会提供给开发人员在程序里创建并签署Po.et声明(claim)的方法。我们目前打算为Po.et开发JavaScript和PHP库。

协议层

协议层是由Po.et来连接区块链的技术所构成,它是注册和服务数据申明(data claim) 的核心。

协议层包括了Po.et节点(Po.et Nodes), 这是负责将时间戳数据记录在区块链上的程序。时间戳数据将通过IPFS进行储存。有关协议层功能的更进一步的阐述,请阅读《Po.et开发周报—新的起航 Po.et Node 2.0》

Po.et目前使用比特币区块链来对内容进行时间戳处理,但如果有必要,我们会根据未来发展的情况在此基础上去支持更多的链。我们目前选择比特币区块链的原因在于它主要是基于工作量证明,这也会让数据重写或修改的成本变得非常之高。

3

程序员如何在Po.et平台上进行开发

Po.et团队正在开发可以让任何人都能在该网络上方便注册并进行内容管理的应用程序。同时,Po.et在最初设计的时候就强调可拓展性,我们希望社区可以充分利用Po.et协议的,创建其他应用程序。

举例来说,开发者可以使用Po.et中间软件层的库为内容创作者创建一个数字内容的钱包,以方便内容创建者查看并管理相应作品。这将是应用层技术的一个很好的应用。同样,程序员也可以使用中间软件层来为Po.etk开发一个iOS的SDK,然后通过SDK来搭建对应的iOS应用程序。

4

Po.et应用案例

当具体应用时,上述的这些工具和应用层将会在以下行业中得到体现,他们包括了:

数字媒体出版业。现在这个时代把别人的数字创作复制粘贴到另一台电脑十分简单,但是要保护内容所有者的权利并且要确保作品的真正归属权却非常困难。而Po.et则提供了一种保护所有权和归属权的解决方案,通过将这些数据记录到区块链中,任何人在任何地方都可以查询这些数据。当你使用WordPress插件在Po.et网络上进行内容注册时,任何想要转载该内容的人都可以很便捷地确定它的许可权、归属权和与之相关的转载付费要求(如果适用的话)。另外,开发人员可以使用Frost或JavaScript和PHP插件来把Po.et整合进自定义的内容管理系统中去。Po.et的模型支持传统的数字出版工作流程,也支持去中心化的内容市场模式。

新闻行业。互联网上充斥着各类新闻报道。对于优秀的新闻工作者来说,要出淤泥而不染,并拿到合适的报酬绝非易事。Po.et解决了这些问题。通过使用WordPress插件或利用Frost的自定义应用程序,记者们可以很方便地注册并投放他们的作品,创建定制化的再分配许可证,搭建创新的支付架构,来真正落实他们的作品归属权。

字体许可证。内容中的字体格式也是我们每天消费数字内容的一个重要组成部分。然而,许多字体的使用违反了相应的许可证条款。此外,当前字体的使用方式迫使设计师要和中心化的、负责存储并分发字体的机构签署许可证条约。而现在,设计师可以使用Po.et节点,将字体直接以分布式的方式存储在区块链上。Po.et还会支持定制的字体授权许可证。

这些仅仅Po.et的部分主要应用案例。因为Po.et平台具有代码开源和可扩展的特性,所以解决所有类型的数字内容所有权和管理权相关的问题解决方案是有无限可能性的。

内容来源:区块链铅笔

《区块链100讲》专栏策划及内容编辑:HiBlock区块链社区Cynthia

如需转载,需申请并注明专栏及原文出处。

线下活动推荐

识别下图二维码或阅读原文,即可报名。

转载于:https://my.oschina.net/u/3782027/blog/1837402

区块链100讲:详解Po.et 技术栈相关推荐

  1. 详解Po.et 技术栈

    点击上方 "蓝色字" 可关注我们! 编辑:铅笔盒 Po.et 核心组件概述 本文由Po.et核心开发成员Lautaro Dragan 撰写,详细剖析了Po.et的技术细节. 在Po ...

  2. 区块链100讲:能够证明你是你的数字签名和多重签名

    随着区块链相关技术的创新和突破,很多有形或无形资产都将实现去中心化,数字资产将无处不在.要保护数字出版物版权,实现去中心化,解决业界多年来版权保护不力的难题.无论数字资产,还是数字出版版权,都是有明确 ...

  3. 区块链100讲:据说,80%的人都搞不懂哈希算法

    2019独角兽企业重金招聘Python工程师标准>>> 前面的<区块链100讲>介绍了区块链.算力.挖矿等,几乎每一讲都会提到一个词哈希(Hashing).聊到区块链的时 ...

  4. python区块链开发_Fabric区块链Python开发详解

    Hyperledger Fabric是最流行的联盟区块链平台.Fabric区块链Python开发详解课程 涵盖Fabric区块链的核心概念.Fabric网络搭建.Node链码开发.Python应用开发 ...

  5. 区块链100讲:不做码农做矿工,该怎么和爹妈解释

    说起区块链和比特币的时候都会提到一个词"挖矿",还有个角色叫"矿工",等等,区块链不是属于技术圈吗?怎么和挖矿扯上关系了?只听说过管IT圈儿的人叫码农,怎么还有 ...

  6. 区块链100讲:带你走进EOS的存储系统

    2019独角兽企业重金招聘Python工程师标准>>> 1 海量数据 在一个完全去中心化的区块链系统中,每个节点如果想验证某一笔交易是否正确,则必须下载完整的区块链数据,随着时间的推 ...

  7. 区块链100讲:梅克尔树保障区块链数据不可篡改,想换根就要砍树!

    2019独角兽企业重金招聘Python工程师标准>>> 区块链100讲上期我们讲了哈希算法和公开密钥算法,说到哈希算法提到了一个名词"Merkle tree",梅 ...

  8. 区块链100讲:Truffle——一个更简单的部署智能合约的方法

    本期<区块链100讲>我们将介绍一个更简单的部署智能合约的方法:Truffle. 1 什么是Truffle ? Truffle是针对基于以太坊的Solidity语言的一套开发框架.本身基于 ...

  9. 区块链100讲:V神·以太坊上的分片

    五月初,以太坊创始人"V神"Vitalik Buterin表示,以太坊的内部扩展解决方案--分片已经接近完成.以太坊分片旨在将以太坊分成几个并发网络,从而使整个网络更加高效地扩展, ...

  10. 区块链100讲:从村里的账本来看什么是区块链

    2019独角兽企业重金招聘Python工程师标准>>> 很久以前就有个想法,把区块链的技术和概念整理成一个体系化的知识图谱,方便大家查阅和学习,大话已说出去很久,却一直没有践行(pa ...

最新文章

  1. spark编程基础--2.4函数式编程基础
  2. easyui 获取 combobox select 的值
  3. python时间序列因果检验_用python做时间序列预测八:Granger causality test(格兰杰因果检验)...
  4. Oracle配置文件详解listener.ora,sqlnet.ora,tnames.ora
  5. ubuntu下面调整Atom的python运行结果中的字体大小
  6. IronRuby - 文件编码惹的祸
  7. 使用Azure云原生构建博客是怎样一种体验?(上篇)
  8. php iis ajax 无效,IIS7中Ajax.AjaxMethod无效的原因及解决方法
  9. RocketMQ(二)——系统架构及基本知识
  10. 一文轻松搞懂-条件随机场CRF
  11. 复习-jvm内存分配(1)
  12. python一维数组排序_【Python】数组排序
  13. java基础篇(二) ----- java面向对象的三大特性之继承
  14. spring - 源码下载与构建
  15. 神通广大、卓有奇效的“mini-KMS_Activator_v1.051”(迷你KMS)初现江湖
  16. 《1024伐木累》-小白篇之丽姐(前篇)-总章节四
  17. 卧槽!出了一个Python实时目标跟踪系统神器!
  18. 【题解】Luogu P3110 [USACO14DEC]驮运Piggy Back
  19. 杭州车牌摇号规则详细内容
  20. GPU百科全书(5)桌面显卡的捍卫者

热门文章

  1. Educational Codeforces Round 12 F. Four Divisors 求小于x的素数个数(待解决)
  2. 2012年总结:转折、发展、把握机遇
  3. 转 lucene3搜索引擎,索引建立搜索排序分页高亮显示, IKAnalyzer分词
  4. 今天开始每天一点ffmpeg知识。千里之行 。
  5. Python+Selenium练习篇之4-利用link text定位元素
  6. python面向对象中类对象、实例对象、类变量、实例变量、类方法、实例方法、静态方法...
  7. PKIX path building failed
  8. 【概率论与数理统计】小结7 - 统计学中的基本概念
  9. linux下的函数dirname()和basename()使用
  10. 可变参数宏__VA_ARGS__和...