去中心化应用的启动方法、装置、设备以及存储介质制造方法及图纸

技术编号:24684621 阅读:15 留言:0更新日期:2020-06-27 08:17
本申请实施例公开了一种去中心化应用的启动方法、装置、设备以及存储介质,该方法包括:当检测到用户端触发的启动指令时,获取启动指令携带的启动指令的数字签名和应用标识;根据应用标识从本地存储空间中获取去中心化应用的目标应用配置数据;根据应用标识从区块链中确定目标应用配置数据对应的第一智能合约,并执行第一智能合约以从区块链中获取目标应用配置数据的第一数据哈希;确定目标应用配置数据的第二数据哈希,当第一数据哈希与第二数据哈希一致时,根据目标应用配置数据生成去中心化应用的目标应用窗口;建立目标应用窗口与区块链的通信机制以展示目标应用窗口。采用本申请实施例,可快速、安全启动去中心化应用,适用性高。

Starting method, device, equipment and storage medium of decentralized application

【技术实现步骤摘要】
去中心化应用的启动方法、装置、设备以及存储介质
本申请涉及计算机
,尤其涉及一种去中心化应用的启动方法、装置、设备以及存储介质。
技术介绍
随着区块链技术的发展,网络上出现了许多应用在区块链网络上的Dapp(DecentralizedApplication,去中心化应用)。例如,游戏类Dapp、购物类Dapp等等。虽然去中心化应用运行于区块链网络上,但是对于访问去中心化应用的设备来说往往会将去中心化应用的应用配置数据存储于本地存储中,在启动去中心化应用时根据本地存储中的应用配置数据启动并访问去中心化应用。但是对于本地存储所存储的应用配置数据来说,容易遭到篡改导致去中心化应用启动异常,适应性差。因此,如何安全地启动去中心化应用成为亟需解决的问题。
技术实现思路
本申请实施例提供一种去中心化应用的启动方法、装置、设备以及存储介质,可快速、安全启动去中心化应用,适用性高。本申请实施例提供一种去中心化应用的启动方法,该方法包括:当检测到用户端触发的启动指令时,获取上述启动指令携带的上述启动指令的数字签名和上述用户端所要启动的去中心化应用的应用标识;获取上述用户端的公钥,并在根据上述公钥和上述数字签名确定上述启动指令为有效指令的情况下,根据上述应用标识从本地存储空间中获取上述去中心化应用的目标应用配置数据;根据上述应用标识从区块链中确定上述目标应用配置数据对应的第一智能合约,并执行上述第一智能合约以从上述区块链中获取上述目标应用配置数据的第一数据哈希;确定上述目标应用配置数据的第二数据哈希,并将上述第一数据哈希与上述第二数据哈希进行匹配,当上述第一数据哈希与上述第二数据哈希一致时,根据上述目标应用配置数据生成上述去中心化应用的目标应用窗口;根据上述目标应用配置数据建立上述目标应用窗口与上述区块链的通信机制以展示上述目标应用窗口。本申请实施例提供了一种去中心化应用的启动装置,该装置包括:第一获取模块,用于当检测到用户端触发的启动指令时,获取上述启动指令携带的上述启动指令的数字签名和上述用户端所要启动的去中心化应用的应用标识;第二获取模块,用于获取上述用户端的公钥,并在根据上述公钥和上述数字签名确定上述启动指令为有效指令的情况下,根据上述应用标识从本地存储空间中获取上述去中心化应用的目标应用配置数据;第三获取模块,用于根据上述应用标识从区块链中确定上述目标应用配置数据对应的第一智能合约,并执行上述第一智能合约以从上述区块链中获取上述目标应用配置数据的第一数据哈希;第一处理模块,用于确定上述目标应用配置数据的第二数据哈希,并将上述第一数据哈希与上述第二数据哈希进行匹配,当上述第一数据哈希与上述第二数据哈希一致时,根据上述目标应用配置数据生成上述去中心化应用的目标应用窗口;第二处理模块,用于根据上述目标应用配置数据建立上述目标应用窗口与上述区块链的通信机制以展示上述目标应用窗口。在一种可能的实施方式中,上述第二获取模块包括:第一获取单元,用于从本地存储空间中获取上述应用标识标记的第一应用配置数据;第一确定单元,用于确定上述第一应用配置数据对应的第一版本信息,并将上述第一版本信息发送至区块链中的共识节点,以使上述共识节点验证上述第一版本信息是否低于上述区块链中上述去中心化应用的预设版本信息;第二确定单元,用于若上述第一版本信息不低于上述预设版本信息,则将上述第一应用配置数据确定为目标应用配置数据,并从上述本地存储空间中获取上述目标应用配置数据。在一种可能的实施方式中,上述第二获取模块还包括:第一发送单元,还用于若上述第一版本信息低于上述预设版本信息,则向上述区块链发送数据获取请求以从上述区块链中确定出上述目标应用配置数据对应的第二智能合约;第二获取单元,还用于执行上述第二智能合约以从上述区块链中获取上述去中心化应用的第一应用更新数据,并根据上述第一应用更新数据更新上述第一应用配置数据以得到上述目标应用配置数据。在一种可能的实施方式中,上述第一处理模块包括:第三确定单元,用于确定上述去中心化应用是否存在第一应用进程;第一生成单元,用于当上述去中心化应用存在上述第一应用进程时,根据上述第一应用进程和上述目标应用配置数据生成目标应用窗口;第二发送单元,用于当上述去中心化应用不存在上述第一应用进程时,向上述区块链共识节点发送启动请求以使上述共识节点验证上述启动请求是否为有效请求;第二生成单元,用于当上述启动请求为有效请求时,为上述去中心化应用创建第二应用进程,并根据上述第二应用进程和上述目标应用配置数据生成上述目标应用窗口。在一种可能的实施方式中,上述装置还包括:第四获取模块,还用于获取上述用户端在访问上述去中心化应用时产生的用户数据,并根据上述用户数据确定出上述用户端访问上述去中心化应用的每个应用窗口的时间;确定模块,还用于将访问时间最长的应用窗口确定为默认应用窗口,并确定出上述默认应用窗口对应的第二应用配置数据的第三数据哈希;第一存储模块,还用于将上述第二应用配置数据存储至上述本地存储空间,并将上述第三数据哈希存储至上述区块链,以当上述用户端再次启动上述去中心化应用时根据上述第二应用配置数据和上述第三数据哈希向上述用户展示上述默认应用窗口。在一种可能的实施方式中,上述装置还包括:发送模块,还用于当检测到上述用户端触发的应用更新请求时,向上述区块链的应用更新节点发送上述应用更新请求,以使上述应用更新节点根据上述应用更新请求携带的用户节点信息和上述应用标识确定上述用户端是否具有上述去中心化应用的更新权限;更新模块,还用于当上述用户端具有上述更新权限时,确定第二应用更新数据,并根据上述第二应用更新数据更新上述目标应用配置数据得到更新后的目标应用配置数据;第二存储模块,还用于确定上述更新后的目标应用配置数据的第四数据哈希,并将上述第四数据哈希存储至上述区块链以使上述应用更新节点向上述用户端发送转移数据量。在一种可能的实施方式中,上述装置还包括:第三存储模块,还用于将上述更新后的目标应用配置数据存储至上述本地存储空间;第四存储模块,还用于根据上述第二应用更新数据更新上述第一智能合约得到第三智能合约并将上述第三智能合约存储至上述区块链中,以当再次检测到上述用户端启动上述去中心化应用时,从上述区块链中确定出上述第三智能合约并根据上述第三智能合约获取上述第四数据哈希。本申请实施例提供了一种设备,该设备包括处理器和存储器,该处理器和存储器相互连接。该存储器用于存储支持该终端设备执行本申请实施例提供的去中心化应用的启动方法的计算机程序,该计算机程序包括程序指令,该处理器被配置用于调用上述程序指令,执行本申请实施例提供的去中心化应用的启动方法。本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行以实现本申请实施例提供的本文档来自技高网...

【技术保护点】
1.一种去中心化应用的启动方法,其特征在于,所述方法包括:/n当检测到用户端触发的启动指令时,获取所述启动指令携带的所述启动指令的数字签名和所述用户端所要启动的去中心化应用的应用标识;/n获取所述用户端的公钥,并在根据所述公钥和所述数字签名确定所述启动指令为有效指令的情况下,根据所述应用标识从本地存储空间中获取所述去中心化应用的目标应用配置数据;/n根据所述应用标识从区块链中确定所述目标应用配置数据对应的第一智能合约,并执行所述第一智能合约以从所述区块链中获取所述目标应用配置数据的第一数据哈希;/n确定所述目标应用配置数据的第二数据哈希,并将所述第一数据哈希与所述第二数据哈希进行匹配,当所述第一数据哈希与所述第二数据哈希一致时,根据所述目标应用配置数据生成所述去中心化应用的目标应用窗口;/n根据所述目标应用配置数据建立所述目标应用窗口与所述区块链的通信机制以展示所述目标应用窗口。/n

【技术特征摘要】
1.一种去中心化应用的启动方法,其特征在于,所述方法包括:
当检测到用户端触发的启动指令时,获取所述启动指令携带的所述启动指令的数字签名和所述用户端所要启动的去中心化应用的应用标识;
获取所述用户端的公钥,并在根据所述公钥和所述数字签名确定所述启动指令为有效指令的情况下,根据所述应用标识从本地存储空间中获取所述去中心化应用的目标应用配置数据;
根据所述应用标识从区块链中确定所述目标应用配置数据对应的第一智能合约,并执行所述第一智能合约以从所述区块链中获取所述目标应用配置数据的第一数据哈希;
确定所述目标应用配置数据的第二数据哈希,并将所述第一数据哈希与所述第二数据哈希进行匹配,当所述第一数据哈希与所述第二数据哈希一致时,根据所述目标应用配置数据生成所述去中心化应用的目标应用窗口;
根据所述目标应用配置数据建立所述目标应用窗口与所述区块链的通信机制以展示所述目标应用窗口。


2.根据权利要求1所述的方法,其特征在于,所述根据所述应用标识从本地存储空间中获取所述去中心化应用的目标应用配置数据包括:
从本地存储空间中获取所述应用标识标记的第一应用配置数据;
确定所述第一应用配置数据对应的第一版本信息,并将所述第一版本信息发送至区块链中的共识节点,以使所述共识节点验证所述第一版本信息是否低于所述区块链中所述去中心化应用的预设版本信息;
若所述第一版本信息不低于所述预设版本信息,则将所述第一应用配置数据确定为目标应用配置数据,并从所述本地存储空间中获取所述目标应用配置数据。


3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述第一版本信息低于所述预设版本信息,则向所述区块链发送数据获取请求以从所述区块链中确定出所述目标应用配置数据对应的第二智能合约;
执行所述第二智能合约以从所述区块链中获取所述去中心化应用的第一应用更新数据,并根据所述第一应用更新数据更新所述第一应用配置数据以得到所述目标应用配置数据。


4.根据权利要求1所述的方法,其特征在于,所述根据所述目标应用配置数据生成所述去中心化应用的目标应用窗口包括:
确定所述去中心化应用是否存在第一应用进程;
当所述去中心化应用存在所述第一应用进程时,根据所述第一应用进程和所述目标应用配置数据生成目标应用窗口;
当所述去中心化应用不存在所述第一应用进程时,向所述区块链共识节点发送启动请求以使所述共识节点验证所述启动请求是否为有效请求;
当所述启动请求为有效请求时,为所述去中心化应用创建第二应用进程,并根据所述第二应用进程和所述目标应用配置数据生成所述目标应用窗口。


5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述用户端在访问所述去中心化应用时产生的用户数据,并根据所述用户数据确定出所述用户端访问所述去中心化应用的每个应用窗口的时间;
将访问时间最长的应用窗口确定为默...

【专利技术属性】
技术研发人员:李茂材周开班王宗友刘攀张劲松朱耿良孔利时一防黄焕坤刘区城杨常青蓝虎崔嘉辉
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1