ION:Web3应用程序商店协议:为Web3应用程序的注册和分发提供标准

译者: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和生成式AI等是重大机遇:6月5日消息,6月5日,香港证监会行政总裁梁凤仪在香港投资基金公会的年会上,发表题为“重新思考、整备和部署:香港作为资产管理中心的发展路向”的演讲。梁凤仪表示:“香港证监会以推动增长为己任。我们了解市场上的投资产品要推陈出新,才能与时并进,迎合投资者不断变化的需求。我们目前聚焦于三大范畴:环境、社会及管治(environmental,socialandgovernance,简称ESG),虚拟资产,以及人民币计价产品。”

针对虚拟资产,梁凤仪表示,这些产品的需求近年不断上升,我们推出措施来鼓励负责任的科技创新和支持金融科技业界。我们认可了首批虚拟资产期货ETF,而这些ETF主要投资于在芝加哥商品交易所买卖的虚拟资产期货,当中包括全球首只以太币期货ETF及亚洲首只比特币期货ETF。两周前,我们发布了适用于持牌虚拟资产交易平台营运者的指引。与虚拟资产期货ETF一样,我们采取了多项保障投资者利益的措施,例如就可供零售投资者买卖的代币的纳入准则订明要求。

此外,尽管梁凤仪指出投资环境仍见严峻,但她表示:“我们不忘危中有机,‘机’有中国经济重启、数码化转型、第三代互联网(Web3)及生成式人工智能(generative AI)等,都正是推动创新和可持续投资的重大机遇。”[2023/6/5 21:16:10]

Web3应用注册中心是一套基于Web3App注册标准的智能合约。团体和个人可以无权限地建立他们自己的Web3应用程序注册中心。Web3开发者可以使用他们的链上账户在该注册中心中注册他们的Web3应用程序,并对安装包的发行版和校验和进行版本管理。审核员可以无权限地使用他们的链上账户来审核所有这些应用程序,并在注册表中公布结果。

Web3应用程序包是指由开发商发布的软件,供用户在其本地设备上安装Web3应用程序。这些软件包可以存储在任何中心化或去中心化的存储服务中,软件包的网址和校验和应记录在注册表上。同时,在基于Web3应用配置标准上,在软件包的根部应该有一个包含Web3应用的权限声明和版本描述的配置文件。源代码的存储路径应被指定在配置文件中,以便审计人员能够轻松获取源代码进行审计。

Web3应用商店客户端是安装在用户本地设备上的软件。团体和个人可以在Web3应用商店客户端标准的基础上自由地建立自己的应用商店客户端。客户端可以同时连接到一个或多个注册中心。它需要从注册表中获取Web3应用程序列表、版本信息和审计信息。当用户安装或更新一个Web3应用程序时,需要自动获取安装包。然后验证软件包的校验和是否与注册中心中的校验和相等。最后,它应该告诉用户这个Web3应用需要多少权限。而在用户确认权限后,Web3App将被安装在本地设备上。

Giants Innovation Hub推出5000万欧元风险投资基金,专注区块链、Web3等领域:金色财经报道,投资机构Giants Innovation Hub宣布推出三项全新计划,分别是Giants Esports Lab、Giants Media 4 Equity和Giants Venture Capital,其中风险投资基金Giants Venture Capital规模将为5000万欧元并且专注于投资Web3、元宇宙和区块链领域的创新项目,据悉该基金计划投资约40个项目,每个项目的投资额度会在10-300万欧元不等。[2023/3/24 13:25:22]

这种设计框架确保了Web3应用程序的可访问性,是因为用户可以继续使用旧的本地版本——并有权根据新的注册中心和新的应用程序包进行升级。

同时,客户端会将本地软件包的校验和与注册中心中的校验和进行验证,从而避免了黑客或项目组的更改机会,并确保用户使用的应用程序与链上注册中心中公布的应用程序一致。而软件包中的配置文件也指向了当前版本的源代码,审核员就可以通过校验和来验证该软件包是由这些源代码打包而成的。它将确保源代码和安装包之间的一致性,然后确保用户使用的是经审计师审计过的安全包。

当用户使用Web3应用程序时,客户端也会根据用户之前确认的应用程序的权限声明来限制这些应用程序的权限。然后完全保证用户在访问本地Web3服务时的安全。

Web3AppRegistrationStandard

pragmasolidity^0.8.0;

/**

*

functioncreateApp()externalreturns(uint256);

functionaddVersion(uint256appId,stringmemoryversionId,stringmemoryfileUrl)external;

functiongetAppIds()externalreturns(uint256memory);

functiongetVersions(uint256appId)externalreturns(stringmemory);

Animoca Brands本季度将为其Web3投资基金募资10亿美元:1月5日消息,Animoca Brands CEO Yat Siu 在接受彭博社采访时表示,Animoca Capital希望在本季度为其Web3和元宇宙投资基金募资约10亿美元,目前,正在与潜在投资者进行谈判,并将使用这笔资金支持区块链和元宇宙初创公司。此外,Yat Siu还表示,“加密市场是一个充满挑战的市场。但Animoca Brands仍对其保持相当大的兴趣”。

此前报道,去年11月30日,Animoca Brands联合创始人兼首席执行官Yat Siu表示,该公司计划推出规模最高达20亿美元的基金Animoca Capital,以投资元宇宙业务,并将这支计划中的基金描述为是“Web3业务的良好切入点”。(彭博社)[2023/1/5 10:23:04]

functiongetVersionFileUrl(uint256appId,stringmemoryversionId)externalviewreturns(stringmemory);

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":{

Web3架构提供商ZoidPay获Gem Digital 7500万美元投资承诺:金色财经报道,Web3架构商ZoidPay宣布获7500万美元投资承诺,投资方为数字资产投资公司GEM Digital(“GEM”)。据悉,ZoidPay公司将利用这笔资金构建新一代开放式金融服务架构,开发首个“按需元宇宙”,并推出 Web3超级应用程序。[2022/11/3 12:13:53]

"title":"DescriptionoftheApp",

"type":"string"

},

"origin":{

"title":"Onlinedapporigin",

"type":"string",

"pattern":"^((https|http)?:\\/\\/)"

},

"permissions":{

"properties":{

"web3Provider":{

"requestAccount":{

"title":"IfAppneedpermissiontoconnectwithwallet",

"type":"boolean"

},

"personalSign":{

"properties":{

"request":{

"type":"boolean",

"title":"IfAppneedpermissiontorequestsigntextmessage"

},

"patterns":{

"type":"array",

"title":"Patternsoftextmessage"

}

},

"title":"Declarationforsigntextmessage",

"type":"object"

Gartner副总裁:Web3是建立在区块链协议上的新技术堆栈:金色财经报道,Gartner副总裁Avivah Litan讨论了最近发布的Gartner 2022年区块链和Web3炒作周期,Avivah Litan表示,Web3是建立在区块链协议上的新技术堆栈,支持去中心化Web应用程序的开发,并使用户能够控制自己的身份、内容和数据。这些技术包括隐私保护协议、去中心化治理和去中心化应用平台。这些创新最终将支持分散式网络,该网络将与我们每天使用的当前 Web 2.0 集成。

Web3 支持新的商业和社交模式。例如,智能合约运行的应用程序消除了控制中心化实体的中介和管理开销。包括加密货币在内的代币为 Web3 的商业模式和经济性提供动力,并内置于区块链协议中。Web3 支持新的商机,例如以 NFT 形式对创作者拥有和管理的内容进行可编程性和货币化。?

元宇宙将需要 Web3 启用的许多功能。例如,元界可以受益于 Web3 的标记化,以在纯虚拟环境中存储和交换价值。Metaverse 和 Web3 不会合并为一个实体,但它们是对未来互联网的互补愿景。[2022/8/31 12:59:02]

},

"transaction":{

"properties":{

"request":{

"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

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:109ms0-0:946ms