CN111901287B - 一种为轻应用提供加密信息的方法、装置和智能设备 - Google Patents

一种为轻应用提供加密信息的方法、装置和智能设备 Download PDF

Info

Publication number
CN111901287B
CN111901287B CN201911003298.0A CN201911003298A CN111901287B CN 111901287 B CN111901287 B CN 111901287B CN 201911003298 A CN201911003298 A CN 201911003298A CN 111901287 B CN111901287 B CN 111901287B
Authority
CN
China
Prior art keywords
application
key
identifier
server
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911003298.0A
Other languages
English (en)
Other versions
CN111901287A (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201911003298.0A priority Critical patent/CN111901287B/zh
Publication of CN111901287A publication Critical patent/CN111901287A/zh
Application granted granted Critical
Publication of CN111901287B publication Critical patent/CN111901287B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种为轻应用提供加密信息的方法、装置和智能设备。所述轻应用与对应的应用服务器通过网络相连接,所述应用服务器与加密服务器通过网络相连接,所述方法包括:获取用户标识和第一主密钥;接收所述轻应用发送的调用请求,所述调用请求中包括应用标识,在发布服务器发布所述轻应用的代码包时已经确定所述应用标识为所述轻应用的应用标识;根据所述第一主密钥和所述应用标识生成加密信息且传递给所述轻应用。本方法可以使得根据同一主密钥生成的加密信息确实是用于所述轻应用的加密信息,不同的轻应用之间不可相互仿冒以获取加密信息;而且还可以不需用户确认是否进行授权,从而提高用户使用的便捷性和增强用户使用体验。

Description

一种为轻应用提供加密信息的方法、装置和智能设备
【技术领域】
本发明涉及智能设备技术领域,尤其涉及一种为轻应用提供加密信息的方法、装置和智能设备。
【背景技术】
随着轻应用技术的逐步应用,在轻应用与对应的应用服务器的交互过程中,往往会涉及数据加密相关的操作(如身份认证、数据加解密、完整性验证等),但如何安全、便捷地为运行中的轻应用提供加密信息(如应用密钥、加密值等)以使得轻应用能进行数据加密相关的操作,是当前面临的一个问题。
需要说明的是,上述背景信息仅用于加强对本发明背景技术的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术信息。
【发明内容】
本发明的主要目的在于提供一种为轻应用提供加密信息的方法、装置和智能设备,进而至少在一定程度上解决由于相关技术的限制和缺陷而导致的一个或者多个问题,包括以下技术方案:
第一方面,提供了一种为轻应用提供加密信息的方法,所述轻应用与对应的应用服务器通过网络相连接,所述应用服务器与加密服务器通过网络相连接,所述方法包括:
获取用户标识和第一主密钥,并且在所述加密服务器上存储有所述用户标识与第二主密钥的关联关系,所述第二主密钥与所述第一主密钥的值相同;
接收所述轻应用发送的调用请求,所述调用请求用于获取加密信息,所述调用请求中包括应用标识,在发布服务器发布所述轻应用的代码包时已经确定所述应用标识为所述轻应用的应用标识,并且所述应用标识与所述加密服务器根据所述应用服务器的身份信息确定的所述应用服务器的应用标识一致;
根据所述第一主密钥和所述应用标识生成加密信息;
将所述用户标识和所述加密信息传递给所述轻应用,以使得所述轻应用根据所述用户标识和所述加密信息与所述应用服务器执行数据加密相关的操作。
优选的,所述获取用户标识和第一主密钥包括:
获取预先存储的所述用户标识和所述第一主密钥;或者,
与所述加密服务器进行密钥协商以获取所述用户标识和所述第一主密钥。
优选的,所述与所述加密服务器进行密钥协商以获取所述用户标识和所述第一主密钥包括:
基于用户识别模块SIM与所述加密服务器基于用户数据***进行认证与密钥协商以获取所述用户标识和所述第一主密钥。
优选的,所述接收所述轻应用发送的调用请求之前还包括:
获取所述应用标识,所述应用标识与所述轻应用的代码包相关联;
将所述应用标识注入到所述轻应用中,以使得所述轻应用发送的所述调用请求中包括所述应用标识。
优选的,所述获取所述应用标识包括:
在向所述发布服务器请求下载所述代码包的下载请求中包括所述应用标识,从所述下载请求中获取所述应用标识,所述应用标识在所述发布服务器上用于关联所述代码包;或者,
在所述代码包中包括的配置文件中设置有所述应用标识,从所述配置文件中获取所述应用标识,所述应用标识在所述发布服务器发布所述代码包时,已经确定所述配置文件中设置的所述应用标识确实是所述轻应用的应用标识。
优选的,在所述从所述配置文件中获取所述应用标识之前还包括:
对所述代码包进行签名验证,只有所述代码包通过签名验证才继续执行后续步骤。
优选的,所述将所述应用标识注入到所述轻应用中包括:
在所述轻应用的实例中,定义一个用于应用标识的全局变量,将所述应用标识对所述全局变量进行赋值,以使得当所述轻应用在生成所述调用请求时,通过获取所述全局变量的值以获取到所述应用标识;或者,
将所述应用标识注入到所述轻应用的调用函数中相应的调用参数,所述调用函数用于执行发送所述调用请求。
优选的,在所述接收所述轻应用发送的调用请求之后,以及在所述根据所述第一主密钥和所述应用标识生成加密信息之前还包括:
确定所述应用标识是否为经过授权的应用标识;
若是,则执行所述根据所述第一主密钥和所述应用标识生成加密信息;
若否,则不执行所述根据所述第一主密钥和所述应用标识生成加密信息。
优选的,所述确定所述应用标识是否为经过授权的应用标识包括:
将所述应用标识发送给所述加密服务器,以使得所述加密服务器确定所述应用标识是否为经过授权的应用标识;
若接收到所述加密服务器反馈的表示已经授权的信息,则确定所述应用标识为经过授权;
否则,则确定所述应用标识没有经过授权。
优选的,所述根据所述第一主密钥和所述应用标识生成加密信息包括:
根据所述第一主密钥和所述应用标识生成第一应用密钥,所述第一应用密钥为所述加密信息,其中,所述第一应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第二应用密钥的生成方式一致,以使得所述第一应用密钥与所述第二应用密钥的值相同;或者,
根据所述第一主密钥和所述应用标识生成第三应用密钥,根据所述第三应用密钥对数据进行加密以生成第一加密值,所述第一加密值为所述加密信息,其中,所述第三应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第四应用密钥的生成方式一致,以使得所述第三应用密钥与所述第四应用密钥的值相同;或者,
根据所述第一主密钥对包括所述应用标识的信息加密以生成第二加密值,所述第二加密值为所述加密信息,在将所述用户标识和所述第二加密值传递给所述轻应用之后,所述轻应用通过所述应用服务器将所述用户标识和所述第二加密值传递给所述加密服务器,以使得所述加密服务器根据所述用户标识获取所述第二主密钥,再根据所述第二主密钥和所述应用服务器的应用标识验证所述第二加密值。
优选的,所述根据所述第三应用密钥对数据进行加密以生成第一加密值包括:
根据所述第三应用密钥使用对称加密算法对数据进行加密以生成所述第一加密值;或者,
根据所述第三应用密钥使用消息认证码算法对数据进行加密以生成所述第一加密值。
优选的,所述根据所述第一主密钥对包括所述应用标识的信息加密以生成第二加密值包括:
根据所述第一主密钥生成第五应用密钥,其中,所述第五应用密钥的生成方式与所述加密服务器根据所述第二主密钥生成第六应用密钥的生成方式一致,以使得所述第五应用密钥与所述第六应用密钥的值相同;
根据所述应用标识生成第一验证信息,其中,所述第一验证信息的生成方式与所述加密服务器生成第二验证信息的生成方式一致,以使得所述第一验证信息与所述第二验证信息的值相同;
根据所述第五应用密钥对所述第一验证信息加密生成所述第二加密值。
优选的,所述根据所述第一主密钥生成第五应用密钥包括:
将所述第一主密钥作为所述第五应用密钥;或者,
根据包括所述第一主密钥的信息生成所述第五应用密钥。
优选的,所述根据所述应用标识生成第一验证信息包括:
将所述应用标识作为所述第一验证信息;或者,
根据包括所述应用标识的信息生成所述第一验证信息。
优选的,所述根据所述第五应用密钥对所述第一验证信息加密生成所述第二加密值包括:
根据所述第五应用密钥使用消息认证码算法对所述第一验证信息加密生成所述第二加密值;或者,
根据所述第五应用密钥使用对称加密算法对包括所述第一验证信息的信息加密生成所述第二加密值。
优选的,通过JSBridge接收所述轻应用的所述调用请求,以及通过JSBridge将所述用户标识和所述加密信息传递给所述轻应用。
第二方面,提供了一种为轻应用提供加密信息的装置,所述轻应用与对应的应用服务器通过网络相连接,所述应用服务器与加密服务器通过网络相连接,所述装置包括:
密钥获取模块,用于获取用户标识和第一主密钥,并且在所述加密服务器上存储有所述用户标识与第二主密钥的关联关系,所述第二主密钥与所述第一主密钥的值相同;
接收模块,用于接收所述轻应用发送的调用请求,所述调用请求用于获取加密信息,所述调用请求中包括应用标识,在发布服务器发布所述轻应用的代码包时已经确定所述应用标识为所述轻应用的应用标识,并且所述应用标识与所述加密服务器根据所述应用服务器的身份信息确定的所述应用服务器的应用标识一致;
加密模块,用于根据所述第一主密钥和所述应用标识生成加密信息;
传递模块,用于将所述用户标识和所述加密信息传递给所述轻应用,以使得所述轻应用根据所述用户标识和所述加密信息与所述应用服务器执行数据加密相关的操作。
优选的,所述密钥获取模块包括:
第一密钥获取单元,用于获取预先存储的所述用户标识和所述第一主密钥;或者,
第二密钥获取单元,用于与所述加密服务器进行密钥协商以获取所述用户标识和所述第一主密钥。
优选的,所述加密模块包括:
第一加密单元,用于根据所述第一主密钥和所述应用标识生成第一应用密钥,所述第一应用密钥为所述加密信息,其中,所述第一应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第二应用密钥的生成方式一致,以使得所述第一应用密钥与所述第二应用密钥的值相同;或者,
第二加密单元,用于根据所述第一主密钥和所述应用标识生成第三应用密钥,根据所述第三应用密钥对数据进行加密以生成第一加密值,所述第一加密值为所述加密信息,其中,所述第三应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第四应用密钥的生成方式一致,以使得所述第三应用密钥与所述第四应用密钥的值相同;或者,
第三加密单元,用于根据所述第一主密钥对包括所述应用标识的信息加密以生成第二加密值,所述第二加密值为所述加密信息,在将所述用户标识和所述第二加密值传递给所述轻应用之后,所述轻应用通过所述应用服务器将所述用户标识和所述第二加密值传递给所述加密服务器,以使得所述加密服务器根据所述用户标识获取所述第二主密钥,再根据所述第二主密钥和所述应用服务器的应用标识验证所述第二加密值。
优选的,所述第三加密单元包括:
应用密钥生成子单元,用于根据所述第一主密钥生成第五应用密钥,其中,所述第五应用密钥的生成方式与所述加密服务器根据所述第二主密钥生成第六应用密钥的生成方式一致,以使得所述第五应用密钥与所述第六应用密钥的值相同;
验证信息生成子单元,用于根据所述应用标识生成第一验证信息,其中,所述第一验证信息的生成方式与所述加密服务器生成第二验证信息的生成方式一致,以使得所述第一验证信息与所述第二验证信息的值相同;
加密信息生成子单元,用于根据所述第五应用密钥对所述第一验证信息加密生成所述第二加密值。
优选的,所述装置还包括:
应用标识获取模块,用于获取所述应用标识,所述应用标识与所述轻应用的代码包相关联;
注入模块,用于将所述应用标识注入到所述轻应用中,以使得所述轻应用发送的所述调用请求中包括所述应用标识。
优选的,所述应用标识获取模块包括:
第一标识获取单元,用于从下载请求中获取所述应用标识,所述下载请求为向所述发布服务器请求下载所述代码包的下载请求,所述下载请求中包括所述应用标识,所述应用标识在所述发布服务器上用于关联所述代码包;或者,
第二标识获取单元,用于从配置文件中获取所述应用标识,所述配置文件为所述代码包中包括的配置文件,所述配置文件中设置有所述应用标识,所述应用标识在所述发布服务器发布所述代码包时,已经确定所述配置文件中设置的所述应用标识确实是所述轻应用的应用标识。
优选的,所述注入模块包括:
第一注入单元,用于将所述应用标识对全局变量进行赋值,以使得当所述轻应用在生成所述调用请求时,通过获取所述全局变量的值以获取到所述应用标识,所述全局变量在所述轻应用的实例中用于定义所述应用标识;或者,
第二注入单元,用于将所述应用标识注入到所述轻应用的调用函数中相应的调用参数,所述调用函数用于执行发送所述调用请求。
优选的,所述装置还包括授权模块,所述授权模块用于确定所述应用标识是否为经过授权的应用标识;若是,则执行所述加密模块;若否,则不执行所述加密模块。
优选的,所述授权模块还包括:
标识发送单元,用于将所述应用标识发送给所述加密服务器,以使得所述加密服务器确定所述应用标识是否为经过授权的应用标识;
反馈接收单元,用于接收所述加密服务器反馈的信息;
授权确认单元,用于根据所述反馈的信息确认所述应用标识是否为经过授权;若所述反馈的信息为表示已经授权的信息,则确定所述应用标识为经过授权;否则,则确定所述应用标识没有经过授权。
第三方面,提供一种客户端,其特征在于,所述客户端包括上述第一方面所述的一种为轻应用提供加密信息的方法。
提供一种智能操作***,其特征在于,所述智能操作***包括上述第一方面所述的一种为轻应用提供加密信息的方法。
提供一种智能设备,所述智能设备包括:存储器、处理器,所述处理器用于运行所述存储器所存储的程序,所述程序运行时实现上述第一方面所述的一种为轻应用提供加密信息的方法。
提供一种存储介质,其特征在于,所述存储介质中存储有程序,所述程序用于实现包括上述第一方面所述的一种为轻应用提供加密信息的方法。
综上所述,本发明提供的技术方案运行在宿主环境中,接收轻应用的调用请求,该调用请求中包括应用标识,然后根据第一主密钥和应用标识生成加密信息,将用户标识和加密信息传递给轻应用,以使得轻应用根据该用户标识和加密信息与应用服务器之间执行数据加密相关的操作。本发明提供的技术方案,由于可以确定轻应用发送的调用请求中包括的应用标识是可信的,则由此使得根据第一主密钥和应用标识生成的加密信息确实是用于该轻应用的加密信息,可以以同一个主密钥为多个不同的轻应用提供加密信息,且该多个不同的轻应用之间不可相互仿冒以获取加密信息。
【附图说明】
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明各实施例所涉及的一种网络架构示意图;
图2是一种为轻应用提供加密信息的方法实施例的流程示意图;
图3是一种为轻应用提供加密信息的装置实施例一的结构示意图;
图4是一种为轻应用提供加密信息的装置实施例二的结构示意图;
图5是一种为轻应用提供加密信息的装置实施例三的结构示意图;
图6是一种为轻应用提供加密信息的装置实施例四的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
【具体实施方式】
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
一、相关名词术语
为了便于理解,对本文中涉及的一些名词作介绍和说明。
智能设备:具有数据计算处理功能的设备,包括智能手机、智能电视、平板电脑等用户智能设备,也包括智能手表、智能手环等物联网智能设备。
智能操作***:应用于智能设备的操作***,如安卓(Android)***(包括基于Android***深度开发的***)、苹果公司开发的iOS***(包括基于iOS***深度开发的***)或其它***。
轻应用:一种轻量级的应用,是一种无需安装、即点即用的全功能应用程序,其既有媲美甚至超越本地安装的应用程序的用户体验,又具备网页应用程序的可被检索与智能分发的特性,轻应用也被称为快应用、小程序等,例如百度轻应用、微信小程序、支付宝小程序、主流手机厂商推出的快应用等。
宿主环境:为轻应用提供一些必要的能力(如网络数据通信、数据加密等)和运行支持的环境,以使得轻应用可以无需关注这些逻辑的实现方式,也不需要关心宿主环境的底层架构,宿主环境包括客户端、智能操作***或智能设备等。例如,对于微信小程序,其宿主环境为微信客户端;对于主流手机厂商推出的快应用,其宿主环境为智能操作***。
代码包:用于启动轻应用的代码文件。
用户标识:用于识别一个用户的标识。
应用标识:用于唯一地识别轻应用,也用于唯一地识别该轻应用对应的应用服务器。
消息认证码:也被称为MAC(Message authentication code),利用密钥对要保护的信息加密生成一段数字串,该段数字串对于要保护的信息来说是唯一和一一对应的,别人无法伪造,也是对信息的发送者发送信息真实性的一个有效证明。因此,消息认证码可以有效地保护信息的完整性,以及实现发送方的不可抵赖和不能伪造。消息认证码算法包括基于哈希的消息认证码(HMAC)、密码分组链接消息认证码(CBC-MAC)、伽罗瓦消息认证码(GMAC)等,以及含密钥加密的哈希函数也起到等同的作用。
对称加密算法:指加密和解密使用相同密钥的加密算法,例如三重数据加密标准(Triple Data Encryption Standard,DES)、高级加密标准(Advanced EncryptionStandard,AES)等。
JSBridge:用于实现原生应用和JavaScript应用之间进行数据通信。
二、实施环境说明
请参考图1,其示出了本发明各个实施例所涉及的一种网络架构的结构示意图。该网络架构中包括宿主环境、应用服务器、发布服务器和加密服务器。
发布服务器用于对开发者上传的代码包进行审核和发布,每个轻应用在发布服务器上都有一个对应的代码包,以使得宿主环境能下载该代码包。在一些实施方式中,将发布服务器分为包括代码包审核、软件仓库等多个模块或服务器,其中,代码包审核模块或服务器用于对开发者上传的代码包进行审核,软件仓库模块或服务器用于存储经审核通过后的代码包供智能设备下载,在本发明各实施例中,对此并不进行限定。
宿主环境通过轻应用的入口从发布服务器下载轻应用的代码包,轻应用的入口用来发现、打开和访问轻应用,包括应用商店、智能助手、扫描二维码、搜索引擎、短信、文本等入口方式。
在下载轻应用的代码包之后,宿主环境对代码包进行运行,运行过程包括对代码包进行验证、解析,以及将解析后的视图层代码通过渲染引擎进行执行、逻辑层代码通过JavaScript引擎进行执行等。
轻应用在运行过程中,与应用服务器进行网络数据通信,轻应用根据获取的用户标识和加密信息,与应用服务器进行身份认证、数据加解密、完整性验证等数据加密相关的操作。可以理解,轻应用与应用服务器进行的网络数据通信,通常是由轻应用调用宿主环境的网络数据通信能力进行实现的。
应用服务器由第三方应用服务商提供,也被称为开发者服务器,用于和轻应用进行网络数据通信,向轻应用提供用户所需的业务应用数据和服务,例如资讯、购物、社交等;与加密服务器进行网络数据通信,当加密服务器接收到应用服务器转发的用户标识时,根据该用户标识在用户标识与第二主密钥的关联关系中获取该用户标识关联的第二主密钥;应用服务器在加密服务器上注册了身份信息,当应用服务器通过加密服务器的身份认证时,加密服务器根据应用服务器的身份信息获取到该应用服务器的应用标识,该应用服务器的应用标识与轻应用的应用标识是一致的。由此,则加密服务器根据获取的第二主密钥和该应用服务器的应用标识,实现向应用服务器提供加密服务,例如提供应用密钥或加密结果等;而应用服务器则根据该提供的加密服务,实现与轻应用的身份认证、数据加解密、完整性验证等数据加密相关的操作。
可以理解,在实际网络应用环境中,可以包括有多个宿主环境,每个宿主环境上分别运行有一个或多个轻应用,各个轻应用分别与对应的应用服务器进行网络数据通信,该各个应用服务器又分别与加密服务器进行网络数据通信。
需要说明的是,发布服务器和加密服务器是逻辑意义上的服务器,其可以各作为一个或多个功能模块集成到不同的物理服务器或云服务器上,也可以都位于同一个物理服务器或云服务器上。
需要说明的是,本领域技术人员可以理解,图1中示出的网络架构并不构成对实施环境的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。图1中示出的网络架构仅用于加强对本发明技术的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术信息。
三、一种为轻应用提供加密信息的方法实施例
请参考图2,其示出了本发明提供的一种为轻应用提供加密信息的方法实施例的流程图。本实施例以该方法应用于图1所示实施环境中的宿主环境来举例说明,该方法包括:
步骤201.获取用户标识和第一主密钥,并且在加密服务器上存储有该用户标识与第二主密钥的关联关系,该第二主密钥与该第一主密钥的值相同。
获取用户标识和第一主密钥,并且在加密服务器上建立和存储有该用户标识与第二主密钥的关联关系,即在加密服务器上根据该用户标识在该关联关系中可以查找和获取到该第二主密钥,并且该第二主密钥与该第一主密钥的值是相同的。
该获取的用户标识和第一主密钥,可以是预先存储的用户标识和第一主密钥,例如,在智能设备生产时,给每一个智能设备分别生成和写入用于该智能设备的用户标识和第一主密钥,宿主环境具有获取该用户标识和该第一主密钥的权限,同时在加密服务器上建立和存储该用户标识与第二主密钥的关联关系,该第二主密钥与该第一主密钥的值是相同的。
该获取的用户标识和第一主密钥,也可以是与加密服务器之间经过密钥协商之后所生成的。例如,以参照专利申请文件“一种身份认证方法、智能设备及认证服务器”(申请号:2019107750779)中的认证与密钥协商过程实施例为例,将加密服务器作为该认证与密钥协商过程实施例中的认证服务器,由智能设备基于用户识别模块SIM与加密服务器基于用户数据***进行认证与密钥协商,在成功进行认证与密钥协商之后,智能设备获取到临时用户标识和生成第一主密钥,该临时用户标识即为用户标识;宿主环境获取该临时用户标识和该第一主密钥,同时,在加密服务器上建立有该临时用户标识与第二主密钥的关联关系,该第二主密钥与该第一主密钥的值相同。
需要说明的是,在权限控制上,应使得轻应用不能直接获取到该第一主密钥,例如基于宿主环境的权限控制机制,轻应用只能根据宿主环境提供的接口来调用和获取数据,而不能直接获取到该第一主密钥。
步骤202.接收轻应用发送的调用请求,该调用请求用于获取加密信息,该调用请求中包括应用标识,在发布服务器发布该轻应用的代码包时已经确定该应用标识为该轻应用的应用标识,并且该应用标识与加密服务器根据应用服务器的身份信息确定的应用服务器的应用标识一致。
宿主环境为了向轻应用提供***服务、原生Native能力等,向轻应用提供若干经过抽象的应用程序编程接口(Application Programming Interface,API),包括提供用于获取加密信息的接口。优选的,该接口通过JSBridge实现。
轻应用根据该接口,向宿主环境发送调用请求以获取加密信息,该调用请求中包括该轻应用的应用标识。相应地,宿主环境接收轻应用发送的该调用请求,并且获取该应用标识。可以理解,本实施例中所述的轻应用,是如“实施环境说明”中所述由宿主环境下载并运行的轻应用;该调用请求通常是由宿主环境通过JavaScript引擎执行轻应用的逻辑层代码中相应的调用函数所触发的。
应用标识的命名方式,可以是应用服务器域名的反向,例如,如果应用服务器的域名是app.example.com,则应用标识可以命名为com.example.app。当然,应用标识也可以是其他的一个字符串。并且,在加密服务器根据应用服务器的身份信息确定应用服务器的应用标识时,获取的应用服务器的应用标识与该轻应用的应用标识是一致的。加密服务器根据应用服务器的身份信息确定应用服务器的应用标识的实施方式,可以以应用服务器向加密服务器进行身份认证的应用账号作为应用服务器的应用标识;也可以通过获取应用服务器的域名作为应用服务器的应用标识,如果应用标识是应用服务器域名的反向,则将获取的域名进行反向以使得与轻应用的应用标识相一致;还可以在加密服务器上预先保存应用服务器的身份信息与应用标识的对应关系,加密服务器获取应用服务器的身份信息(如获取应用服务器的应用账号、IP或域名等身份信息),然后根据获取的身份信息在该对应关系中查找和获取应用服务器的应用标识。
为了确保获取的应用标识确实是该轻应用的应用标识,即为了避免其他轻应用仿冒该轻应用的应用标识,则需依赖轻应用的代码包发布在发布服务器时进行的审核,以使得发布在发布服务器上轻应用的代码包所关联的应用标识,确实是该轻应用的应用标识。审核方式包括人工审核或自动审核,在本实施例中并不进行限定。
进一步的,为了让轻应用在发送的该调用请求中能包括该轻应用的应用标识,则在实施本步骤之前,宿主环境获取该轻应用的代码包相关联的应用标识,并且将该获取的应用标识作为该调用请求中包括的应用标识,即将该获取的应用标识注入到该轻应用中,以使得该轻应用发送的该调用请求中包括该应用标识。具体的,可以包括如下多种实施方式:
实施方式一,在向发布服务器请求下载该轻应用的代码包的下载请求中包括应用标识,从该下载请求中获取该应用标识,该应用标识在发布服务器上用于关联该轻应用的代码包。
在发布服务器上使用应用标识用于唯一地关联轻应用的代码包,通过该应用标识可以查找和获取到轻应用的代码包,例如,在发布服务器上记录有开发者所关联的应用标识,当开发者将轻应用的代码包上传到发布服务器进行审核并发布时,发布服务器根据开发者的身份信息获取该开发者所关联的应用标识,然后使用该开发者所关联的应用标识在发布服务器上关联该开发者上传的代码包,以使得根据该关联的应用标识可以查找和获取到该开发者上传的代码包。
在向发布服务器请求下载轻应用的代码包的下载请求中包括应用标识,宿主环境根据该下载请求下载轻应用的代码包,以及从该下载请求中获取该应用标识。例如,宿主环境先通过轻应用的入口获取到下载请求(例如通过对二维码扫描和解析之后获取到下载请求),在该下载请求中包括应用标识,宿主环境获取该下载请求中包括的该应用标识;然后宿主环境根据该下载请求向发布服务器请求下载轻应用的代码包;发布服务器在接收到包括该应用标识的下载请求时,根据该应用标识获取相应关联的代码包并且反馈给宿主环境。
由此,当宿主环境下载并运行该代码包时,将从下载请求中获取的该应用标识注入到该轻应用中,以使得该轻应用发送的该调用请求中包括该应用标识。
例如,宿主环境在运行轻应用时,会将每个轻应用分别运行在独立的实例中,以使得运行的轻应用能相互隔离,因此,在该轻应用的实例中,定义一个用于应用标识的全局变量,并以该获取的应用标识对该全局变量进行赋值;当该轻应用在生成调用请求时,则获取该全局变量的值即可获取到该轻应用的应用标识。
又例如,在轻应用发送该调用请求相应的调用函数中,可以通过设置相应的调用参数以包括应用标识,因此,在宿主环境解析该轻应用的代码包时,将该获取的应用标识注入到该调用函数该相应的调用参数中,从而使得轻应用发送的该调用请求中包括该应用标识。
实施方式二,在该轻应用的代码包中包括的配置文件中设置有应用标识,从该配置文件中获取该应用标识,该应用标识在发布服务器发布该轻应用的代码包时,已经确定该配置文件中设置的该应用标识确实是该轻应用的应用标识。
在轻应用的代码包中包括用于设定全局配置的全局配置文件,在该全局配置文件中可以设置该轻应用的应用标识,开发者在该全局配置文件的相应配置项中设置该应用标识。例如,全局配置文件为manifest.json,其中的package配置项用于设置应用标识,该轻应用的应用标识为“com.example.app”,则将package配置项设置为“com.example.app”。
当开发者将轻应用的代码包上传到发布服务器进行审核时,发布服务器只有确定该全局配置文件中相应配置项设置的应用标识确实是该轻应用的应用标识才审核通过。例如,在发布服务器上记录有开发者所关联的应用标识,当开发者将轻应用的代码包上传到发布服务器进行审核时,发布服务器根据开发者的身份信息获取该开发者所关联的应用标识,以及获取该代码包的全局配置文件中相应配置项所设置的应用标识,然后比较两者是否一致,如果一致,则确定该轻应用的应用标识审核通过,从而才能发布该轻应用的代码包。
由此,当宿主环境下载并运行该代码包时,解析该代码包获取全局配置文件,然后从全局配置文件中获取应用标识,将获取的该应用标识注入到该轻应用中,以使得该轻应用发送的该调用请求中包括该应用标识。具体注入方式可以参照上述实施方式一,在此不再赘述。
进一步的,发布服务器对该代码包进行了签名,则在宿主环境运行该代码包之前(包括上述从配置文件中获取应用标识之前),对该代码包进行签名验证,只有该代码包通过签名验证,才运行该代码包。由此,由于通过签名验证机制验证了该代码包的可信性,则可以进一步确定获取的该应用标识是可信的。
需要说明的是,在实施方式二中,在配置文件中设置的应用标识,并不一定要用于在发布服务器上关联轻应用的代码包,两者既可以是同一个标识,也可以不是同一个标识,优选的,两者是同一个标识,以此减轻开发者代码开发时的复杂度,以及减轻在发布服务器审核时的复杂度。
步骤203.可选的,确定该应用标识是否为经过授权的应用标识;若是,则执行下述步骤204。
宿主环境在获取到轻应用的应用标识之后,确定该应用标识是否为经过授权的应用标识;若是经过授权的,则执行下述步骤204;若否,则不执行下述步骤204及其后续步骤。
第三方应用(包括轻应用和对应的应用服务器)在加密服务器上进行注册等的过程中,加密服务器记录第三方应用是否经过授权的状态,即加密服务器给第三方应用的应用标识标记一个是否经过授权的状态。
宿主环境与加密服务器进行网络数据通信,宿主环境将该应用标识发送给加密服务器,由加密服务器确定该应用标识是否为经过授权的应用标识。
加密服务器根据宿主环境发送的该应用标识获取对应的是否经过授权的状态,如果是经过授权的状态,则向宿主环境反馈表示已经授权的信息;如果否,则反馈表示没有授权的信息。
当宿主环境接收到表示已经授权的信息时,则确定该应用标识为经过加密服务器授权的应用标识,继续执行下述步骤204;否则,如果接收到表示没有授权的信息,或者,如果在设定时间内没有接收到加密服务器反馈的信息,则不继续执行下述步骤204及其后续步骤。
实施确定该应用标识是否为经过加密服务器授权的应用标识的好处在于,可以在生成加密信息之前,确定该应用标识是否为在加密服务器上已经授权过的应用标识,从而可以避免为无效的应用标识实施生成加密信息的步骤。
步骤204.根据该第一主密钥和该应用标识生成加密信息。
根据获取的该第一主密钥和该应用标识生成加密信息,该生成的加密信息,既可以是应用密钥,也可以是加密之后的加密值,具体包括:
第一种实施方式,根据该第一主密钥和该应用标识生成第一应用密钥,该第一应用密钥即为加密信息,其中,该第一应用密钥的生成方式与加密服务器根据该第二主密钥和应用服务器的应用标识生成第二应用密钥的生成方式一致,以使得该第一应用密钥与该第二应用密钥的值相同。
宿主环境根据该第一主密钥和该应用标识生成第一应用密钥。例如,以密钥派生算法公式为例,可以表示为:DK=PBKDF2(passphrase,Salt,c,dkLen),其中:DK是生成的第一应用密钥,PBKDF2是密钥派生算法,passphrase是包括该第一主密钥和该应用标识而组合拼接的字符串;Salt是盐值,在本例中是一个固定字符串;c是迭代次数;dkLen是密钥输出长度,可以根据使用的加密算法生成符合要求的密钥长度。
在宿主环境生成第一应用密钥之后,宿主环境将该用户标识和该第一应用密钥传递给轻应用。轻应用根据宿主环境传递的该用户标识和该第一应用密钥,与对应的应用服务器执行数据加密相关的操作,例如:
轻应用将该用户标识传递给对应的应用服务器,应用服务器将该用户标识传递给加密服务器;加密服务器根据该用户标识在用户标识与第二主密钥的关联关系中查找到对应的第二主密钥,并且根据该对应的第二主密钥和应用服务器的应用标识生成第二应用密钥,加密服务器生成第二应用密钥的生成方式与宿主环境生成第一应用密钥的生成方式一致,包括密钥派生算法、输入信息、选择的参数都保持一致,其中,应用服务器的应用标识是加密服务器根据应用服务器的身份信息确定的;由于该用户标识的第二主密钥与该第一主密钥的值是相同的,该应用服务器的应用标识与宿主环境生成第一应用密钥时所使用的应用标识是相同的,并且第一应用密钥与第二应用密钥的生成方式是一致的,则生成的第二应用密钥与第一应用密钥的值是相同的。
由此,则加密服务器可以根据该第二应用密钥对应用服务器转发的与该用户标识相关的数据执行数据加密相关的操作;或者,加密服务器也可以将该第二应用密钥发送给应用服务器,以使得应用服务器根据该第二应用密钥与轻应用之间执行数据加密相关的操作;该数据加密相关的操作包括身份认证、数据加解密、完整性验证等。
第二种实施方式,根据该第一主密钥和该应用标识生成第三应用密钥,根据该第三应用密钥对数据进行加密以生成第一加密值,该生成的第一加密值即为加密信息,其中,该第三应用密钥的生成方式与加密服务器根据该第二主密钥和应用服务器的应用标识生成第四应用密钥的生成方式一致,以使得该第三应用密钥与该第四应用密钥的值相同。
宿主环境根据该第一主密钥和该应用标识生成第三应用密钥,并且该第三应用密钥的生成方式与加密服务器根据第二主密钥和应用服务器的应用标识生成第四应用密钥的生成方式一致,以使得该第三应用密钥与该第四应用密钥的值相同。具体还可以参照上述第一种实施方式中生成第一应用密钥的实施方式。
与第二种实施方式不同的是,在宿主环境生成第三应用密钥之后,并不将该第三应用密钥传递给轻应用,而是根据该第三应用密钥对数据进行加密以生成第一加密值。该数据可以是轻应用在调用请求中所携带的数据,也可以是宿主环境生成的数据,在本实施例中并不进行限定。
由于宿主环境生成的第三应用密钥与加密服务器生成的第四应用密钥的值是相同的,则根据数据加密相关操作的实际需要,宿主环境可以根据第三应用密钥使用对称加密算法或消息认证码算法对数据加密生成加密结果(即生成第一加密值),应用服务器或加密服务器则可以根据第四应用密钥对该第一加密值进行解密或验证。例如:
宿主环境根据该第三应用密钥使用对称加密算法或消息认证码算法对数据加密以生成加密结果(即生成第一加密值);以Android***为例,宿主环境可调用Cipher类中相应的对称加密算法实现对数据的加密以生成第一加密值,或者,宿主环境可调用Mac类中的消息认证码算法实现对数据的加密以生成第一加密值;
宿主环境将用户标识和该第一加密值传递给轻应用,轻应用将该用户标识和该第一加密值传递给对应的应用服务器,应用服务器将该用户标识传递给加密服务器;
加密服务器根据该用户标识在用户标识与第二主密钥的关联关系中查找到对应的第二主密钥,并且根据该对应的第二主密钥和应用服务器的应用标识生成第四应用密钥,加密服务器生成第四应用密钥的生成方式与宿主环境生成第三应用密钥的生成方式一致,包括密钥派生算法、输入信息、选择的参数都保持一致,其中,应用服务器的应用标识是加密服务器根据应用服务器的身份信息确定的;
加密服务器将该第四应用密钥传递给应用服务器,如果该第一加密值是宿主环境使用对称加密算法对数据加密生成的,则应用服务器可以根据该第四应用密钥以及使用相同的对称加密算法对该第一加密值进行数据解密;如果该第一加密值是宿主环境使用消息认证码算法对数据加密生成的,则应用服务器生成或获取与宿主环境生成第一加密值时相同值的数据,根据该第四应用密钥以及使用相同的消息认证码算法、该相同值的数据对该第一加密值进行验证;或者,
应用服务器将该用户标识和该第一加密值传递给加密服务器,加密服务器生成第四应用密钥之后,根据该第四应用密钥对该第一加密值进行数据解密或验证,再将解密或验证后的结果反馈给应用服务器。
第二种实施方式与第一种实施方式的区别在于,第一种实施方式中,宿主环境在生成应用密钥之后,将生成的应用密钥传递给轻应用,由轻应用基于该生成的应用密钥执行数据加密相关的操作;而在第二种实施方式中,宿主环境不仅生成应用密钥,而且还根据该生成的应用密钥执行数据加密相关的操作,将生成的加密值传递给轻应用。
第三种实施方式,根据该第一主密钥对包括该应用标识的信息加密以生成第二加密值,该生成的第二加密值即为加密信息,在将该用户标识和该第二加密值传递给轻应用之后,轻应用通过应用服务器将该用户标识和该第二加密值传递给加密服务器,以使得加密服务器根据该用户标识获取该第二主密钥,再根据该第二主密钥和应用服务器的应用标识验证该第二加密值。
第三种实施方式的具体实施方式包括:
根据该第一主密钥生成第五应用密钥,例如将该第一主密钥作为第五应用密钥,或者根据包括该第一主密钥的信息生成第五应用密钥;
根据该应用标识生成第一验证信息,例如将该应用标识作为第一验证信息,或者根据包括该应用标识的信息生成第一验证信息;
根据该第五应用密钥对该第一验证信息加密生成第二加密值,例如,根据该第五应用密钥使用消息认证码算法对该第一验证信息加密以生成第二加密值;或者,根据该第五应用密钥使用对称加密算法对包括该第一验证信息的信息加密以生成第二加密值;
将该用户标识和该第二加密值传递给轻应用,再由轻应用将该用户标识和该第二加密值传递给对应的应用服务器,应用服务器将该用户标识和该第二加密值传递给加密服务器;
加密服务器根据该用户标识在用户标识与第二主密钥的关联关系中查找到对应的第二主密钥,并且根据该对应的第二主密钥生成第六应用密钥,加密服务器生成第六应用密钥的生成方式与宿主环境生成第五应用密钥的生成方式一致,包括密钥派生算法、输入信息、选择的参数都保持一致,以使得该第六应用密钥与该第五应用密钥的值相同;
加密服务器根据应用服务器的应用标识生成第二验证信息,该第二验证信息的生成方式与宿主环境生成第一验证信息的生成方式一致,以使得该第二验证信息和该第一验证信息的值相同,其中,应用服务器的应用标识是加密服务器根据应用服务器的身份信息确定的;
加密服务器根据该第六应用密钥和该第二验证信息验证该第二加密值,例如:如果该第二加密值是宿主环境是根据第五应用密钥使用消息认证码算法对第一验证信息加密生成的,则加密服务器根据该第六应用密钥和该第二验证信息使用相同的消息认证码算法验证该第二加密值;即,加密服务器根据该第六应用密钥对该第二验证信息使用相同的消息认证码算法加密生成第三加密值,比较该第三加密值与该第二加密值是否一致,若一致,则确定该第二加密值验证成功;或者,
如果该第二加密值是宿主环境根据该第五应用密钥对包括该第一验证信息的信息使用对称加密算法加密生成的,则加密服务器根据该第六应用密钥和该第二验证信息使用相同的对称加密算法验证该第二加密值;即,加密服务器根据该第六应用密钥使用相同的对称加密算法对该第二加密值解密以获得明文,并从该解密获得的明文中获取第一验证信息,比较该第二验证信息与该解密获得的第一验证信息是否一致,若一致,则确定该第二加密值验证成功;
加密服务器在确定第二加密值验证成功之后,向应用服务器反馈表示验证成功的应答消息,或者,加密服务器在确定第二加密值验证失败之后,向应用服务器反馈表示验证失败的应答消息;应用服务器则根据接收的应答消息执行相应的操作。
第三种实施方式与前两种实施方式的主要区别在于:前两种实施方式中,宿主环境根据第一主密钥和应用标识生成应用密钥,加密服务器根据第二主密钥和应用标识生成应用密钥;而在第三种实施方式中,宿主环境根据第一主密钥生成应用密钥,加密服务器根据第二主密钥生成应用密钥,即在生成应用密钥的信息中并不一定要包括应用标识。由于第三种实施方式中生成应用密钥的信息中并不一定要包括应用标识,这使得生成的应用密钥没有与轻应用和应用服务器相绑定,因此,根据加密服务器上生成的应用密钥对加密值的验证过程,仅在加密服务器上执行,而不是将应用密钥发送给应用服务器以执行验证过程,从而避免将应用密钥泄露给应用服务器;而在前两种实施方式中,根据加密服务器上生成的应用密钥对数据进行解密或验证的过程,既可以在加密服务器上执行,也可以在应用服务器上执行。
步骤205.将该用户标识和该加密信息传递给轻应用,以使得轻应用根据该用户标识和该加密信息向应用服务器执行数据加密相关的操作。
宿主环境根据与轻应用之间的数据通信机制将该用户标识和该加密信息传递给轻应用。例如,在步骤202中宿主环境与轻应用之间的接口通过JSBridge实现,即通过JSBridge协议接收轻应用的调用请求,则在本步骤中通过JSBridge将该用户标识和该加密信息回传给该轻应用。
在轻应用接收到宿主环境传递的用户标识和加密信息之后,则可以根据该用户标识和该加密信息向对应的应用服务器执行数据加密相关的操作。轻应用根据用户标识和加密信息向对应的应用服务器执行数据加密相关操作的实施方式,根据步骤204中生成加密信息的实施方式的不同,轻应用执行数据加密相关操作的实施方式可以参照上述步骤204中所述的实施方式,在此不再赘述。
还需要说明的是,在实施一次上述步骤201之后,可以多次实施步骤202至步骤205,即宿主环境可以基于步骤201中获取的用户标识和第一主密钥,多次为同一轻应用或不同的轻应用实施步骤202至步骤205所述的过程,从而可以实现多次向同一轻应用或不同的轻应用提供加密信息。
综上所述,本实施例提供的方法,宿主环境接收轻应用的调用请求,该调用请求中包括应用标识,然后根据第一主密钥和应用标识生成加密信息,将用户标识和加密信息传递给轻应用,以使得轻应用根据该用户标识和加密信息与应用服务器之间执行数据加密相关的操作。相比现有技术,本实施例带来的技术效果至少包括:第一方面,由于可以确定轻应用发送的调用请求中包括的应用标识是可信的,则由此使得根据第一主密钥和应用标识生成的加密信息确实是用于该轻应用的加密信息,从而使得宿主环境可以以同一个主密钥为多个不同的轻应用提供加密信息,且该多个不同的轻应用之间不可相互仿冒以获取加密信息;第二方面,进一步的,可以确定该应用标识是否为在加密服务器上已经授权过的应用标识,从而可以避免为无效的应用标识实施生成加密信息的步骤。
四、一种为轻应用提供加密信息的装置实施例一
请参考图3,其示出了本发明提供的一种为轻应用提供加密信息的装置实施例一的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部份。本实施例以该装置应用于图1所示实施环境中的宿主环境来举例说明,该装置包括:
密钥获取模块301,用于获取用户标识和第一主密钥,并且在所述加密服务器上存储有所述用户标识与第二主密钥的关联关系,所述第二主密钥与所述第一主密钥的值相同;
接收模块302,用于接收所述轻应用发送的调用请求,所述调用请求用于获取加密信息,所述调用请求中包括应用标识,在发布服务器发布所述轻应用的代码包时已经确定所述应用标识为所述轻应用的应用标识,并且所述应用标识与所述加密服务器根据所述应用服务器的身份信息确定的所述应用服务器的应用标识一致;
加密模块303,用于根据所述第一主密钥和所述应用标识生成加密信息;
传递模块304,用于将所述用户标识和所述加密信息传递给所述轻应用,以使得所述轻应用根据所述用户标识和所述加密信息与所述应用服务器执行数据加密相关的操作。
优选的,所述密钥获取模块301包括:
第一密钥获取单元,用于获取预先存储的所述用户标识和所述第一主密钥;或者,
第二密钥获取单元,用于与所述加密服务器进行密钥协商以获取所述用户标识和所述第一主密钥。
优选的,所述加密模块303包括:
第一加密单元,用于根据所述第一主密钥和所述应用标识生成第一应用密钥,所述第一应用密钥为所述加密信息,其中,所述第一应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第二应用密钥的生成方式一致,以使得所述第一应用密钥与所述第二应用密钥的值相同;或者,
第二加密单元,用于根据所述第一主密钥和所述应用标识生成第三应用密钥,根据所述第三应用密钥对数据进行加密以生成第一加密值,所述第一加密值为所述加密信息,其中,所述第三应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第四应用密钥的生成方式一致,以使得所述第三应用密钥与所述第四应用密钥的值相同;或者,
第三加密单元,用于根据所述第一主密钥对包括所述应用标识的信息加密以生成第二加密值,所述第二加密值为所述加密信息,在将所述用户标识和所述第二加密值传递给所述轻应用之后,所述轻应用通过所述应用服务器将所述用户标识和所述第二加密值传递给所述加密服务器,以使得所述加密服务器根据所述用户标识获取所述第二主密钥,再根据所述第二主密钥和所述应用服务器的应用标识验证所述第二加密值。
优选的,所述第三加密单元包括:
应用密钥生成子单元,用于根据所述第一主密钥生成第五应用密钥,其中,所述第五应用密钥的生成方式与所述加密服务器根据所述第二主密钥生成第六应用密钥的生成方式一致,以使得所述第五应用密钥与所述第六应用密钥的值相同;
验证信息生成子单元,用于根据所述应用标识生成第一验证信息,其中,所述第一验证信息的生成方式与所述加密服务器生成第二验证信息的生成方式一致,以使得所述第一验证信息与所述第二验证信息的值相同;
加密信息生成子单元,用于根据所述第五应用密钥对所述第一验证信息加密生成所述第二加密值。
五、一种为轻应用提供加密信息的装置实施例二
请参考图4,其示出了本发明提供的一种为轻应用提供加密信息的装置实施例二的结构示意图。该装置在上述一种为轻应用提供加密信息的装置实施例一提供的装置上,还包括如下模块:
应用标识获取模块401,用于获取所述应用标识,所述应用标识与所述轻应用的代码包相关联;
注入模块402,用于将所述应用标识注入到所述轻应用中,以使得所述轻应用发送的所述调用请求中包括所述应用标识。
优选的,所述应用标识获取模块401包括:
第一标识获取单元,用于从下载请求中获取所述应用标识,所述下载请求为向所述发布服务器请求下载所述代码包的下载请求,所述下载请求中包括所述应用标识,所述应用标识在所述发布服务器上用于关联所述代码包;或者,
第二标识获取单元,用于从配置文件中获取所述应用标识,所述配置文件为所述代码包中包括的配置文件,所述配置文件中设置有所述应用标识,所述应用标识在所述发布服务器发布所述代码包时,已经确定所述配置文件中设置的所述应用标识确实是所述轻应用的应用标识。
优选的,所述注入模块402包括:
第一注入单元,用于将所述应用标识对全局变量进行赋值,以使得当所述轻应用在生成所述调用请求时,通过获取所述全局变量的值以获取到所述应用标识,所述全局变量在所述轻应用的实例中用于定义所述应用标识;或者,
第二注入单元,用于将所述应用标识注入到所述轻应用的调用函数中相应的调用参数,所述调用函数用于执行发送所述调用请求。
六、一种为轻应用提供加密信息的装置实施例三
请参考图5,其示出了本发明提供的一种为轻应用提供加密信息的装置实施例三的结构示意图。该装置在上述一种为轻应用提供加密信息的装置实施例一提供的装置上,还包括授权模块501,所述授权模块501用于确定所述应用标识是否为经过授权的应用标识;若是,则执行所述加密模块303;若否,则不执行所述加密模块303。
优选的,所述授权模块501还包括标识发送单元、反馈接收单元和授权确定单元,其中:
标识发送单元,用于将所述应用标识发送给所述加密服务器,以使得所述加密服务器确定所述应用标识是否为经过授权的应用标识;
反馈接收单元,用于接收所述加密服务器反馈的信息;
授权确认单元,用于根据所述反馈的信息确认所述应用标识是否为经过授权;若所述反馈的信息为表示已经授权的信息,则确定所述应用标识为经过授权;否则,则确定所述应用标识没有经过授权。
本实施例还可以与上述一种为轻应用提供加密信息的装置实施例二提供的装置组成可选的实施例,即采用与本实施例相同或相似的实施方式,将所述授权模块501与上述为轻应用提供加密信息的装置实施例二中的接收模块302、加密模块303相连接后组成如图6所示的装置,其中,当所述授权模块501确定所述应用标识是经过授权的应用标识,则执行所述加密模块303;若否,则不执行所述加密模块303。具体实施方式不再赘述。
上述一种为轻应用提供加密信息的装置实施例一至实施例三提供的装置与上述一种为轻应用提供加密信息的方法实施例中的实施方法属于同一构思,其具体实现原理和效果可详见方法实施例,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”、“传递”、“发送”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者***不仅包括那些要素,而且还可以包括没有明确列出的其他要素,或者是还可以包括为这种过程、方法、产品或者***所固有的要素。
术语“第一”、“第二”、“第三”等(如果存在)仅用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解,这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
可以以许多方式来实现本发明的方法、装置和***。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法、装置和***。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (27)

1.一种为轻应用提供加密信息的方法,其特征在于,应用于宿主环境,所述宿主环境从发布服务器下载并运行轻应用,所述轻应用与对应的应用服务器通过网络相连接,所述应用服务器与加密服务器通过网络相连接,所述方法包括:
获取用户标识和第一主密钥,并且在所述加密服务器上存储有所述用户标识与第二主密钥的关联关系,所述第二主密钥与所述第一主密钥的值相同;
接收所述轻应用发送的调用请求,所述调用请求用于获取加密信息,所述调用请求中包括应用标识,在所述发布服务器发布所述轻应用的代码包时已经确定所述应用标识为所述轻应用的应用标识,并且所述应用标识与所述加密服务器根据所述应用服务器的身份信息确定的所述应用服务器的应用标识一致;
根据所述第一主密钥和所述应用标识生成加密信息;
将所述用户标识和所述加密信息传递给所述轻应用,以使得所述轻应用根据所述用户标识和所述加密信息与所述应用服务器执行数据加密相关的操作,相对应的,所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识向所述应用服务器提供加密服务,以使得所述应用服务器与所述轻应用执行所述数据加密相关的操作。
2.根据权利要求1所述的方法,其特征在于,所述获取用户标识和第一主密钥包括:
获取预先存储的所述用户标识和所述第一主密钥;或者,
与所述加密服务器进行密钥协商以获取所述用户标识和所述第一主密钥。
3.根据权利要求2所述的方法,其特征在于,所述与所述加密服务器进行密钥协商以获取所述用户标识和所述第一主密钥包括:
基于用户识别模块SIM与所述加密服务器基于用户数据***进行认证与密钥协商以获取所述用户标识和所述第一主密钥。
4.根据权利要求1所述的方法,其特征在于,所述接收所述轻应用发送的调用请求之前还包括:
获取所述应用标识,所述应用标识与所述轻应用的代码包相关联;
将所述应用标识注入到所述轻应用中,以使得所述轻应用发送的所述调用请求中包括所述应用标识。
5.根据权利要求4所述的方法,其特征在于,所述获取所述应用标识包括:
在向所述发布服务器请求下载所述代码包的下载请求中包括所述应用标识,从所述下载请求中获取所述应用标识,所述应用标识在所述发布服务器上用于关联所述代码包;或者,
在所述代码包中包括的配置文件中设置有所述应用标识,从所述配置文件中获取所述应用标识,所述应用标识在所述发布服务器发布所述代码包时,已经确定所述配置文件中设置的所述应用标识确实是所述轻应用的应用标识。
6.根据权利要求5所述的方法,其特征在于,在所述从所述配置文件中获取所述应用标识之前还包括:
对所述代码包进行签名验证,只有所述代码包通过签名验证才继续执行后续步骤。
7.根据权利要求4所述的方法,其特征在于,所述将所述应用标识注入到所述轻应用中包括:
在所述轻应用的实例中,定义一个用于应用标识的全局变量,将所述应用标识对所述全局变量进行赋值,以使得当所述轻应用在生成所述调用请求时,通过获取所述全局变量的值以获取到所述应用标识;或者,
将所述应用标识注入到所述轻应用的调用函数中相应的调用参数,所述调用函数用于执行发送所述调用请求。
8.根据权利要求1所述的方法,其特征在于,在所述接收所述轻应用发送的调用请求之后,以及在所述根据所述第一主密钥和所述应用标识生成加密信息之前还包括:
确定所述应用标识是否为经过授权的应用标识;
若是,则执行所述根据所述第一主密钥和所述应用标识生成加密信息;
若否,则不执行所述根据所述第一主密钥和所述应用标识生成加密信息。
9.根据权利要求7所述的方法,其特征在于,所述确定所述应用标识是否为经过授权的应用标识包括:
将所述应用标识发送给所述加密服务器,以使得所述加密服务器确定所述应用标识是否为经过授权的应用标识;
若接收到所述加密服务器反馈的表示已经授权的信息,则确定所述应用标识为经过授权;
否则,则确定所述应用标识没有经过授权。
10.根据权利要求1所述的方法,其特征在于,所述根据所述第一主密钥和所述应用标识生成加密信息包括:
根据所述第一主密钥和所述应用标识生成第一应用密钥,所述第一应用密钥为所述加密信息,其中,所述第一应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第二应用密钥的生成方式一致,以使得所述第一应用密钥与所述第二应用密钥的值相同;或者,
根据所述第一主密钥和所述应用标识生成第三应用密钥,根据所述第三应用密钥对数据进行加密以生成第一加密值,所述第一加密值为所述加密信息,其中,所述第三应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第四应用密钥的生成方式一致,以使得所述第三应用密钥与所述第四应用密钥的值相同;或者,
根据所述第一主密钥对包括所述应用标识的信息加密以生成第二加密值,所述第二加密值为所述加密信息,在将所述用户标识和所述第二加密值传递给所述轻应用之后,所述轻应用通过所述应用服务器将所述用户标识和所述第二加密值传递给所述加密服务器,以使得所述加密服务器根据所述用户标识获取所述第二主密钥,再根据所述第二主密钥和所述应用服务器的应用标识验证所述第二加密值。
11.根据权利要求10所述的方法,其特征在于,所述根据所述第三应用密钥对数据进行加密以生成第一加密值包括:
根据所述第三应用密钥使用对称加密算法对数据进行加密以生成所述第一加密值;或者,
根据所述第三应用密钥使用消息认证码算法对数据进行加密以生成所述第一加密值。
12.根据权利要求10所述的方法,其特征在于,所述根据所述第一主密钥对包括所述应用标识的信息加密以生成第二加密值包括:
根据所述第一主密钥生成第五应用密钥,其中,所述第五应用密钥的生成方式与所述加密服务器根据所述第二主密钥生成第六应用密钥的生成方式一致,以使得所述第五应用密钥与所述第六应用密钥的值相同;
根据所述应用标识生成第一验证信息,其中,所述第一验证信息的生成方式与所述加密服务器生成第二验证信息的生成方式一致,以使得所述第一验证信息与所述第二验证信息的值相同;
根据所述第五应用密钥对所述第一验证信息加密生成所述第二加密值。
13.根据权利要求12所述的方法,其特征在于,所述根据所述第一主密钥生成第五应用密钥包括:
将所述第一主密钥作为所述第五应用密钥;或者,
根据包括所述第一主密钥的信息生成所述第五应用密钥。
14.根据权利要求12所述的方法,其特征在于,所述根据所述应用标识生成第一验证信息包括:
将所述应用标识作为所述第一验证信息;或者,
根据包括所述应用标识的信息生成所述第一验证信息。
15.根据权利要求12所述的方法,其特征在于,所述根据所述第五应用密钥对所述第一验证信息加密生成所述第二加密值包括:
根据所述第五应用密钥使用消息认证码算法对所述第一验证信息加密生成所述第二加密值;或者,
根据所述第五应用密钥使用对称加密算法对包括所述第一验证信息的信息加密生成所述第二加密值。
16.根据权利要求1所述的方法,其特征在于,通过JSBridge接收所述轻应用的所述调用请求,以及通过JSBridge将所述用户标识和所述加密信息传递给所述轻应用。
17.一种为轻应用提供加密信息的装置,其特征在于,所述装置从发布服务器下载并运行轻应用,所述轻应用与对应的应用服务器通过网络相连接,所述应用服务器与加密服务器通过网络相连接,所述装置包括:
密钥获取模块,用于获取用户标识和第一主密钥,并且在所述加密服务器上存储有所述用户标识与第二主密钥的关联关系,所述第二主密钥与所述第一主密钥的值相同;
接收模块,用于接收所述轻应用发送的调用请求,所述调用请求用于获取加密信息,所述调用请求中包括应用标识,在所述发布服务器发布所述轻应用的代码包时已经确定所述应用标识为所述轻应用的应用标识,并且所述应用标识与所述加密服务器根据所述应用服务器的身份信息确定的所述应用服务器的应用标识一致;
加密模块,用于根据所述第一主密钥和所述应用标识生成加密信息;
传递模块,用于将所述用户标识和所述加密信息传递给所述轻应用,以使得所述轻应用根据所述用户标识和所述加密信息与所述应用服务器执行数据加密相关的操作;
与执行所述数据加密相关的操作相对应的,所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识向所述应用服务器提供加密服务,以使得所述应用服务器与所述轻应用执行所述数据加密相关的操作。
18.根据权利要求17所述的装置,其特征在于,所述密钥获取模块包括:
第一密钥获取单元,用于获取预先存储的所述用户标识和所述第一主密钥;或者,
第二密钥获取单元,用于与所述加密服务器进行密钥协商以获取所述用户标识和所述第一主密钥。
19.根据权利要求17所述的装置,其特征在于,所述加密模块包括:
第一加密单元,用于根据所述第一主密钥和所述应用标识生成第一应用密钥,所述第一应用密钥为所述加密信息,其中,所述第一应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第二应用密钥的生成方式一致,以使得所述第一应用密钥与所述第二应用密钥的值相同;或者,
第二加密单元,用于根据所述第一主密钥和所述应用标识生成第三应用密钥,根据所述第三应用密钥对数据进行加密以生成第一加密值,所述第一加密值为所述加密信息,其中,所述第三应用密钥的生成方式与所述加密服务器根据所述第二主密钥和所述应用服务器的应用标识生成第四应用密钥的生成方式一致,以使得所述第三应用密钥与所述第四应用密钥的值相同;或者,
第三加密单元,用于根据所述第一主密钥对包括所述应用标识的信息加密以生成第二加密值,所述第二加密值为所述加密信息,在将所述用户标识和所述第二加密值传递给所述轻应用之后,所述轻应用通过所述应用服务器将所述用户标识和所述第二加密值传递给所述加密服务器,以使得所述加密服务器根据所述用户标识获取所述第二主密钥,再根据所述第二主密钥和所述应用服务器的应用标识验证所述第二加密值。
20.根据权利要求19所述的装置,其特征在于,所述第三加密单元包括:
应用密钥生成子单元,用于根据所述第一主密钥生成第五应用密钥,其中,所述第五应用密钥的生成方式与所述加密服务器根据所述第二主密钥生成第六应用密钥的生成方式一致,以使得所述第五应用密钥与所述第六应用密钥的值相同;
验证信息生成子单元,用于根据所述应用标识生成第一验证信息,其中,所述第一验证信息的生成方式与所述加密服务器生成第二验证信息的生成方式一致,以使得所述第一验证信息与所述第二验证信息的值相同;
加密信息生成子单元,用于根据所述第五应用密钥对所述第一验证信息加密生成所述第二加密值。
21.根据权利要求17所述的装置,其特征在于,所述装置还包括:
应用标识获取模块,用于获取所述应用标识,所述应用标识与所述轻应用的代码包相关联;
注入模块,用于将所述应用标识注入到所述轻应用中,以使得所述轻应用发送的所述调用请求中包括所述应用标识。
22.根据权利要求21所述的装置,其特征在于,所述应用标识获取模块包括:
第一标识获取单元,用于从下载请求中获取所述应用标识,所述下载请求为向所述发布服务器请求下载所述代码包的下载请求,所述下载请求中包括所述应用标识,所述应用标识在所述发布服务器上用于关联所述代码包;或者,
第二标识获取单元,用于从配置文件中获取所述应用标识,所述配置文件为所述代码包中包括的配置文件,所述配置文件中设置有所述应用标识,所述应用标识在所述发布服务器发布所述代码包时,已经确定所述配置文件中设置的所述应用标识确实是所述轻应用的应用标识。
23.根据权利要求21所述的装置,其特征在于,所述注入模块包括:
第一注入单元,用于将所述应用标识对全局变量进行赋值,以使得当所述轻应用在生成所述调用请求时,通过获取所述全局变量的值以获取到所述应用标识,所述全局变量在所述轻应用的实例中用于定义所述应用标识;或者,
第二注入单元,用于将所述应用标识注入到所述轻应用的调用函数中相应的调用参数,所述调用函数用于执行发送所述调用请求。
24.根据权利要求17所述的装置,其特征在于,所述装置还包括授权模块,所述授权模块用于确定所述应用标识是否为经过授权的应用标识;若是,则执行所述加密模块;若否,则不执行所述加密模块。
25.根据权利要求24所述的装置,其特征在于,所述授权模块还包括:
标识发送单元,用于将所述应用标识发送给所述加密服务器,以使得所述加密服务器确定所述应用标识是否为经过授权的应用标识;
反馈接收单元,用于接收所述加密服务器反馈的信息;
授权确认单元,用于根据所述反馈的信息确认所述应用标识是否为经过授权;若所述反馈的信息为表示已经授权的信息,则确定所述应用标识为经过授权;否则,则确定所述应用标识没有经过授权。
26.一种智能设备,其特征在于,所述智能设备包括:存储器、处理器,所述处理器用于运行所述存储器所存储的程序,所述程序运行时执行包括权利要求1至16中任一项所述的方法。
27.一种存储介质,其特征在于,所述存储介质中存储有程序,所述程序用于实现包括权利要求1至16中任一项所述的方法。
CN201911003298.0A 2019-10-22 2019-10-22 一种为轻应用提供加密信息的方法、装置和智能设备 Active CN111901287B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911003298.0A CN111901287B (zh) 2019-10-22 2019-10-22 一种为轻应用提供加密信息的方法、装置和智能设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911003298.0A CN111901287B (zh) 2019-10-22 2019-10-22 一种为轻应用提供加密信息的方法、装置和智能设备

Publications (2)

Publication Number Publication Date
CN111901287A CN111901287A (zh) 2020-11-06
CN111901287B true CN111901287B (zh) 2022-12-23

Family

ID=73169615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911003298.0A Active CN111901287B (zh) 2019-10-22 2019-10-22 一种为轻应用提供加密信息的方法、装置和智能设备

Country Status (1)

Country Link
CN (1) CN111901287B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565236B (zh) * 2020-11-30 2023-08-01 广州酷狗计算机科技有限公司 信息鉴权方法、装置、计算机设备及存储介质
CN112328291A (zh) * 2020-12-11 2021-02-05 上海市民信箱信息服务有限公司 一种app轻应用市场软件版本管控的方法
CN112596812B (zh) * 2020-12-22 2024-05-31 深圳集智数字科技有限公司 一种操作请求的响应方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102946396A (zh) * 2012-11-26 2013-02-27 北京奇虎科技有限公司 用户代理装置、宿主网站服务器和用户认证方法
CN107786328A (zh) * 2017-09-01 2018-03-09 深圳市金立通信设备有限公司 一种生成密钥的方法、服务节点设备及计算机可读介质
CN108768928A (zh) * 2018-04-04 2018-11-06 厦门集微科技有限公司 一种信息获取方法、终端及服务器
CN109347835A (zh) * 2018-10-24 2019-02-15 苏州科达科技股份有限公司 信息传输方法、客户端、服务器以及计算机可读存储介质
CN109522726A (zh) * 2018-10-16 2019-03-26 平安万家医疗投资管理有限责任公司 小程序的鉴权方法、服务器及计算机可读存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010103800A1 (ja) * 2009-03-13 2010-09-16 株式会社オンサイト サーバ、端末、プログラムおよびサービス提供方法
CN115358746A (zh) * 2013-09-20 2022-11-18 维萨国际服务协会 包括消费者认证的安全远程支付交易处理
AU2015259162B2 (en) * 2014-05-13 2020-08-13 Visa International Service Association Master applet for secure remote payment processing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102946396A (zh) * 2012-11-26 2013-02-27 北京奇虎科技有限公司 用户代理装置、宿主网站服务器和用户认证方法
CN107786328A (zh) * 2017-09-01 2018-03-09 深圳市金立通信设备有限公司 一种生成密钥的方法、服务节点设备及计算机可读介质
CN108768928A (zh) * 2018-04-04 2018-11-06 厦门集微科技有限公司 一种信息获取方法、终端及服务器
CN109522726A (zh) * 2018-10-16 2019-03-26 平安万家医疗投资管理有限责任公司 小程序的鉴权方法、服务器及计算机可读存储介质
CN109347835A (zh) * 2018-10-24 2019-02-15 苏州科达科技股份有限公司 信息传输方法、客户端、服务器以及计算机可读存储介质

Also Published As

Publication number Publication date
CN111901287A (zh) 2020-11-06

Similar Documents

Publication Publication Date Title
CN107743133B (zh) 移动终端及其基于可信安全环境的访问控制方法和***
CN105095696B (zh) 对应用程序进行安全认证的方法、***及设备
US10574460B2 (en) Mechanism for achieving mutual identity verification via one-way application-device channels
US11676133B2 (en) Method and system for mobile cryptocurrency wallet connectivity
US11501294B2 (en) Method and device for providing and obtaining graphic code information, and terminal
KR101265873B1 (ko) 분산된 단일 서명 서비스 방법
CN111737366B (zh) 区块链的隐私数据处理方法、装置、设备以及存储介质
US8495383B2 (en) Method for the secure storing of program state data in an electronic device
US9177112B2 (en) Method and device for communicating digital content
TW202109320A (zh) 基於可信執行環境的應用程式啟動方法及裝置
CN111901287B (zh) 一种为轻应用提供加密信息的方法、装置和智能设备
CN102271124A (zh) 数据处理设备和数据处理方法
WO2013165651A1 (en) Method and system for activation
EP2908493B1 (en) Secure communication systems
CN115150821A (zh) 离线包的传输、存储方法及装置
CN109450643B (zh) Android平台上基于native服务实现的签名验签方法
CN116346341A (zh) 私钥保护和服务端访问方法、***、设备及存储介质
KR102209531B1 (ko) 클라우드 환경에서 인증서 및 개인키의 저장 방법 및 그 인증서 및 개인키를 다운로드 하는 방법
CN112131597A (zh) 一种生成加密信息的方法、装置和智能设备
CN115277082B (zh) 第三方应用的校验方法和装置
CN111917680A (zh) 一种加密***、方法、服务器及存储介质
Culnane et al. Formalising Application-Driven Authentication & Access-Control based on Users’ Companion Devices
Raju et al. Secure Messaging with in-app user defined schemes
WO2023073198A1 (en) Method to store data persistently by a software payload
CN116132075A (zh) 基于虚拟键盘的数据传输方法、装置、介质及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant