内容简介:第四届以太坊开发者大会开始之前,Status 在布拉格举办了一场主题为 Cryptolife(让加密技术走进生活) 的黑客马拉松。我与来自我们的目标是将 Web 2.0 创造的绝佳用户体验复刻到 Web 3.0 上。 Paypal 自从推出了用户可以兑现的数字支票功能之后,在一年之内吸引了数百万用户。同样,微信受到了中国传统的发红包习俗的启发,推出了线上发红包游戏,在
第四届以太坊开发者大会开始之前,Status 在布拉格举办了一场主题为 Cryptolife(让加密技术走进生活) 的黑客马拉松。我与来自 Volca.tech / Eth2.io 的 Mikhail 以及来自 trustlines.network / brainbot technologies 的 Bernd、Dong-ha、Dominik 和 Kristoffer 一起开发了一款名为“onbotting.eth”的去中心化应用。
我们的目标是将 Web 2.0 创造的绝佳用户体验复刻到 Web 3.0 上。 Paypal 自从推出了用户可以兑现的数字支票功能之后,在一年之内吸引了数百万用户。同样,微信受到了中国传统的发红包习俗的启发,推出了线上发红包游戏,在 一年之内 成了世界上最大的通讯应用。这些都是非常了不起的解决方案,因为它们满足了用户的需求,但是密码学货币目前还做不到这样。对此,我们的解决方案是让用户将密码学货币放入某个地址然后发送出去,无需用到钱包和 gas 之类的东西,就像 Paypal 那样。
我们非常荣幸地获得了 Alex Van De Sande 颁发的社交类应用一等奖和统一登录类应用一等奖。 请观看视频了解 “onbotting.eth” 的详情 。
运作原理介绍
核心设想
- Bob 是一名新用户,没有以太币和钱包,也不具备密码学货币的背景知识。
- Alice 有一个 EIP 1077 身份合约和一个闲置的 ERC721 机器人
- Alice 通过 Whatsapp 之类的加密信息通道将邀请链接分享给了 Bob
- (在用户层、dapp 层或中继层)有另外一种激励机制来支付 gas 费用
- Alice 将邀请链接分享给了 Bob
- 邀请链接中包含一个中转私钥和一个签名
- Bob 是一名新用户,没有以太币和钱包,也不具备密码学货币的背景知识
- Bob 点击链接进入了一个网页
- Bob 生成了自己的私钥,存储在浏览器上
- Bob 使用中转私钥签署自己的地址
- Bob 的浏览器会将两个签名都发送给中继器
- 中继器调用 Alice 的身份合约
- Alice 的身份合约为 Bob 创建了一个身份合约,并且发送了一个机器人
- Bob 现在已经成了以太坊用户,并且拥有了一个可以一起玩耍的机器人!
linkdrops 的模块化实现
经历过数次迭代之后, Alex van de Sande 和 Marek 开发的 Universal Login SDK 在 Devon 4 上向模块化架构升级。以下是一个简单版本的模块化邀请机制,无需为收款方生成一个身份合约:
这个模块的主要功能是 transferTokensByLink (通过链接实现代币转账) :
- 验证两个签名(转账双方的签名)的有效性
- (通过存储 transitPubKey,即中转公钥)来验证该转账链接之前是否被使用过
- 从付款方的身份合约内将代币转移到收款方的地址
使用 owner.canExecute 可以验证付款方的签名 —— https://gist.github.com/Dobrokhvalov/00e2bbca13a1378636fa5a400bd692f5#file-invitelink-sol-L117
进行代币转账的时候可以使用 owner.moduleExecute —— https://gist.github.com/Dobrokhvalov/00e2bbca13a1378636fa5a400bd692f5#file-invitelink-sol-L141
欢迎各位读者给出改进建议,万分感谢!
React Native 启动器的实现
我们正积极致力于将 linkdrops 邀请链接的功能添加进不同的移动应用中。我们已经开发出了 Universal Login React Native Starter (统一登录 React Native 启动器)。欢迎反馈 :) 。
要求
- NodeJS v10.12.0
- Yarn 1.10.
该启动器只在 OS X 系统上测试过。
依赖库
该启动器使用 react-native-navigation 操作码(第一版)进行导航。
rn-nodeify 程序包允许使用节点的核心模块。 点击此处了解更多内容 。
安全快捷的加密技术原生库:
- react-native-secure-randombytes
- react-native-fast-crypto
通过授权委托降低 gas 成本
为了降低 gas 成本,我们决定研究如何通过提出以太坊改进建议来解决这一问题,我们的灵感来源于 Gnosis Safe 、 Tenzorum 、 Argent 之类优秀项目和 #MetaCartel 的 Pet3rpan 给出的反馈。最后 Mikhail 提出了一个解决方案。
查看一下优化情况:
优化前 Ropsten 测试网络上的 gas 费用 etherscan
优化后 Ropsten 测试网络上的 gas 费用 etherscan
免 gas 费用的实现
最后,这方面的最新进展是一个免 gas 费用的去中心化网页应用模式,可以看作是 Austin Griffith 的 #burner wallet 的改进版本。这款钱包的演示版即将推出,希望能得到各位读者的反馈, 点击该链接可以体验在线版本 。
:sparkles: Cryptoxmas.xyz :sparkles: —— linkdrops 模式下的慈善应用参考例
发送非同质化代币的圣诞卡片来支持委内瑞拉难民
作为一个 linkdrop 模式的圣诞慈善应用,我们已经发起了 this Giveth campaign 的活动,来支持 airdropvenezuela.org 和 bitcoinvenezuela.com 。
视频地址是:
https://twitter.com/dobrokhvalov/status/1071440314169208834
流程
发送流程
- 发送方将 ETH 发送到一个托管智能合约来购买圣诞贺卡(NFT)。(发送方可以选择在卡片售价基础上多发送一些 ETH 给接收方)
- 托管智能合约将 NFT 从销售方那里转移给托管方
- 智能合约会基于 NFT 售价拨出一小部分(0.01 eth)发送至临时账户作为 gas 费用,余下部分作为捐款赠予 Giveth campaign 。超出 NFT 售价部分的 ETH 则由托管方托管,以待接收方领取。
- 发送方分享 claim link(领取链接)给接收方,链接中包含临时账户的私钥
接收流程
- 接收方使用领取链接中的私钥提交领取交易(Claim transaction)
- 托管智能合约将圣诞贺卡(NFT)以及多出的 ETH 发送至接收方地址
作者:Gustav Friis
翻译&校对:闵敏 & Elisa
本文由作者授权 EthFans 翻译及再出版。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 这篇 ReentrantLock 看不懂?加我我给你发红包
- 引介 | Fuel:免信任的侧链
- 引介 | ETH-Pow算法分析
- 引介 | Wisps:Create2 的奇妙世界
- 引介 | 扩展区块链:ZK-Rollup
- 引介 | 形式化验证 Gasper 共识机制的终局性
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Shallows
Nicholas Carr / W. W. Norton & Company / 2011-6-6 / USD 15.95
"Is Google making us stupid?" When Nicholas Carr posed that question, in a celebrated Atlantic Monthly cover story, he tapped into a well of anxiety about how the Internet is changing us. He also crys......一起来看看 《The Shallows》 这本书的介绍吧!