DApp是其后端在去中心化的点对点网络上运行,源代码是开源的,网络中不存在能够完全控制DApp的节点。本文基于区块链,谈谈DApp的设计要点。
DApp operates from the back end on a decentralised network of point-to-points, the source code is open-source and there are no nodes in the network that can fully control DApp. This paper is based on block chains and addresses the design elements of DApp.
当你打算在应用市场上传并发布一个APP时,必须选择开发者身份是企业开发者还是个人开发者,并通过软件著作权等证明材料,证明此应用的所有权归属于某个特定企业或个人。
When you intend to disseminate and publish an APP in the application market, you must select whether the developer is the business developer or the individual developer and demonstrate, through supporting material such as the copyright of the software, that ownership of the application belongs to a particular enterprise or individual.
长期以来,产品经理构建中心化应用,开发人员控制中心化应用的升级迭代,运营人员通过中心化的应用市场发布,但随着区块链技术的发展,公链基础设施的不断完善, DAPP(去中心化应用)可能将成为主流。
For a long time, product managers have built central applications and developed people to control the upgrade of central applications, and operators have issued them through the centralized application market, but with the development of block chain technology and the improvement of public chain infrastructure, the DAPP (decentralized applications) may become the mainstream.
DApp是Decentralized Application的缩写,中文叫分布式应用/去中心化应用。在《区块链项目开发指南》里为它下的定义是:
DApp is an acronym for Decentralized Application, which in Chinese is called distributed/decentralized applications. It is defined in the Block Chain Development Guide as:
其后端在去中心化的点对点网络上运行,源代码是开源的,网络中不存在能够完全控制DApp的节点。
The back end runs on a decentralised point-to-point network, where the source code is open-source and nodes that fully control DApp do not exist.
DApp不同的底层区块链开发平台,就好比手机的IOS和Android系统,是各DAPP的底层生态环境。DApp就是底层区块链平台生态上衍生的各种分布式应用,也是区块链世界中的基础服务提供方。
Dapp's different bottom block chain development platforms, like the IOS and Android systems for mobile phones, are the underlying ecological environments of the individual DAPPs. Dapps are a variety of distributional applications derived from the bottom block chain platform and a basic service provider in the block chain world.
比如:比特币客户端和钱包,就是在比特币区块链系统上衍生的DApp,为用户提供点对点的电子现金交易服务。
For example, the Bitcoin client and wallet, the Dapp derived from the Bitcoin block chain system, provides a point-to-point electronic cash transaction service to users.
目前大部分DApp选择在以太坊系统上部署,因为有“智能合约”和“账户体系”的以太坊系统,更加适合DApp的落地。
Most of the Dapps are currently opting to be deployed on the Etherms system, as the Etherm systems with “smart contracts” and “account systems” are better suited to the location of the Dapps.
智能合约接受来自DApp的交易请求和事件,通过触发提前编写好的代码逻辑,操作区块链账本中的状态。DApp通过调用智能合约提供的接口来实现业务逻辑,智能合约封装与区块链账本直接交互的过程,对上层业务逻辑进行支持。
Smart contracts accept transaction requests and events from DApp, and operate the state in the block chain book by triggering a pre-prepared code logic. DApp uses the interface provided by the smart contract to achieve business logic, which is supported by an intelligent contract sealing process that interacts directly with the block chain book.
所以为了实现完整的DApp,开发者不仅需要开发上层应用,还要编写智能合约代码。
So, in order to achieve the full Dapp, developers need to develop not only upper-level applications but also smart contract codes.
先从技术角度来看基于区块链系统的DApp与App之间会有哪些区别。
From a technical point of view, what are the differences between Dapp and App based on block chain systems?
参与区块链系统的每个节点,都可以通过公开接口查询数据记录或开发相关应用。每个节点都遵循同样的共识算法,进行数据更新和存储,每次更新都需要51%以上节点达成共识,参与节点越多系统越安全。
Each node involved in the block chain system can search for data records or develop relevant applications through an open interface. Each node follows the same consensus algorithm for data updating and storage, requiring more than 51% of the node to reach a consensus for each update, and the more participating nodes are safe for the system.
数据分布式存储是区块链核心思想“去中心化”的技术基础,数据的开放及透明意味着DApp的开发者对于应用的控制大为削弱,每次升级更新都需要大多数节点的同意,比如:最近EOS上线主网,投票结果为no go,搞的项目方十分憋屈。
Data distribution storage is the technical basis for the “decentralization” of the core ideas of the block chain. Openness and transparency of data mean that the developers of DApp have significantly weakened their control over applications and that the consent of most nodes is required for each upgrade, such as the recent EOS online main network, where the result of the vote is no go, and the project party is struggling.
数据分布式存储,也意味着开发者无需承担采购服务器、流量等运维费用,只需聚焦在DApp和智能合约之间的业务逻辑上。对公链资源的调用,则依赖公链的经济模式,通过持有相应比例的公链通证,获得相应的权益(即公链算例、存储、流量等资源的使用权)。
Data distribution storage also means that developers do not have to bear the cost of purchasing the server, traffic, etc., but rather focus on the business logic between the DApp and the smart contract. The use of public-chain resources depends on the economic model of the public-chain, and obtains the corresponding benefits (i.e. access rights to resources such as public-chain accounting, storage, flow, etc.) by holding a proportionate share of the public-chain pass.
而通证的流通性也让这种方式十分灵活且成本极低,在不需要相应资源的时候,通过二级市场把通证卖出即可。DApp的开发者可能更加轻量化,减少了对底层技术的依赖,更加强调对用户心理和行为的把握,而且还得懂金融。
The negotiator is also very flexible and very low-cost, selling it through secondary markets when the corresponding resources are not needed. The developers of DApp may be less quantitative, less dependent on bottom technologies, more emphasis on user psychological and behavioural certainty, and more financial literacy.
所以DApp产品经理不仅要通过乌合之众、消费心理学了解用户需求,还得精通博弈论、经济学、金融学等知识才能来规划好产品的未来走势。
Therefore, Dapp product managers need not only knowledge of user needs through conglomerates, consumer psychology, but also knowledge of game theory, economics, financial science, etc. to plan the future direction of their products.
通过共识算法,获得大部分节点一致提交之后,数据便在区块链网络中一直存在,不可修改或销毁。实际上以POW为代表的证明共识机制是概率算法,并不是一经达成共识就不可逆转,而是随着时间推移或某种强化,共识结果被推翻的概率越来越小,结合token的经济体系之后,使得即使有人想恶意破坏也得付出经济代价(算力或权益)。
Through consensus algorithms, the data remain in the network of blocks that cannot be modified or destroyed when most nodes are unanimously submitted. In fact, the mechanism of consensus, represented by Pow, is not a probability algorithm that is irreversible once consensus is reached, but rather that, over time or with some strengthening, consensus outcomes are less likely to be overturned and, when combined with token’s economic system, economic costs (numeracy or interest) are incurred even if there is a desire for malicious destruction.
如The DAO事件发生后,以太坊社区便通过硬分叉的手段回滚交易,诞生了经典以太和以太坊两条链。被盗的资金在分叉后的主流以太坊上不被承认,但在经典以太上,数据依旧存在。
As in the case of the DAO after the incident, the community has been trading back and forth by hard fork, giving birth to the two chains of the classic Ether and the Ether fork. The stolen funds are not recognized in the room after the fork, but data are still available in the classic fork.
在技术上共识过的结果无法撤销(经典以太),但在社会共识上,大多数人承认分叉之后的以太坊,即相当于推翻了之前的共识。
The result of the technical consensus cannot be reversed (the classic Ether), but in the social consensus, most people recognize that the Ether after the split is tantamount to overturning the previous consensus.
所以说虽然区块链通过技术手段去掉了硬中心(具有强制力),但依旧可以通过非技术手段(经济、心理)控制大于51%节点实现软中心。
So, while the block chain has been technically removed from hard centres (with coercive force), soft centres can still be achieved by non-technical means (economic, psychological) of control greater than 51 per cent of nodes.
除主链外,绝大部分的DApp都不具有花费如此高成本实现软中心化的必要(未来不确定),DApp的智能合约如果部署完毕,便极难甚至不可更改,任何细小的智能合约代码错误,都会导致用户不可挽回的损失,而传统互联网应用的开发,适合马上试错,快速迭代。
With the exception of the main chain, the vast majority of Dapps do not have the necessary (foresee uncertainty) to be softened at such a high cost, the smart contracts of Dapp
所以产品经理应注意在设计DApp对应逻辑时,必须非常严谨。 The product manager should therefore be mindful of the need to be very rigorous in designing DApp's corresponding logic. 节点之间相互信任,基于节点地址而非个人身份进行数据交换,解决了个人身份的隐私问题。而通过同态加密及默克尔树等密码学方式,保证了数据记录和验证的隐私,即便泄露也无法解析。 Mutual trust between nodes, the exchange of data based on node addresses rather than personal identities, solves personal identity privacy problems. By cryptography, such as homogenous encryption and Merkel trees, the privacy of data recording and validation is guaranteed, and even disclosure cannot be solved. 由于数据存储和隐私保护的变化,现有APP的账户系统可能要发生天翻地覆的变化。DApp极有可能没有以用户名和密码为基础的账户功能,而是采用公钥-私钥对来代表公链上的一个账户身份,而此账户保存在公链上,DApp通过公链提供的数字证书进行身份验证用户数字身份即可。 As a result of changes in data storage and privacy protection, the current APP accounts system is likely to change dramatically. It is highly likely that DApp does not have an account function based on a user name and password, but rather uses a public-private key pair to represent an account identity in the public chain, which is kept on the public chain, and DApp uses the digital certificate provided by the public chain to authenticate the user’s digital identity. 数据的脱敏/加密储存也让DApp之间的数据价值共享成为可能,只需支付一定通证即可获得可商用无风险的真实数据,并实现用户数据平滑转移,这是中心化App最渴望却无法做到的。 The desensitization/encryption of data also makes it possible to share the value of data between DApp by paying a certain amount of hyphenation to obtain commercially non-risk-free real data and to smooth the migration of user data, which is the most desired but impossible to centralize App. DApp的产品经理不能拘泥于中心化App的设计经验,充分了解区块链系统的特点,并在此基础上推理出相应的业务及服务层特性。现在的DApp并没有一款成功的落地应用,也没有相应的设计标准,每个产品经理都有自己的理解,正是发挥创意的好时机,以下便是本人对DApp的设计构想。 Dapp’s product manager cannot be held hostage to the centralization of App’s design experience and is fully aware of the characteristics of the block chain system and, on that basis, deduces the appropriate operational and service-level characteristics. The current Dapp does not have a successful application or design standard, and each product manager has its own understanding. It is a good time to be creative, and the following is my design for Dapp. 就像web之于pc上的Windows,app之于智能手机上的OS,DApp也需要硬件对于区块链系统的支持。那究竟会出现专门支持区块链系统的硬件,还是在现有硬件系统上升级呢? Like Web Windows on pc, and OS on smartphones, DApp also needs hardware to support block chain systems. Is there going to be hardware that specifically supports block chain systems or upgrades to existing hardware systems? 个人认为:大概率是现有的手机硬件升级,支持区块链系统部署,同时为了确保数字资产安全性,将数字资产存储和使用分开管理,通过数字钱包硬件,利用smartmesh技术和手机连接来保证安全性。 Personally: is likely to be an upgrade of existing mobile hardware to support the deployment of block chain systems, while ensuring the security of digital assets by managing digital asset storage and use separately, using smartmesh technology and cellular connections through digital wallet hardware. 更重要的是:DApp并不是一出现就完全取代现有体系,在很长一段时间里,DApp需要和中心化产品进行数据交互,从技术和商业成本考虑,在现有硬件基础上进行系统升级都是最优方案。而先有社群,再有系统,最后出硬件的模式,也已经被证明是完全可行的。 More importantly, the Dapp does not completely replace the existing system as it emerges; for a long time, , the Dapp needs to interact with centralised products . System upgrades based on existing hardware are the best option, both in terms of technology and commercial costs. 硬件和系统完备,公链的基础性能稳定可靠,公链内的通证经济体系也通过市场检验,在这样的条件下,DApp会迎来整个生态的爆发。 With the availability of hardware and systems, the basic performance of the public chain is stable and reliable, and the mercantilist economic system within the public chain is also tested through the market, and in such conditions the DApp will usher in an entire ecological outbreak. DApp中用户数据存储在主链上,用户登录及各种框架都是由各个服务商通过底层公链提供,基于同一主链的DApp之间可以进行数据平滑转移。 User data in DApp are stored on the main chain, and user login and frameworks are provided by individual service providers through the bottom public chain, allowing smooth data transfer between DApps based on the same main chain. 因此当用户首次实用DApp时,并不是对他一无所知的全新用户,他在主链上可能已有相关数据。产品在范围层设计时应有充分的扩展性,当用户选择转移不同数据集时,产品的结构层和框架层以何种功能形式展现。同时要将不同功能逻辑进行解耦,以数据之间关系作为依据设计功能模块和智能合约。 So when the user first uses DApp, it is not a completely new user with no knowledge of him, and he may have the relevant data on the main chain. The product should be sufficiently extended in scope design, and when the user chooses to transfer different data sets, the structure and frame layer of the product will be presented in functional form. At the same time, different functional logics will be decoupled, using data relationships as the basis for design functional modules and smart contracts. 比如:一款招聘DApp,当用户首次使用时,授权导入自己在社交DApp上的数据,结合此DApp的功能场景,调用社交关系、工作年限、所在岗位、所处地区(如果有的话)等智能合约读取相关数据,将对应数据放入对应设计好的功能模块之中,并通过数据间的逻辑关系提示用户授权其他数据,最后以完成产品形态呈现。 For example, when a user uses DApp for the first time, it authorizes the import of its data on social DApp, in conjunction with the DApp's functional scene, calls on social relations, years of work, places, locations (if any), etc., to read the data, puts the corresponding data into a functional module that is designed to match the data, and gives the user an indication of other data through the logical relationship between the data, and finally completes the product form. 基于数据的模块化功能设计,会根据用户授权的数据维度不同,而呈现千人千面的特点,尽管储存在主链上的数据都经过加密或脱敏处理,仍然不排除相当一部分用户不愿意享受完整的功能。 The data-based modularization function design presents unique characteristics of thousands of people depending on the data dimensions authorized by the user, and although the data stored on the main chain are encrypted or desensitized, it does not preclude a significant number of users from being reluctant to enjoy the full functionality. 在中心化的产品中,因为都是强制授权,所以不存在这种情况。产品经理需要考虑的是大部分目标用户的通用需求,并在保证用户体验的前提下转化为功能。 This does not exist in centralized products because they are mandatory. Product managers need to take into account the common needs of most of the target users of
而DApp产品经理则应该更关注功能之间的联系,哪些功能必须耦合,构成一个完整的模块;哪些功能之间存在弱关联性,可以推荐用户一同使用以提高体验;哪些功能是通用模块(登录、通知、账户等),根据需求引导。
The DApp product manager, on the other hand, should pay more attention to the link between
比如:用户首次登录招聘DApp时,提示需获得账户身份认证、所处行业、岗位、简历等数据,这些数据可能在不同的DApp中即时更新并保存在主链上,而用户可在生态内实现一键互联。
For example, when the user first logs into the recruitment of DApp, it alerts the need for data such as account identification, industry, job, curriculum vitae, etc., which may be immediately updated and stored on the main chain in different DApps, while the user can achieve a key in the ecology.
DApp和App商业模式上有着本质上的区别,DApp用户使用功能是需要付费的,智能合约的运行、用户数据上链都需要支付给矿工的手续费,通证系统是整个系统运转的关键。这里既包括了主链的通证系统,也包括DApp本身和之间通证的流通、汇率、兑换等系统。
There is a fundamental difference between DApp and App's business model. The user function of DApp is a fee-paying , the operation of an intelligent contract, the user data chain, the handling fees paid to miners, and the pass system is the key to the system's functioning. This includes both a hyphenation system in the main chain and a system of circulation, exchange rates, exchange rates, etc. between and among DApp itself and between.
而如何让养成了免费习惯的用户付费使用DApp,也是产品经理面临的巨大挑战之一。
One of the major challenges facing product managers is how to make DAPs available on a fee-paying basis to users who have adopted free-of-charge practices.
DApp的去中心化也体现在收益分配的去中心化上,APP的收益,都归开发者所有,开发者自主决定是否对用户再分配,尽管听起来比较扯,但把薅羊毛算上的话,这种情况还是有的。
The centralization of DApp is also reflected in the decentralization of proceeds, the APP benefits are owned by the developers, who decide whether or not to reallocate the user, although it sounds rather ridiculous, but there are cases where the wool is counted.
而DApp的收益,通过智能合约可以直接将通证分配给贡献者,包括维护系统运行的矿工、愿意贡献数据的用户,同时用户和数据需求方也是付费者。
The benefits of DApp, through smart contracts, can be distributed directly to contributors, including miners who maintain the system, users who are willing to contribute data, and users and data demand parties are payers.
就目前来看,项目开发方的收益主要来自于通证发行之初的一次性分配,因为上线之后,DApp的维护和运营靠的是Token的持有者们,为了维持所拥有的Token的价值而自发组织的,项目方并不需要再付出成本。
For the time being, the benefits to the project developer are derived mainly from a one-time distribution at the beginning of the issue of the certificate, since when the DApp was online, it was maintained and operated by the Token holders, and the project party did not have to incur any additional costs in order to maintain the value of the Token that it possessed.
关于DApp的商业模式和Token系统设计,需要另外开一篇文细讲,这里就不详细说了。
With regard to the business model of Dapp and the Token system design, a separate piece of detail is required, which is not discussed in detail here.
在区块链生态还不成熟的情况下,DApp必须从中心化的应用中获取数据。比如:DApp想要读取天气预测结果,它只能从气象局获取,而气象局作为绝对的中心化单位,绝不会仅仅因为其他DApp想要数据,就创建一个提供结果却没有回报的DApp。
In cases where block chain ecology is not mature, DApp must obtain data from a centralized application. For example, DApp wants to read weather predictions, which can only be obtained from the Meteorological Department, which, as an absolute central unit, will never create a DApp that provides results without any return simply because other DApps want data.
所以DApp产品经理还需考虑到与中心化应用之间数据交互的规则,并设计相应的功能和激励政策。
The Dapp product manager would therefore also need to take into account the rules governing the interaction of data with centralized applications and design the corresponding functionality and incentive policies.
还有一种情况是:传统的中心化应用使用区块链技术降低成本,改进效率。比如:银行间采用区块链技术进行记账,提高清算、轧账的效率,这样的区块链系统,是由传统的中心化单位所运营维护,既不需要激励政策,也不用发型通证。也就是基于联盟链和私有链上的应用,从用户使用角度来看,与中心化App可能并无太大差别。
There is also a situation in which traditional centralization applications use block chain techniques to reduce costs and improve efficiency. For example, bank-to-bank accounting using block chain techniques to improve the efficiency of liquidations and checkouts.
目前,基于区块链技术的DAPP尚处于早期探索状态,还没有大规模实际应用价值的DAPP出现。但不可否认的是区块链技术带给了我们巨大的想象空间,作为承载将技术转化为服务,连接功能和用户职责的产品经理,需要提前做好迎接未来的知识储备。
At present, DAPP, based on block chain technology, is in an early state of exploration, and there is no large-scale practical application of DAPP. But it is undeniable that block chain technology has given us enormous imagination, as product managers who carry the technology into service, connect functionality and user responsibility, and need to pre-position knowledge for the future.
本文由 @好青年Hans 原创发布于人人都是产品经理。未经许可,禁止转载
This post was published by @GoodYoungHans and was originally published by everyone as a product manager.
题图来自网络
The title is from the Internet.
注册有任何问题请添加 微信:MVIP619 拉你进入群
打开微信扫一扫
添加客服
进入交流群
发表评论