译者:Evelyn|W3.Hitchhiker
开发者可以通过区块链上的一套智能合约向用户提供无信任协议层服务。但是,典型的日常用户不会有可以直接理解和使用这些智能合约的能力——因此,他们需要一个无信任、安全和易于使用的应用层。
应用层开发人员部署了易于使用的用户界面,以帮助用户与协议和代币直接互动。这些应用程序大多会尝试连接到用户的Web3钱包,并直接请求签名。
我们将这些应用程序称为"Web3App"。例如,Uniswap的官方网络应用,托管在https://app.uniswap.org,是一个典型的Web3应用,它将帮助用户在区块链上与自己的协议进行互动。以下是Uniswap的应用程序和协议的技术结构:
Motivation
随着协议层上的智能合约与相应的Web3应用程序一起激增,但我们仍然能看到目前行业实践中有两个关键的问题,即围绕可访问性和安全性。
Accessibility
首先,如今大多数Web3应用程序都将其代码存储在项目所有者所控制的云服务中。如果所有者将网站下线,或者网站被DDos关闭,或者为了响应国家政策要求,等等,一个典型的用户将不再能够轻松地管理他们的资产。访问的不确定性可以是很可怕的,因为这会减少用户之间的信任。
Security
其次,目前大多数用户通过Web浏览器和Web3插件的组合来访问Web3应用程序,这个过程充满了安全问题。这就使项目组和黑客都有机会在Web3应用程序中嵌入新的恶意代码,从而窃取用户的资产。
无论是插件还是浏览器,都无法对用户发出警报或保证其安全。这种缺乏保护的情况基本上意味着Web3的用户需要精通技术和安全,否则很容易被黑客咬死,并永远离开加密世界。
Specification
Web3应用程序商店协议
我们提出了一个Web3应用商店协议来解决上述的可访问性和安全性问题。这些应用商店应该包含一个基于智能合约的Web3应用注册中心,一个基于围绕权限、版本描述、规格等存储在链外的元数据的Web3应用程序包,以及一个安装在用户本地设备上的Web3应用商店客户端。之后,我们还需要Web3审核员来帮助用户审核Web3应用程序的源代码。这些组件之间的关系如下所示。
Web3人工智能平台Alive完成1200万美元机构融资:金色财经报道,作为NVIDIA Inception Program早期成员的Web3人工智能平台Alive已完成1200万美元机构融资,投资方信息暂未披露。该公司此前于3月16日完成了500万美元的种子轮融资,当时领投方为Myer Capita,参投方包括Space Capital、Main Sequence Ventures、Viola Ventures、SquarePeg、Pitango等。Alive还宣布推出人工智能节点计划“AI Node”,旨在通过Web3使人工智能更加民主化,节点持有者将有机会参与Alive的治理和决策过程,共同推动AI技术和应用的创新,据悉该计划将由30,000个Alive节点组成,预计将在6月下旬正式启动。(digitaljournal)[2023/6/8 21:22:36]
Web3应用注册中心是一套基于Web3App注册标准的智能合约。团体和个人可以无权限地建立他们自己的Web3应用程序注册中心。Web3开发者可以使用他们的链上账户在该注册中心中注册他们的Web3应用程序,并对安装包的发行版和校验和进行版本管理。审核员可以无权限地使用他们的链上账户来审核所有这些应用程序,并在注册表中公布结果。
Web3应用程序包是指由开发商发布的软件,供用户在其本地设备上安装Web3应用程序。这些软件包可以存储在任何中心化或去中心化的存储服务中,软件包的网址和校验和应记录在注册表上。同时,在基于Web3应用配置标准上,在软件包的根部应该有一个包含Web3应用的权限声明和版本描述的配置文件。源代码的存储路径应被指定在配置文件中,以便审计人员能够轻松获取源代码进行审计。
Web3应用商店客户端是安装在用户本地设备上的软件。团体和个人可以在Web3应用商店客户端标准的基础上自由地建立自己的应用商店客户端。客户端可以同时连接到一个或多个注册中心。它需要从注册表中获取Web3应用程序列表、版本信息和审计信息。当用户安装或更新一个Web3应用程序时,需要自动获取安装包。然后验证软件包的校验和是否与注册中心中的校验和相等。最后,它应该告诉用户这个Web3应用需要多少权限。而在用户确认权限后,Web3App将被安装在本地设备上。
这种设计框架确保了Web3应用程序的可访问性,是因为用户可以继续使用旧的本地版本——并有权根据新的注册中心和新的应用程序包进行升级。
香港 Web3.0 协会成立典礼正式开幕:4月11日消息,香港 Web3.0 协会成立典礼正式开幕并在线上进行同步直播,典礼议程包括理事会会长及主礼嘉宾致辞、协会主要成员委任仪式、高峰论坛等议程,出席嘉宾包括香港特别行政区行政长官李家超、香港立法会主席梁君彦、香港保安局长邓炳强等。
香港 Web3.0 协会是跨业界和非牟利的机构,旨在响应国家和香港特区政府的号召,促进香港数码新世界 Web3.0“第三代互联网”生态环境的建设。协会致力推动技术变革和产业升级,为业界创立产业标准。[2023/4/11 13:56:47]
同时,客户端会将本地软件包的校验和与注册中心中的校验和进行验证,从而避免了黑客或项目组的更改机会,并确保用户使用的应用程序与链上注册中心中公布的应用程序一致。而软件包中的配置文件也指向了当前版本的源代码,审核员就可以通过校验和来验证该软件包是由这些源代码打包而成的。它将确保源代码和安装包之间的一致性,然后确保用户使用的是经审计师审计过的安全包。
当用户使用Web3应用程序时,客户端也会根据用户之前确认的应用程序的权限声明来限制这些应用程序的权限。然后完全保证用户在访问本地Web3服务时的安全。
Web3AppRegistrationStandard
pragmasolidity^0.8.0;
/**
*
functioncreateApp()externalreturns(uint256);
functionaddVersion(uint256appId,stringmemoryversionId,stringmemoryfileUrl)external;
functiongetAppIds()externalreturns(uint256memory);
functiongetVersions(uint256appId)externalreturns(stringmemory);
functiongetVersionFileUrl(uint256appId,stringmemoryversionId)externalviewreturns(stringmemory);
Web3开发平台Moralis将集成至Aptos:1月18日消息,Web3 开发平台 Moralis 宣布将集成至 Aptos,参与 Aptos 的开发人员将能够使用 Moralis 符合国际标准的 Web3 应用程序接口(API),他们的操作将会变得更加便捷。据官方数据显示,Aptos 链上交易量已突破 7000 万笔,截止目前达到 71,391,253 笔,活跃质押量为 839,021,485 枚 APT。[2023/1/18 11:19:25]
functionvoteApp(uint256appId,uint8level)external;
functionvoteAppVersion(uint256appId,stringmemoryversionId,uint8level)external;
functiongetVotes(uint256appId,stringmemoryversionId)externalreturns(auditorVotememory);
}
Web3AppConfigrationStandard
{
"properties":{
"name":{
"title":"NameoftheApp",
"type":"string"
},
"logoUrl":{
"title":"LogooftheApp",
"type":"string"
},
"description":{
"title":"DescriptionoftheApp",
"type":"string"
},
"origin":{
"title":"Onlinedapporigin",
"type":"string",
"pattern":"^((https|http)?:\\/\\/)"
},
Web3短视频平台Cheelee完成800万美元融资,Veligera Capital参投:11月4日消息,Web3视频社交平台Cheelee完成800万美元股权融资,美国投资基金Veligera Capital、阿联酋Infinity Technology Fund、以及VC SILA等参投,该公司还获得了130万美元VC基金拨款支持。
据悉,Cheelee为新用户提供一个免费的“NFT眼镜”,该眼镜可以监测观看视频时间并根据时间长短转换成相应的积分,然后兑换代币奖励。此外,用户也能使用Cheelee的原生代币升级眼镜功能,比如内存、框架、镜片等,目前其服务正处于测试最后阶段,预计会在2022年四季度发布。(techbullion)[2022/11/4 12:16:51]
"permissions":{
"properties":{
"web3Provider":{
"requestAccount":{
"title":"IfAppneedpermissiontoconnectwithwallet",
"type":"boolean"
},
"personalSign":{
"properties":{
"request":{
"type":"boolean",
"title":"IfAppneedpermissiontorequestsigntextmessage"
},
"patterns":{
"type":"array",
"title":"Patternsoftextmessage"
}
},
"title":"Declarationforsigntextmessage",
"type":"object"
},
"transaction":{
"properties":{
"request":{
公告 | 火币全球站API已优化Websocket订单和资产推送接口的ping/pong间隔和限频规则:据官网公告,为了提升API用户的交易体验,火币全球站API已优化Websocket订单和资产推送接口的ping/pong间隔和限频规则。API用户需关注本通知所描述调整,并在必要时对用户端应用程序做出相应修改。[2019/7/8]
"type":"boolean",
"title":"IfAppneedpermissiontorequesttransaction"
},
"contractCalls":{
"type":"array",
"title":"Declarationforcontrattransaction"
},
"tokenApproves":{
"type":"array",
"title":"Declarationfortokenapproval"
},
"ERC20TokenTransfer":{
"type":"array",
"title":"DeclarationforERC20tokentransfertransaction"
}
},
"type":"object",
"title":"Declarationfortransaction"
},
"network":{
"urlPatterns":{
"type":"array",
"title":"PatternsofwhitelistnetworkrequestURL"
},
"title":"DeclarationforAPPnetworkrequest",
"type":"object"
},
"title":"DeclarationforWeb3Providerpermissions",
"type":"object"
}
},
"title":"DeclarationforApppermissions",
"type":"object"
},
"app":{
"properties":{
"id":{
"title":"AppIdallocatedbyAppStore",
"type":"string"
},
"chainId":{
"title":"ThechainIdwhichAppStoredeployed",
"type":"string"
},
"contract":{
"title":"ThecontractaddressofAppStore",
"type":"string"
}
},
"type":"object",
"title":"AppinformationonAppStore"
},
"source":{
"properties":{
"repository":{
"type":"string",
"title":"TheURLthatcanaccessAppsourcecode",
"pattern":"^(https:\\/\\/|)"
},
"buildScript":{
"type":"string",
"title":"Thescriptthatcancompliesourcecodetobundles"
},
"systemEnvironment":{
"type":"string",
"title":"ThesystemenvironmentthatcanmakesureauditorcanbuildbundlewhichhasthesameSHA256"
}
},
"type":"object",
"title":"Informationofsourcecodeforauditoruse"
}
},
"title":"Web3Appjsonconfigfile",
"type":"object"
}
Web3AppStoreClientStandard
interfaceApp{
app:{
id:string
chainId:string
contract:string
}
permissions:{
network:{
urlPatterns:string
},
web3Provider:{
requestAccount:boolean
personalSign:{
request:boolean
patterns:string
},
transaction:{
request:boolean
contractCalls:ContractCallItem
tokenApproves:TokenApproveItem
ERC20TokenTransfer:ERC20TokenTransferItem
}
}
}
source:{
repository:string
buildScript:string
systemEnvironment:string
}
appId:number
domain:string
versionId:string
files:string
name:string
description?:string
logoUrl:string
}
enumVoteLevel{
DANGER=-1
UNKNOW=0
SAFE=1
}
classWeb3AppStore{
chainId:string;//ThechainIdwhichAppStoredeployed
contract:string;//ThecontractaddressofAppStore
getApps():Promise
getApp(appId:number,version?:string):Promise
getAppVersions(appId:number):Promise
createApp():Promise
addVersion(appId:number,fileUrls:string):Promise
voteApp(appId:number,level:VoteLevel):Promise
voteAppVersion(appId:number,versionId:string,level:VoteLevel):Promise
//ValidatetheSHA256ofAppfileissameasversionIdofnot
validateAppVersion(app:App):Promise
//Validateifthedomainwhichdeclaredindomainpropertyhasthesameweb3.jsonfileofcurrentApp
validateAppDomain(app:App):Promise
}
Releases
Noreleasespublished
Packages
Nopackagespublished
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。