CN114117393A - 认证应用程序的方法和电子设备 - Google Patents
认证应用程序的方法和电子设备 Download PDFInfo
- Publication number
- CN114117393A CN114117393A CN202010873231.9A CN202010873231A CN114117393A CN 114117393 A CN114117393 A CN 114117393A CN 202010873231 A CN202010873231 A CN 202010873231A CN 114117393 A CN114117393 A CN 114117393A
- Authority
- CN
- China
- Prior art keywords
- application
- application program
- electronic device
- authentication credential
- credential information
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
- G06F21/445—Program or device authentication by mutual authentication, e.g. between devices or programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供了一种认证应用程序的方法和电子设备,该方法可以应用于第一电子设备,该第一电子设备可以包括第一应用程序,该方法可以包括接收第二电子设备发送的第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息,所述第一应用程序的预制认证凭据信息为通过所述第二电子设备的第二应用程序获取的。根据所述第一应用程序的应用标识信息获取所述第一应用程序安装时注册的***认证凭据信息。对所述第一应用程序的预制认证凭据信息和所述第一应用程序的***认证凭据信息进行校验,当校验通过时,允许所述第二应用程序与所述第一应用程序通信。本申请实施例的方法可以确保应用层的应用程序之间的安全可信通信,进而实现不同电子设备的应用程序之间的协同工作,该认证方法可以支持对***不同的电子设备的应用程序进行可信认证。
Description
技术领域
本申请涉及计算机技术,尤其涉及一种认证应用程序的方法和电子设备。
背景技术
随着智能手机、可穿戴设备等电子设备的大量普及应用,用户拥有多个电子设备的情况越来越多。例如,用户同时拥有智能手机和智能手表,智能手机主要用于提供通信服务,智能手表主要用于监测用户的日常活动数据。
不同的电子设备上的应用程序(Application,APP)可以完善电子设备的原始***的不足与个性化,使得电子设备的功能越来越强大,从而为用户提供更丰富的使用体验。应用程序可以是生活服务类的应用程序、即时通信类的应用程序、社交类的应用程序、音视频播放类的应用程序等。对于***,例如操作***,相同的两个电子设备上的应用程序,以两个电子设备为电子设备1和电子设备2进行举例说明。其中,电子设备1可以向电子设备2发送电子设备1的应用程序的包名和签名证书。电子设备2根据接收到的包名,从自身***中获取包名对应的签名证书,对接收到的签名证书和从自身***中获取的签名证书进行比对,当二者相同时,电子设备1的应用程序和电子设备2的应用程序之间可以互相通信,进而实现电子设备1的应用程序与电子设备2的应用程序协同工作,为用户带来更好的使用体验。
由于上述两个电子设备的***相同,签名证书体系相同,且两个电子设备的应用程序的包名相同,即两个电子设备的应用程序的属性相同,所以可以通过比对电子设备1的应用程序的签名证书和电子设备2的应用程序的签名证书是否相同,进行两个电子设备的应用程序之间的可信认证。然而,对于电子设备间不同属性的应用程序,例如,***不同的两个电子设备的应用程序,或者,两个电子设备的应用程序的包名不同,无法采用上述方式对不同的电子设备的应用程序进行可信认证。
发明内容
本申请提供一种认证应用程序的方法和电子设备,以实现不同的应用程序之间的可信认证,并且支持对***不同的电子设备的应用程序进行可信认证,从而实现不同的应用程序之间的协同工作。
第一方面,本申请实施例提供一种认证应用程序的方法,该方法应用于第一电子设备,该第一电子设备包括第一应用程序,该方法可以包括:接收第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,该第一应用程序的预制认证凭据信息为通过该第二电子设备的第二应用程序获取的。根据该第一应用程序的应用标识信息获取该第一应用程序安装时注册的***认证凭据信息。对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,当校验通过时,允许该第二应用程序与该第一应用程序通信。
本实现方式,通过校验第一应用程序的预制认证凭据信息和第一应用程序的***认证凭据信息,对第一应用程序的身份进行有效验证,当校验通过时,实现第二电子设备的第二应用程序对第一电子设备的第一应用程序的可信认证,允许该第二应用程序与该第一应用程序通信。本实现方式可以确保应用层的应用程序之间的安全可信通信,保证了机密信息的可信传输,进而实现不同电子设备的应用程序之间的协同工作。由于本实现方式通过校验第二应用程序获取的第一应用程序的预制认证凭据信息和第一应用程序安装时注册的***认证凭据信息,对第一应用程序的身份进行有效验证,这种认证方式可以支持对***不同的电子设备的应用程序进行可信认证,也可以支持对包名不同的应用程序进行可信认证。
一种可能的设计中,允许该第二应用程序与该第一应用程序通信,可以包括:允许该第二应用程序向该第一应用程序发送文件或数据。
本实现方式,对第一应用程序的身份进行有效验证,在校验通过时,确定第一应用程序对于第二应用程序而言是可信的,允许该第二应用程序向该第一应用程序发送文件或数据。
一种可能的设计中,该方法还可以包括:接收该第二电子设备发送的该第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息。根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,该第二应用程序的预制认证凭据信息为该第一电子设备通过该第一应用程序获取的。对该第二应用程序的***认证凭据信息和该第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许该第一应用程序与该第二应用程序通信。
本实现方式,通过校验第二应用程序的预制认证凭据信息和第二应用程序的***认证凭据信息,对第二应用程序的身份进行有效验证,当校验通过时,实现第一电子设备的第一应用程序对第二电子设备的第二应用程序的可信认证,允许该第一应用程序与该第二应用程序通信。本实现方式可以确保应用层的应用程序之间的安全可信通信,保证了机密信息的可信传输,进而实现不同电子设备的应用程序之间的协同工作。由于本实施例通过校验第一应用程序获取的第二应用程序的预制认证凭据信息和第二应用程序的***认证凭据信息,对第二应用程序的身份进行有效验证,这种认证方式可以支持对***不同的电子设备的应用程序进行可信认证,也可以支持对包名不同的应用程序进行可信认证。
在确定第二电子设备的第二应用程序可信,且第一电子设备的第一应用程序可信时,可以实现应用层的点对点双向通信。
一种可能的设计中,允许该第一应用程序与该第二应用程序通信,可以包括:允许该第一应用程序向该第二应用程序发送文件或数据。
本实现方式,对第二应用程序的身份进行有效验证,在校验通过时,确定第二应用程序对于第一应用程序而言是可信的,允许该第一应用程序向该第二应用程序发送文件或数据,或者,允许该第一应用程序响应第二应用程序发送的请求,向第二应用程序发送文件或数据。
一种可能的设计中,该预制认证凭据信息可以包括预制认证指纹信息,或,预制域名和预制目录。
一种可能的设计中,该预制认证凭据信息包括预制认证指纹信息,对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,可以包括:比对该第一应用程序的预制认证指纹信息和该第一应用程序的***认证指纹信息是否相同,当相同时,则校验通过,当不同时,则校验不通过。
本实现方式,可以通过预制认证指纹信息,对第一应用程序的身份进行有效验证,以确保应用层的应用程序之间的安全可信通信。
一种可能的设计中,该预制认证凭据信息包括预制域名和预制目录,对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,可以包括:根据该第一应用程序的***域名和***目录获取该第一应用程序的统一资源定位符。判断该第一应用程序的统一资源定位符是否包括该第一应用程序的预制域名和预制目录。当该第一应用程序的统一资源定位符包括该第一应用程序的预制域名和预制目录,则校验通过,当该第一应用程序的统一资源定位符不包括该第一应用程序的预制域名和预制目录,则校验不通过。
本实现方式,可以通过预制域名和预制目录,对第一应用程序的身份进行有效验证,以确保应用层的应用程序之间的安全可信通信。例如,对于第一应用程序是部署在服务器侧的H5页面,可以采用本实现方式进行认证。
一种可能的设计中,该第一电子设备的***和该第二电子设备的***不同或者相同。
本实现方式,通过校验预制认证凭据信息和***认证凭据信息,对应用程序的身份进行有效验证,这种认证方式可以支持对***不同的电子设备的应用程序进行可信认证,也可以支持对***相同的电子设备的应用程序进行可信认证。
一种可能的设计中,该第一应用程序的包名和第二应用程序的包名不同或者相同。
本实现方式,通过校验预制认证凭据信息和***认证凭据信息,对应用程序的身份进行有效验证,这种认证方式可以支持对包名不同的电子设备的应用程序进行可信认证,也可以支持对包名相同的电子设备的应用程序进行可信认证。
一种可能的设计中,接收第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,可以包括:通过该第一电子设备的开放服务与该第二电子设备的开放服务之间的可信连接,接收该第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。
本实现方式,两个电子设备的应用程序不需要关注认证的过程,由开放服务提供连接通道和可信鉴权机制。本实施例可以实现应用层的点对点通信,应用层的两个应用程序并非是客户端的应用程序和服务端的应用程序之间,而是两个客户端的应用程序之间。
一种可能的设计中,根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,可以包括:通过该第一电子设备的开放服务与该第一应用程序之间的接口获取该第二应用程序的应用标识信息对应的预制认证凭据信息。
一种可能的设计中,该方法还可以包括:在校验通过之后,接收该第二电子设备发送的第二应用程序的提醒事件信息,该提醒事件信息用于同步至该第一应用程序。
本实施例,在可信认证之后,通过第一电子设备的第一应用程序和第二电子设备的第二应用程序的交互,实现不同电子设备的应用程序之间的实时同步提醒。
一种可能的设计中,该方法还可以包括:在校验通过之后,检测用户在第一应用程序的用户界面的操作,响应于该操作,向该第二电子设备的第二应用程序发送控制指令,该控制指令用于控制该第二应用程序的播放状态。
本实施例,在可信认证之后,通过第一电子设备的第一应用程序和第二电子设备的第二应用程序的交互,可以实现远距离控制,提升电子设备的使用灵活性。
一种可能的设计中,该方法还可以包括:在校验通过之后,向该第二电子设备发送该第一应用程序的导航提示信息,该导航提示信息用于同步至该第二应用程序。
本实施例,在可信认证之后,通过第一电子设备的第一应用程序和第二电子设备的第二应用程序之间的通信能力,实现实时协同体验。
第二方面,本申请实施例提供一种认证应用程序的方法,该方法应用于第二电子设备,该第二电子设备包括第二应用程序,该方法包括:通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。向该第一电子设备发送的该第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,该第一应用程序的预制认证凭据信息用于校验该第一应用程序。
一种可能的设计中,通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,可以包括:检测到用户在该第二应用程序的用户界面的操作。响应于该操作,通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。
本实现方式,基于用户操作,确定第二应用程序需要与第一应用程序通信,进而触发执行如上第二方面的认证应用程序的方法,以实现不同的应用程序之间的可信认证,从而实现不同的应用程序之间的协同工作。
一种可能的设计中,该方法还可以包括:向该第一电子设备发送该第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息,该第二应用程序的***认证凭据信息用于校验该第二应用程序。
第三方面,本申请实施例提供一种认证应用程序的方法,该方法应用于第一电子设备,该第一电子设备包括第一应用程序,该方法可以包括:接收第二电子设备发送的该第二电子设备的第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息。根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,该第二应用程序的预制认证凭据信息为该第一电子设备通过该第一应用程序获取的。对该第二应用程序的***认证凭据信息和该第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许该第一应用程序与该第二应用程序通信。
本实现方式,通过校验第二应用程序的预制认证凭据信息和第二应用程序的***认证凭据信息,对第二应用程序的身份进行有效验证,当校验通过时,实现第一电子设备的第一应用程序对第二电子设备的第二应用程序的可信认证,允许该第一应用程序与该第二应用程序通信。本实现方式可以确保应用层的应用程序之间的安全可信通信,保证了机密信息的可信传输,进而实现不同电子设备的应用程序之间的协同工作。由于本实施例通过校验第一应用程序获取的第二应用程序的预制认证凭据信息和第二应用程序的***认证凭据信息,对第二应用程序的身份进行有效验证,这种认证方式可以支持对***不同的电子设备的应用程序进行可信认证,也可以支持对包名不同的应用程序进行可信认证。
一种可能的设计中,允许该第一应用程序与该第二应用程序通信,可以包括:允许该第一应用程序向该第二应用程序发送文件或数据。
第四方面,本申请提供了一种装置,该装置包含在电子设备中,该装置具有实现上述第一方面及上述第一方面的可能实现方式中电子设备行为的功能,或者,该装置具有实现上述第二方面及上述第二方面的可能实现方式中电子设备行为的功能,或者,装置具有实现上述第三方面及上述第三方面的可能实现方式中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。例如,获取模块或单元、检测模块或单元、处理模块或单元等。
第五方面,本申请实施例提供一种电子设备,该电子设备作为第一电子设备,该第一电子设备包括:一个或多个处理器;一个或多个存储器;以及第一应用程序;其中,该一个或多个存储器用于存储一个或多个程序;该一个或多个处理器用于运行一个或多个程序,以实现以下动作:接收第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,该第一应用程序的预制认证凭据信息为通过该第二电子设备的第二应用程序获取的。根据该第一应用程序的应用标识信息获取该第一应用程序安装时注册的***认证凭据信息。对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,当校验通过时,允许该第二应用程序与该第一应用程序通信。
一种可能的设计中,允许该第二应用程序与该第一应用程序通信,可以包括:允许该第二应用程序向该第一应用程序发送文件或数据。
一种可能的设计中,还可以实现:接收该第二电子设备发送的该第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息。根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,该第二应用程序的预制认证凭据信息为该第一电子设备通过该第一应用程序获取的。对该第二应用程序的***认证凭据信息和该第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许该第一应用程序与该第二应用程序通信。
一种可能的设计中,允许该第一应用程序与该第二应用程序通信,可以包括:允许该第一应用程序向该第二应用程序发送文件或数据。
一种可能的设计中,该预制认证凭据信息包括预制认证指纹信息,或,预制域名和预制目录。
一种可能的设计中,该预制认证凭据信息包括预制认证指纹信息,对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,可以包括:比对该第一应用程序的预制认证指纹信息和该第一应用程序的***认证指纹信息是否相同,当相同时,则校验通过,当不同时,则校验不通过。
一种可能的设计中,该预制认证凭据信息包括预制域名和预制目录,对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,可以包括:根据该第一应用程序的***域名和***目录获取该第一应用程序的统一资源定位符。判断该第一应用程序的统一资源定位符是否包括该第一应用程序的预制域名和预制目录。当该第一应用程序的统一资源定位符包括该第一应用程序的预制域名和预制目录,则校验通过,当该第一应用程序的统一资源定位符不包括该第一应用程序的预制域名和预制目录,则校验不通过。
一种可能的设计中,该第一电子设备的***和该第二电子设备的***不同或者相同。
一种可能的设计中,该第一应用程序的包名和第二应用程序的包名不同或者相同。
一种可能的设计中,接收第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,可以包括:通过该第一电子设备的开放服务与该第二电子设备的开放服务之间的可信连接,接收该第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。
一种可能的设计中,根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,可以包括:通过该第一电子设备的开放服务与该第一应用程序之间的接口获取该第二应用程序的应用标识信息对应的预制认证凭据信息。
一种可能的设计中,还可以实现:在校验通过之后,接收该第二电子设备发送的第二应用程序的提醒事件信息,该提醒事件信息用于同步至该第一应用程序。
一种可能的设计中,还可以实现:在校验通过之后,检测用户在第一应用程序的用户界面的操作,响应于该操作,向该第二电子设备的第二应用程序发送控制指令,该控制指令用于控制该第二应用程序的播放状态。
一种可能的设计中,还可以实现:在校验通过之后,向该第二电子设备发送该第一应用程序的导航提示信息,该导航提示信息用于同步至该第二应用程序。
本申请第五方面、第五方面任一种可能的实现方式的有益效果可以参见第一方面、第一方面的可能实现方式的相关说明,此处不再赘述。
第六方面,本申请实施例提供一种电子设备,该电子设备作为第二电子设备,该第二电子设备包括:一个或多个处理器;一个或多个存储器;以及第二应用程序;其中,该一个或多个存储器用于存储一个或多个程序;该一个或多个处理器用于运行该一个或多个程序,以实现以下动作:通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。向该第一电子设备发送的该第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,该第一应用程序的预制认证凭据信息用于校验该第一应用程序。
一种可能的设计中,通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,可以包括:检测到用户在该第二应用程序的用户界面的操作。响应于该操作,通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。
一种可能的设计中,还可以实现:向该第一电子设备发送该第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息,该第二应用程序的***认证凭据信息用于校验该第二应用程序。
第七方面,本申请实施例提供一种电子设备,该电子设备作为第一电子设备,该第一电子设备包括:一个或多个处理器;一个或多个存储器;以及第一应用程序;其中,该一个或多个存储器用于存储一个或多个程序;该一个或多个处理器用于运行该一个或多个程序,以实现以下动作:接收第二电子设备发送的该第二电子设备的第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息。根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,该第二应用程序的预制认证凭据信息为该第一电子设备通过该第一应用程序获取的。对该第二应用程序的***认证凭据信息和该第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许该第一应用程序与该第二应用程序通信。
一种可能的设计中,允许该第一应用程序与该第二应用程序通信,可以包括:允许该第一应用程序向该第二应用程序发送文件或数据。
第八方面,本申请实施例提供一种认证应用程序的***,该***可以包括第一电子设备和第二电子设备,该第一电子设备包括第一应用程序,该第二电子设备包括第二应用程序,该第一电子设备用于执行如第一方面、或第一方面任一种可能的设计所述的方法,该第二电子设备用于执行如第二方面、或第二方面任一种可能的设计所述的方法。
第九方面,本申请实施例提供一种计算机可读存储介质,包括计算机程序,该计算机程序在计算机上被执行时,使得该计算机执行如第一方面、或第一方面任一种可能的设计所述的方法,或者,使得该计算机执行如第二方面、或第二方面任一种可能的设计所述的方法,或者,使得该计算机执行如第三方面、或第三方面任一种可能的设计所述的方法。
第十方面,本申请实施例提供一种芯片,其特征在于,包括处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行所述存储器中存储的计算机程序,以执行如第一方面、或第一方面任一种可能的设计所述的方法,或者,执行如第二方面、或第二方面任一种可能的设计所述的方法,或者执行如第三方面、或第三方面任一种可能的设计所述的方法。
第十一方面,本申请实施例提供本申请提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第一方面、或第一方面任一种可能的设计所述的方法,或者,执行上述第二方面、或第二方面任一种可能的设计所述的方法,或者执行上述第三方面、或第三方面任一种可能的设计所述的方法。
本申请实施例的认证应用程序的方法和电子设备,通过应用程序的预制认证凭据信息和应用程序安装时注册的***认证凭据信息,对应用程序的身份进行有效验证,以确保应用层的应用程序之间的安全可信通信,进而实现不同电子设备的应用程序之间的协同工作。
附图说明
图1为本申请实施例提供一种认证应用程序的方法的示意图;
图2为本申请实施例的一种电子设备的硬件结构示意图;
图3为本申请实施例的一种电子设备的软件结构示意图;
图4A为本申请实施例的一种应用场景的示意图;
图4B为本申请实施例的另一种应用场景的示意图;
图5为本申请实施例的一种认证应用程序的方法的流程图;
图6为本申请实施例的另一种认证应用程序的方法的流程图;
图7为本申请实施例的另一种认证应用程序的方法的流程图;
图8为本申请实施例的一种应用程序协同工作的示意图;
图9为本申请实施例的一种应用程序协同工作的示意图;
图10为本申请实施例的一种应用程序协同工作的示意图;
图11为本申请实施例的一种电子设备的结构示意图。
具体实施方式
本申请实施例涉及的术语“第一”、“第二”等仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A 和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
对于相同***的两个电子设备的相同属性的应用程序,两个电子设备的***相同,签名证书体系相同,且两个电子设备的应用程序的包名相同,可以通过比对两个电子设备的应用程序的签名证书是否相同,进行两个电子设备的应用程序之间的可信认证。与相同属性的电子设备的应用程序的可信认证方式不同,本申请实施例提供的认证应用程序的方法,可以实现不同***的电子设备的应用程序之间的可信认证,或者实现相同***的电子设备的不同属性的应用程序之间的可信认证。示例性的,不同属性的应用程序指包名不同的应用程序,或者,签名证书不同的应用程序。
本申请实施例提供的方案中,不同电子设备之间建立有可信连接,例如,蓝牙连接,一个电子设备可以通过自身的应用程序内预制的其他应用程序的认证凭据信息,对其他应用程序的身份进行有效验证,该其他应用程序可以是另一个电子设备的应用程序,以确保应用层的应用程序之间的安全可信通信,进而实现不同电子设备的应用程序之间的协同工作。该认证过程在需要协同工作的应用程序所在的电子设备上进行,不需要第三方服务器参与,可以避免用户数据或者保密信息泄露。
图1为本申请实施例提供一种认证应用程序的方法的示意图。如图1所示,电子设备 1和电子设备2可以安装应用程序,例如,任意第三方开发者所发布的应用程序。以电子设备1安装有应用程序1,电子设备2安装有应用程序2为例进行举例说明。其中,电子设备1的***和电子设备2的***可以相同也可以不同。电子设备1的应用程序1和电子设备2的应用程序2的属性可以相同也可以不同,例如,电子设备1的应用程序1和电子设备2的应用程序2的包名可以相同也可以不同。电子设备1的开放服务1和电子设备2 的开放服务2之间建立有可信连接通道。可信连接可以包括但不限于蓝牙连接、WiFi连接等。换言之,电子设备1的开放服务1可以通过电子设备1的通信单元(例如下述图2 所示实施例的通信单元101)和电子设备2的通信单元,与电子设备2的开放服务2互通。
电子设备1的开放服务1可以为电子设备1的应用程序提供可信认证服务和通道管理服务,例如,可以为如图1的应用程序1提供可信认证服务和通道管理服务。可信认证服务包括以下至少一项:被其他电子设备的应用程序校验是否可信,或者,校验其他电子设备的应用程序是否可信。当可信认证服务包括被其他电子设备的应用程序校验是否可信,以及校验其他电子设备的应用程序是否可信时,即为双向认证。与电子设备1的开放服务1类似,电子设备2的开放服务2可以为电子设备2的应用程序提供可信认证服务和通道管理服务,例如,可以为如图1的应用程序2提供可信认证服务和通道管理服务。可信认证服务包括以下至少一项:被其他电子设备的应用程序校验是否可信,或者,校验其他电子设备的应用程序是否可信。
当电子设备1的应用程序1被电子设备2的应用程序2校验可信时,电子设备1的应用程序1可以接收电子设备2的应用程序2发送的消息,该消息可以携带文件或数据等。由此,基于应用程序2至应用程序1方向的可信认证,以及开放服务1和开放服务2之间的可信连接通道,向应用程序2至应用程序1方向提供可信的通信通道。
当电子设备1的应用程序1校验电子设备2的应用程序2可信时,电子设备1的应用程序1可以接收电子设备2的应用程序2发送的请求,并响应该请求,该请求可以是用于请求应用程序1反馈文件或数据等,该请求也可以是控制指令,用于控制应用程序1。由此,基于应用程序1至应用程序2方向的可信认证,以及开放服务1和开放服务2之间的可信连接通道,向应用程序1至应用程2方向提供可信的通信通道。
当电子设备1的应用程序1被电子设备2的应用程序2校验可信,且电子设备1的应用程序1校验电子设备2的应用程序2可信时,电子设备1的应用程序1与电子设备2的应用程序2之间可以双向通信。换言之,电子设备1的应用程序1可以接收电子设备2的应用程序2发送的消息,也可以接收电子设备2的应用程序2发送的请求,并响应该请求。由此,基于应用程序1和应用程序2之间的双向可信认证,以及开放服务1和开放服务2 之间的可信连接通道,向应用程序1和应用程序2提供可信的通信通道。
通过电子设备1的开放服务1和电子设备2的开放服务2,可以在两个电子设备上构建应用程序到应用程序的通信隧道,通过该通信隧道可以实现两个电子设备的应用程序之间的消息通信、数据传输等。消息可以是第三方开发者自定义的报文消息。
在校验可信后,电子设备1的应用程序1和电子设备2的应用程序2之间的可以协同工作。
需要说明的是,本申请实施例所涉及的开放服务可以是电子设备的应用层与硬件层之间的逻辑功能模块。以安卓***为例,开放服务可以是框架层中的一个逻辑功能模块。本申请实施例所涉及的开放服务(例如,上述开放服务1)可以向应用程序(例如,第三方开发者发布的应用程序)提供认证接口,该认证接口用于传输应用程序内预制的其他电子设备的应用程序的认证凭据信息,在认证可信后,本申请实施例所涉及的开放服务(例如,上述开放服务1)还可以向应用程序(例如,第三方开发者发布的应用程序)提供通信接口,该通信接口用于传输消息或数据,使得应用程序快速便捷地接入其他电子设备(例如,上述电子设备2),为开发者提供增值创新空间,为消费者打通全场景体验。例如,将电子设备1的第三方应用与服务延展到电子设备2,也将电子设备2的第三方应用与服务延展到手机,实现电子设备1和电子设备2的能力共享。给消费者提供更丰富的应用场景、更便捷的业务体验、更流畅的人机交互,为第三方应用与服务带来更多的流量,创造更多的新业务、新交互、新体验。示例性的,电子设备1可以是智能手表,电子设备2可以是智能手机。
其中,对消费者而言,开放服务在两个电子设备之间建立快速通道,把两个电子设备的硬件资源、***能力、服务生态快速融合在一起,让用户感觉所有设备像一个虚拟超级设备。对应用与服务提供方而言,一个电子设备的第三方应用程序与另一个电子设备上对应的第三方应用程序进行交互通信,实现无缝的交互体验。对应用程序的开发者(例如,上述第三方开发者)而言,开放服务使得应用程序能够快速便捷接入电子设备,实现用户与开发者的良性互动,降低开发者开发及维护推广成本。
在一些实施例中,开放服务还可以提供设备连接管理服务和状态监控服务,例如,设备连接管理服务用于获取已配对且处于连接状态的电子设备列表,状态监控服务用于监控电子设备的连接状态。
本申请实施例的开放服务也可以称为穿戴引擎(wear engine)服务或协同工作服务,当然可以理解的,还可以是其他名称,本申请实施例不以此作为限制。
对于电子设备的开放服务通过本申请实施例的认证应用程序的方法,提供可信认证服务的具体解释说明,可以参见下述实施例的解释说明。
首先对本申请实施例中的部分用语进行解释说明,以便于理解本申请实施例的认证应用程序的方法。
应用程序:包括浏览器或者提供各种功能服务的应用程序(Application,APP)。例如,生活服务类的应用程序、即时通信类的应用程序、社交类的应用程序、音视频播放类的应用程序等。
应用标识信息:用于标识应用程序的标识信息。例如,应用程序的包名等。一个应用程序可以对应一个应用标识信息。
认证凭据信息:用于校验应用程序是否可信或合法或安全,以在应用程序可信或合法或安全时,与该应用程序进行通信。以认证凭据信息的来源进行划分,认证凭据信息可以分为两类,即应用层的认证凭据信息和***层的认证凭据信息。应用层的认证凭据信息来源于应用程序。例如,应用层的认证凭据信息可以是应用程序内预制的,也可以是通过应用程序从服务器获取的。***层的认证凭据信息来源于应用程序所在电子设备的***层。认证凭证信息可以是认证指纹信息,或者,也可以是域名和目录,当然认证凭证信息还可以是其他信息,本申请实施例不一一举例说明。
需要说明的是,应用层的认证凭据信息也可以称为预制认证凭据信息。***层的认证凭据信息是应用程序安装时注册的***认证凭据信息。
文件,指以存储器为载体存储在电子设备上的信息集合。文件可以是文本文档、图片、音视频、可执行程序等等。
数据,包括但不限于个人数据(例如用户的步数、睡眠、心率等)、应用程序的指令、应用程序的状态信息等数据。示例性的,数据可以以数据结构的形式传输。
本申请实施例的电子设备,为一种具有操作***(也称***)的设备。电子设备包括一个或多个如上所述的应用程序。本申请实施例的电子设备可以是手机(mobilephone)、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(Virtual Reality,VR)终端设备、增强现实(Augmented Reality,AR)终端设备、工业控制(industrial control)中的终端设备、辅助驾驶的终端设备、无人驾驶(self driving)中的终端设备、远程手术(remotemedical surgery)中的终端设备、智能电网(smart grid)中的终端设备、运输安全(transportation safety)中的终端设备、智慧城市(smart city)中的终端设备、智慧家庭(smart home)中的终端设备、智能手表、智能手环,智能眼镜,以及其他运动配件或可穿戴设备等等。例如,智慧家庭(smart home)中的终端设备可以是智能电视、智能音箱等智能家电。
下面说明本申请实施例可以应用的场景,图2示出了本申请实施例可以应用的一种可能的电子设备结构图。参阅图2所示,该电子设备100包括:通信单元101、处理器102、存储器103、显示单元104、输入单元105、音频电路106、传感器107、摄像头108,以及定位模块109等部件。下面结合图2对该电子设备100的各个构成部件进行具体的介绍。
通信单元101用于实现电子设备100与其他电子设备的数据通信。可选的,该通信单元101中可以包括无线保真(wireless fidelity,WiFi)模块1011和/或蓝牙(bluetooth)模块1012。
蓝牙无线技术和WiFi技术均属于短距离无线传输技术,该电子设备100通过WiFi模块1011可以连接接入点(access point,AP),从而实现数据网络的访问,以及通过该 AP与连接该AP其他的电子设备或配件(如远端的摄像装置)通信。该电子设备100通过蓝牙模块1012直接与其他电子设备或配件建立连接。比如在本申请实施例中,电子设备100可以通过通信单元101接收其他电子设备发送的消息或请求,例如,电子设备100 为智能手机,其他设备为智能手表等。
该通信单元101中还可以包含射频(radio frequency,RF)电路。例如,当该电子设备100为智能手机时,该电子设备100可以通过该RF电路与基站建立无线连接,通过移动通信***实现通话或数据网络的访问。
该电子设备100还可以包括通信接口,用于与其他设备实现物理连接。该通信接口可以与该其他电子设备的通信接口通过电缆连接,实现该电子设备100和其他电子设备之间的数据传输。
该存储器103可用于存储软件程序以及数据。该处理器102通过运行存储在该存储器 103的软件程序以及数据,从而执行该电子设备100的各种功能应用以及数据处理。在本申请实施例中,该软件程序可以为运动健康程序、音视频播放程序等。
该存储器103可以主要包括存储程序区和存储数据区。其中,存储程序区可存储***、各种应用程序等;存储数据区可存储用户输入或者该电子设备100在运行软件程序过程中创建的数据等。此外,该存储器103可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。例如,在本申请实施例中,运动健康程序、音视频播放程序等可以存储在存储程序区中。
该输入单元105可用于接收用户输入的字符信息以及信号。可选的,输入单元105可包括触控面板1051以及其他输入设备(例如功能键)。其中,该触控面板1051,也称为触摸屏,可收集用户在其上或附近的触摸操作,生成相应的触摸信息发送给处理器102,以使处理器102执行该触摸信息对应的指令。触控面板1051可以采用电阻式、电容式、红外线以及表面声波等多种类型实现。例如,在本申请实施例中,用户可以通过电子设备 100的触控面板1051控制其他电子设备的应用程序。
该显示单元104用于呈现用户界面,实现人机交互。例如,该显示单元104可以显示由用户输入的信息,或提供给用户的信息,以及该电子设备100的各种菜单、各个APP、浏览器的界面等内容。
该显示单元104可以包括显示面板1041,所述显示面板1041可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置。
需要说明的是,该触控面板1051可覆盖该显示面板1041,虽然在图2中,该触控面板1051与该显示面板1041是作为两个独立的部件来实现该电子设备100的输入和输入功能,但是在本申请实施例中,可以将该触控面板1051与该显示面板1041集成(即触摸显示屏)而实现该电子设备100的输入和输出功能。
该处理器102是该电子设备100的控制中心,利用各种接口和线路连接各个部件,通过运行或执行存储在该存储器103内的软件程序和/或模块,以及调用存储在该存储器103 内的数据,执行该电子设备100的各种功能和处理数据,从而实现基于该电子端设备100 的多种业务。例如,电子设备100中有应用程序1,该电子设备100的处理器102通过校验其他电子设备的应用程序2中预制的应用程序1的应用层的认证凭据信息,与电子设备 100中的应用程序1的***层的认证凭据信息,当校验通过时,即应用程序2校验应用程序1可信,应用程序2可以向应用程序1发送消息,以实现协同工作。
可选的,该处理器102可包括一个或多个处理单元。该处理器102可集成应用处理器和调制解调处理器,其中,应用处理器主要处理***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到该处理器102中。
该音频电路106(包括扬声器1061,麦克风1062)可提供用户与该电子设备100之间的音频接口。音频电路106可将接收到的音频数据转换后的电信号,传输到该扬声器 1061,由该扬声器1061转换为声音信号输出。另一方面,该麦克风1062将收集的声音信号转换为电信号,由该音频电路106接收后转换为音频数据,以进行传输或存储等进一步处理。
该电子设备100还可以包括一种或多种传感器107,比如光传感器、运动传感器、超声波传感器以及其他传感器。例如,该电子设备100可以根据该传感器107采集的用户运动数据,确定用户输入的控制指令,从而响应该控制指令。
该电子设备100内部还可以包括摄像头108,以采集图像。当然,该电子设备100中也可以不包含摄像头108。例如,该电子设备100可以为不包含摄像头的智能手表或智能手环。
可选的,该电子设备100中还可以包含定位模块109,该定位模块可以测量用户的地理位置数据。该定位模块109可以为全球定位***(global position system,GPS)模块或北斗模块等,本申请实施例这里不做限定。
可以理解的,图2中示出的终端设备的结构并不构成对电子设备的限定,本申请实施例提供的电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
以搭载***的电子设备100为例,如图3所示,电子设备100从逻辑上可划分为硬件层21、***层41,以及应用层31。硬件层21包括如上所述的通信单元101、处理器102、存储器103、显示单元104、输入单元105、音频电路106、传感器107、摄像头108,以及定位模块109等硬件资源。应用层31包括一个或多个应用程序,应用程序可以为社交类应用、电子商务类应用、浏览器等任意类型的应用程序。***41作为硬件层21和应用层31之间的软件中间件,是管理和控制硬件与软件资源的计算机程序。
在一个实施例中,***层41包括内核411,硬件抽象层(hardware abstractionlayer, HAL)412、库和运行时(libraries and runtime)413以及框架(framework)414。其中,内核411用于提供底层***组件和服务,例如:电源管理、内存管理、文件***管理、线程管理、硬件驱动程序等;硬件驱动程序包括Wi-Fi驱动、传感器驱动、定位模块驱动等。硬件抽象层412是对内核驱动程序的封装,向框架414提供接口,屏蔽低层的实现细节。硬件抽象层412运行在用户空间,而内核驱动程序运行在内核空间。
库和运行时413也叫做运行时库,它为可执行程序在运行时提供所需要的库文件和执行环境。
框架414用于为应用层31中的应用程序提供各种基础的公共组件和服务,比如窗口管理、位置管理、开放服务4141等等。
一种示例,本申请实施例的开放服务可以位于框架414中,为电子设备100的应用层 31中的应用程序提供可信认证服务和通道管理服务。另一种示例,本申请实施例的开放服务可以位于应用层31中,例如,如图3的虚线所示,开放服务位于一个应用程序内,为电子设备100的应用层31中的应用程序提供可信认证服务和通道管理服务,应用程31 中的其他第三方开放者发布的应用程序均可以由该开放服务提供可信认证服务和通道管理服务。
以上描述的***层41的各个组件的功能均可以由处理器102执行存储器103中存储的程序来实现。
上述电子设备可以执行本申请实施例的认证应用程序的方法,以在认证通过时,接收并响应其他电子设备的应用程序发送的消息或请求中至少一项。
一种示例,图4A示出了本申请实施例可以应用的一种场景的示意图。参阅图4A所示,该应用场景包括电子设备31和电子设备32,电子设备31上有应用程序1,电子设备32上有应用程序2,例如,应用程序1和应用程序2为视频应用。在电子设备32的应用程序2作为发送端,电子设备31的应用程序1作为接收端时,电子设备32的应用程序2 可以校验电子设备31的应用程序1是否可信,电子设备31的应用程序1可以校验电子设备32的应用程序2是否可信,以确保应用层的两个应用程序之间的安全可信通信,进而实现不同电子设备的应用程序之间的协同工作。
图4B示出了本申请实施例可以应用的另一种场景的示意图。参阅图4B所示,该应用场景包括电子设备31、电子设备32和电子设备33,电子设备31上有应用程序1,电子设备32上有应用程序2,电子设备33上有应用程序3。在电子设备32的应用程序2作为发送端,电子设备31的应用程序1和电子设备33的应用程序3作为接收端时,电子设备32的应用程序2可以校验电子设备31的应用程序1和电子设备33的应用程序3是否可信,电子设备31的应用程序1可以校验电子设备32的应用程序2是否可信,电子设备33的应用程序3可以校验电子设备32的应用程序2是否可信,以确保应用层的三个应用程序之间的安全可信通信,进而实现不同电子设备的应用程序之间的协同工作。
图4A和图4B中任一电子设备均可以有如图1所示的开放服务,每个电子设备的开放服务可以向自身的一个或多个应用程序提供可信认证服务和通道管理服务。
需要说明的是,上述应用场景以两个和三个电子设备的应用程序作为举例说明,本申请实施例的认证应用程序的方法还可以应用于更多电子设备协同工作的应用场景,此处不一一举例说明。
下面采用具体的实施例对本申请实施例的认证应用程序的方法进行解释说明。示例性的,本申请实施例以两个电子设备的应用程序为例进行举例说明。
图5为本申请实施例的一种认证应用程序的方法的流程图,如图5所示,本实施例以电子设备31和电子设备32为例进行举例说明,电子设备31和电子设备32之间建立有可信连接,任意两个电子设备之间均可以通过本申请实施例的认证应用程序的方法,实现电子设备32的应用程序对电子设备31的应用程序的可信认证。本实施例以电子设备31包括开放服务1和应用程序1,电子设备32包括开放服务2和应用程序2为例进行举例说明。本实施例的方法可以包括:
步骤401、应用程序2向开放服务2调用通信指令,通信指令携带应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息。
在电子设备32的应用程序2需要向电子设备31的应用程序1发送消息时,或者,在电子设备32与电子设备31之间的可信连接建立完成时,应用程序2可以向开放服务2调用通信指令,通信指令中携带应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息。电子设备32的应用程序2中预制一个或多个应用程序的应用标识信息和与应用标识信息对应的应用层的认证凭据信息,其中包括应用程序1的应用标识信息和应用程序 1的应用层的认证凭据信息。电子设备32的应用程序2中预制的多个应用程序的应用标识信息,可以是多个电子设备的应用程序的应用标识信息,或者,可以是一个电子设备的多个应用程序的应用标识信息。应用标识信息可以用于区分不同的应用程序,其具体解释说明可以参见前述部分用语的解释说明。
需要说明的是,电子设备32的应用程序2中预制一个或多个应用程序的应用标识信息和与应用标识信息对应的应用层的认证凭据信息,也可以位于服务器中,由电子设备32通过应用程序2从服务器获取需要认证的应用程序的应用层的认证凭据信息。
在一些实施例中,电子设备32的应用程序2中可以预制一个应用程序的应用层的认证凭据信息,这个应用程序可以与应用程序2具有相同的应用标识信息的应用程序,换言之,应用程序1的应用标识信息与应用程序2的应用标识信息相同,在应用程序2向开放服务2调用通信指令时,该通信指令可以不携带应用程序1的应用标识信息,而携带应用程序1的应用层的认证凭据信息。
本实施例的应用程序1和应用程序2可以是相同应用标识信息但分布于不同电子设备上的应用程序,也可以是不同应用标识信息的应用程序。
电子设备31和电子设备32的***可以相同,也可以不同,本申请实施例对此不作具体限定。电子设备31和电子设备32的签名证书体系可以相同,也可以不同,本申请实施例对此不作具体限定。
可选的,电子设备32还可以连接除电子设备31之外的其他电子设备,即连接多个电子设备,该通信指令还可以携带设备名信息,该设备名信息用于开放服务2基于该设备名信息,将接收到的应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息发送至对应的电子设备的开放服务。
应用程序2可以调用开放服务2与应用程序2之间的接口,以传递通信指令。该通信指令可以包括认证指令,认证指令可以携带应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息,以使得开放服务2和开放服务1认证应用程序1是否可信。
可选的,在一些实施例中,上述通信指令还可以携带电子设备32的应用程序2需要向电子设备31的应用程序1发送的消息。
步骤402、开放服务2向开放服务1发送应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息。
开放服务2通过开放服务2与应用程序2之间的接口接收上述应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息。由于电子设备31和电子设备32之间建立有可信连接,所以电子设备32的开放服务2与电子设备31的开放服务1之间建立有可信连接,二者互通。开放服务2将接收到的应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息传递给开放服务1,以便校验应用程序1是否可信。
步骤403、开放服务1根据应用程序1的应用标识信息获取应用程序1的***层的认证凭据信息。
开放服务1从***中获取与应用程序1的应用标识信息对应的***层的认证凭据信息,即应用程序1的***层的认证凭据信息。
步骤404、开放服务1对应用程序1的应用层的认证凭据信息和应用程序1的***层的认证凭据信息进行校验。
开放服务1可以对应用程序1的应用层的认证凭据信息和应用程序1的***层的认证凭据信息进行校验,以确定应用程序1是否可信。当校验通过时,电子设备32的应用程序2确定电子设备31的应用程序1可信,可以通过执行下述步骤405,实现应用程序2 至应用程序1方向的通信。当校验不通过时,电子设备32的应用程序2确定电子设备31 的应用程序1不可信,电子设备32的应用程序2不会发送消息给电子设备31的应用程序 1。
一种校验方式可以为,认证凭据信息为认证指纹信息,比对应用程序1的应用层的认认证指纹信息和应用程序1的***层的认证指纹信息是否相同,当相同时,校验通过,当不同时,校验不通过。
另一种校验方式可以为,认证凭据信息为域名和目录,判断应用程序1的统一资源定位符(uniform resource locator,URL),是否包括应用程序1的应用层的域名和目录,当包括时,校验通过,当不包括时,校验不通过。该应用程序1的***层的URL可以作为应用程序1的***层的认证凭据信息。
步骤405、当校验通过时,应用程序2可向应用程序1发送文件或数据。
一种可实现方式,当校验通过时,开放服务1向开放服务2返回响应消息,该响应消息用于指示校验通过,开放服务2将该响应消息发送给应用程序2,应用程序2基于该响应消息,向开放服务2发送消息,开放服务2向开放服务1发送消息,开放服务1向应用程序1发送消息,从而实现应用程序2至应用程序1方向的通信。
另一种可实现方式,在步骤401中还携带有应用程序2发送给应用程序1的消息。当校验通过时,开放服务1向应用程序1发送该消息,应用程序1向开放服务1反馈接收该消息的结果,例如,接收成功或失败等。开放服务1向开放服务2反馈接收该消息的结果,开放服务2向应用程序2反馈接收该消息的结果,从而实现应用程序2至应用程序1方向的通信。
本实施例的消息可以是文件或数据等。
本实施例中,两个电子设备的应用程序不需要关注认证的过程,由开放服务提供连接通道和可信鉴权机制。本实施例可以实现应用层的点对点通信,应用层的两个应用程序并非是客户端的应用程序和服务端的应用程序之间,而是两个客户端的应用程序之间。举例而言,电子设备31和电子设备32为近场的两个电子设备,电子设备31的音视频播放类的应用程序和电子设备32的音视频播放类的应用程序,可以通过本申请实施例的认证应用程序的方式,进行可信认证,进而实现应用层的点对点通信。
本实施例,通过校验电子设备32的应用程序2内预制的应用程序1的应用层的认证凭据信息和应用程序1的***层的认证凭据信息,对应用程序1的身份进行有效验证,当校验通过时,实现电子设备32的应用程序2对电子设备31的应用程序1的可信认证,通过开放服务2和开放服务1提供应用程序2至应用程序1方向的通信,以确保应用层的应用程序之间的安全可信通信,保证了机密信息的可信传输,进而实现不同电子设备的应用程序之间的协同工作。由于本实施例通过校验应用程序2内预制的应用程序1的应用层的认证凭据信息和应用程序1的***层的认证凭据信息,对应用程序1的身份进行有效验证,这种认证方式可以支持对***不同的电子设备的应用程序进行可信认证。
图6为本申请实施例的另一种认证应用程序的方法的流程图,如图6所示,本实施例与图5所示实施例的区别在于,实现电子设备31的应用程序对电子设备32的应用程序的可信认证。本实施例的方法可以包括:
步骤501、应用程序2向开放服务2调用通信指令,通信指令携带应用程序1的应用标识信息。
在电子设备32的应用程序2需要向电子设备31的应用程序1发送请求时,或者,在电子设备32与电子设备31之间的可信连接建立完成时,应用程序2可以向开放服务2调用通信指令,通信指令中携带应用程序1的应用标识信息,该应用程序1的应用标识信息用于指示应用程序2发送请求的对象。
本实施例的应用程序1和应用程序2可以是相同应用标识信息但分布于不同电子设备上的应用程序,也可以是不同应用标识信息的应用程序。当应用程序1和应用程序2是相同应用标识信息但分布于不同电子设备上的应用程序时,本实施例的通信指令也可以不携带应用程序1的应用标识信息,该通信指令用于指示应用程序2需要向电子设备31的应用程序1发送请求。电子设备31和电子设备32的***可以相同,也可以不同,本申请实施例对此不作具体限定。电子设备31和电子设备32的签名证书体系可以相同,也可以不同,本申请实施例对此不作具体限定。
可选的,电子设备32还可以连接除电子设备31之外的其他电子设备,即连接多个电子设备,该通信指令还可以携带设备名信息,该设备名信息用于开放服务2基于该设备名信息,将获取的应用程序2的应用标识信息和应用程序2的***层的认证凭据信息发送至对应的电子设备的开放服务。
应用程序2可以调用开放服务2与应用程序2之间的接口,以传递通信指令。该通信指令可以包括认证指令,认证指令可以携带应用程序1的应用标识信息,以指示应用程序 2需要向应用程序1发送请求。
可选的,在一些实施例中,上述通信指令还可以携带电子设备32的应用程序2需要向电子设备31的应用程序1发送的请求。
步骤502、开放服务2获取应用程序2的应用标识信息和应用程序2的***层的认证凭据信息。
开放服务2从***中获取与应用程序2的应用标识信息对应的***层的认证凭据信息,即应用程序2的***层的认证凭据信息。
步骤503、开放服务2向开放服务1发送应用程序2的应用标识信息和应用程序2的***层的认证凭据信息。
由于电子设备31和电子设备32之间建立有可信连接,所以电子设备32的开放服务2与电子设备31的开放服务1之间建立有可信连接,二者互通。开放服务2将获取的应用程序2的应用标识信息和应用程序2的***层的认证凭据信息传递给开放服务1,以便校验应用程序2是否可信。
步骤504、开放服务1向应用程序1请求应用程序2的应用层的认证凭据信息。
电子设备31的应用程序1中预制一个或多个应用程序的应用标识信息和与应用标识信息对应的应用层的认证凭据信息,其中包括应用程序2的应用标识信息和应用程序2的应用层的认证凭据信息。电子设备31的应用程序1中预制的多个应用程序的应用标识信息,可以是多个电子设备的应用程序的应用标识信息,或者,可以是一个电子设备的多个应用程序的应用标识信息。应用标识信息可以用于区分不同的应用程序,其具体解释说明可以参见前述部分用语的解释说明。
在一些实施例中,电子设备31的应用程序1中可以预制一个应用程序的应用层的认证凭据信息,这个应用程序可以与应用程序1具有相同的应用标识信息的应用程序,换言之,应用程序2的应用标识信息与应用程序1的应用标识信息相同,在开放服务1向应用程序1请求应用程序2的应用层的认证凭据信息时,可以不携带应用程序2的应用标识信息。
开放服务1可以通过开放服务1与应用程序1之间的接口,向应用程序1请求应用程序2的应用层的认证凭据信息。应用程序1可以通过该接口反馈应用程序2的应用层的认证凭据信息。
步骤505、应用程序1向开放服务1反馈应用程序2的应用层的认证凭据信息。
应用程序1通过应用程序1与开放服务1之间的接口将应用程序2的应用层的认证凭据信息传递给开放服务1。
步骤506、开放服务1对应用程序2的应用层的认证凭据信息和应用程序2的***层的认证凭据信息进行校验。
开放服务1可以对应用程序2的应用层的认证凭据信息和应用程序2的***层的认证凭据信息进行校验,以确定应用程序2是否可信。当校验通过时,电子设备31的应用程序1确定电子设备32的应用程序2可信,可以通过执行下述步骤407,实现应用程序1 至应用程序2方向的通信。当校验不通过时,电子设备31的应用程序1确定电子设备32 的应用程序2不可信,电子设备31的应用程序1不会响应电子设备32的应用程序2发送的请求,即不会向电子设备32的应用程序2发送的文件或数据等。
一种校验方式可以为,认证凭据信息为认证指纹信息,比对应用程序2的应用层的认认证指纹信息和应用程序2的***层的认证指纹信息是否相同,当相同时,校验通过,当不同时,校验不通过。
另一种校验方式可以为,认证凭据信息为域名和目录,判断应用程序2的统一资源定位符(uniform resource locator,URL),是否包括应用程序2的应用层的域名和目录,当包括时,校验通过,当不包括时,校验不通过。该应用程序2的***层的URL可以作为应用程序2的***层的认证凭据信息。
步骤507、当校验通过时,应用程序1可向应用程序2发送文件或数据。
一种可实现方式,当校验通过时,开放服务1向开放服务2返回响应消息,该响应消息用于指示校验通过,开放服务2将该响应消息发送给应用程序2,应用程序2基于该响应消息,向开放服务2发送请求,开放服务2向开放服务1发送请求,开放服务1向应用程序1发送请求,应用程序1响应该请求,向开放服务1反馈文件或数据,开放服务1向开放服务2反馈文件或数据,开放服务2向应用程序2反馈文件或数据,从而实现应用程序1至应用程序2方向的通信。
另一种可实现方式,在步骤501中还携带有应用程序2发送给应用程序1的请求。当校验通过时,开放服务1向应用程序1发送该请求,应用程序1响应该请求,向开放服务 1反馈文件或数据,开放服务1向开放服务2反馈文件或数据,开放服务2向应用程序2 反馈文件或数据,从而实现应用程序1至应用程序2方向的通信。
本实施例中,两个电子设备的应用程序不需要关注认证的过程,由开放服务提供连接通道和可信鉴权机制。本实施例可以实现应用层的点对点通信,应用层的两个应用程序并非是客户端的应用程序和服务端的应用程序之间,而是两个客户端的应用程序之间。举例而言,电子设备31和电子设备32为近场的两个电子设备,电子设备31的音视频播放类的应用程序和电子设备32的音视频播放类的应用程序,可以通过本申请实施例的认证应用程序的方式,进行可信认证,进而实现应用层的点对点通信。
本实施例,通过校验电子设备31的应用程序1内预制的应用程序2的应用层的认证凭据信息和应用程序2的***层的认证凭据信息,对应用程序2的身份进行有效验证,当校验通过时,实现电子设备31的应用程序1对电子设备32的应用程序2的可信认证,通过开放服务2和开放服务1提供应用程序1至应用程序2方向的通信,以确保应用层的应用程序之间的安全可信通信,保证了机密信息的可信传输,进而实现不同电子设备的应用程序之间的协同工作。由于本实施例通过校验应用程序1内预制的应用程序2的应用层的认证凭据信息和应用程序2的***层的认证凭据信息,对应用程序2的身份进行有效验证,这种认证方式可以支持对***不同的电子设备的应用程序进行可信认证。
图7为本申请实施例的另一种认证应用程序的方法的流程图,如图7所示,本实施例将上述图5所示实施例和图6所示实施例结合,通过本申请实施例的认证应用程序的方法,实现电子设备32的应用程序和电子设备31的应用程序之间的双向可信认证。本实施例的方法可以包括:
步骤601、应用程序2向开放服务2调用通信指令,通信指令携带应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息。
其中,步骤601的解释说明可以参见图5所示实施例的步骤401的解释说明,此处不再赘述。
步骤602、开放服务2获取应用程序2的应用标识信息和应用程序2的***层的认证凭据信息。
其中,步骤601的解释说明可以参见图6所示实施例的步骤502的解释说明,此处不再赘述。
步骤603、开放服务2向开放服务1发送应用程序1的应用标识信息和应用程序1的应用层的认证凭据信息,以及应用程序2的应用标识信息和应用程序2的***层的认证凭据信息。
其中,步骤603的解释说明可以参见图5所示实施例的步骤402和图6所示实施例的步骤503的解释说明,此处不再赘述。
步骤604、开放服务1根据应用程序1的应用标识信息获取应用程序1的***层的认证凭据信息。
其中,步骤604的解释说明可以参见图5所示实施例的步骤403的解释说明,此处不再赘述。
步骤605、开放服务1向应用程序1请求应用程序2的应用层的认证凭据信息。
步骤606、应用程序1向开放服务1反馈应用程序2的应用层的认证凭据信息。
其中,步骤605至步骤606的解释说明可以参见图6所示实施例的步骤504和步骤505的解释说明,此处不再赘述。
步骤607、开放服务1对应用程序1的应用层的认证凭据信息和应用程序1的***层的认证凭据信息进行校验,对应用程序2的应用层的认证凭据信息和应用程序2的***层的认证凭据信息进行校验。
其中,步骤607的解释说明可以参见图5所示实施例的步骤404和图6所示实施例的步骤506的解释说明,此处不再赘述。
步骤608、当校验通过时,应用程序1与应用程序2可双向通信。
其中,步骤608的解释说明可以参见图5所示实施例的步骤405和图6所示实施例的步骤507的解释说明,此处不再赘述。
本实施例,通过校验电子设备32的应用程序2内预制的应用程序1的应用层的认证凭据信息和应用程序1的***层的认证凭据信息,对应用程序1的身份进行有效验证,校验电子设备31的应用程序1内预制的应用程序2的应用层的认证凭据信息和应用程序2 的***层的认证凭据信息,对应用程序2的身份进行有效验证,当校验通过时,实现电子设备32的应用程序2和电子设备31的应用程序1之间的双向可信认证,通过开放服务2 和开放服务1提供应用程序2和应用程序1之间的通信,以确保应用层的应用程序之间的安全可信通信,保证了机密信息的可信传输,进而实现不同电子设备的应用程序之间的协同工作。本实施例的认证方式可以支持对***不同的电子设备的应用程序进行可信认证。
需要说明的是,本申请实施例的上述任一认证应用程序的方法以电子设备32的应用程序2作为发送端,即业务发起端,进行举例说明,当电子设备31的应用程序1作为业务发起端时,也可以采用类似的方法步骤实现单向可信认证或双向可信认证,本申请实施例不一一举例说明。另外,本申请实施例的上述任一认证应用程序的方法,可以是在一个应用程序需要向另一个应用程序发送消息或请求时执行,即每次发送消息或请求时均执行上述任一认证应用程序的方法。本申请实施例的上述任一认证应用程序的方法,也可以是执行一次认证应用程序的方法之后,不同电子设备的应用层通过开放服务建立连接,之后不同电子设备的应用层之间可以持续发送消息或请求。例如,在一个应用程序需要向另一个应用程序发送消息或请求时执行,在预设时间间隔后,在一个应用程序需要向另一个应用程序发送消息或请求时再次执行,即相邻两次认证过程之间间隔预设时间。在一些实施例中,该预设时间可以与发送消息或请求的类型、大小、或频率有关,例如,消息频率越高,该预设时间的时长可以越长。本申请实施例的上述任一认证应用程序的方法,还可以是周期性执行。
下面采用几个具体应用场景示例,对本申请实施例的认证应用程序的方法进行解释说明。
图8为本申请实施例的一种应用程序协同工作的示意图。作为一种示例而非限定,如图8所示,手机的屏幕显示***显示了当前一种可能的界面内容,该界面内容为手机的主界面801。该主界面801可以显示多个应用程序,例如日历、时钟、图库、相机等。应理解,界面内容801还可以包括其他更多的应用程序,本申请实施例对此不作限定。
用户执行图8中的(a)图所示的对日历应用的点击操作,响应于该点击操作,手机进入日历应用的主界面802,日历应用的主界面802可以显示如图8中的(b)图所示的内容。该主界面802具体可以包括当前月份的月历、当前日期的标注、新建活动控件、月显示控件、周显示控件、日显示控件和菜单控件等。应理解,日历应用的主界面802还可以包括其他更多或更少的显示内容,本申请实施例对此不作限定。
用户执行图8中的(b)图所示的对新建活动控件的点击操作,响应于该点击操作,手机进入新建活动界面803。在该新建活动界面803中,包括活动内容的文本编辑控件8031、开始时间设置控件8032、结束时间设置控件8033、更多控件8034、放弃新建活动控件8035(如新建活动界面803中的“×”)和保存新建活动控件8036(如新建活动界面803中的“√”)。以新建活动为一个时间段的会议为例,用户可以在活动内容的文本编辑控件 8031中输入“会议”,在开始时间设置控件8032输入“2020年7月13日13:00”,在结束时间设置控件8033输入“14:00”。之后,用户执行图8中的(c)图所示的对保存新建活动控件8036的点击操作,响应于该点击操作,手机保存新建活动的记录,即“会议, 2020年7月13日13:00-14:00”,在会议开始时间到达或者将要到达时,手机显示会议提醒。一种可实现方式,响应于用户执行图8中的(c)图所示的对保存新建活动控件8036的点击操作,手机还将新建活动的记录同步至如图8中的(d)图所示的智能手表,由智能手表在在会议开始时间到达或者将要到达时,对用户进行会议提醒,从而实现腕上提醒,零距触达。在进行同步之前,可以通过本申请实施例的上述认证应用程序的方法对智能手表的日历应用进行身份验证,在认证可信后,同步新建活动的记录。例如,通过图5所示实施例的认证应用程序的方法对智能手表的日历应用进行身份验证,其中,本实施例的手机作为图5所示实施例的电子设备32,手机的日历应用作为应用程序2,智能手表作为电子设备31,智能手表的日历应用作为应用程序1。手机的日历应用中预制有智能手表的日历应用的认证凭据信息,手机的日历应用通过开放服务2和开放服务1校验智能手表的日历应用是否可信,当可信时,手机的日历应用通过开放服务2和开放服务1向智能手表的日历应用发送新建活动的记录。
可以理解的,在手机的日历应用中还可以设置其他提醒事件,例如,日程提醒,用药提醒、任务提醒等。日程提醒,用药提醒、任务提醒等数据,可以同步到智能手表的日历应用中,从而使得用户不用打开手机,也可以随时在智能手表上查看重要信息。
图9为本申请实施例的另一种应用程序协同工作的示意图。作为一种示例而非限定,如图9所示,其中,图9中的(a)图所示的电视的屏幕显示***显示了电视的视频应用播放的视频,如视频1,图9中的(b)图所示的智能手表的屏幕显示***显示了智能手表的视频应用的界面901,该界面901具体可以包括播放控制控件,例如暂停控件9011、上一个视频播放控件9012和下一个视频播放控件9013等。应理解,视频应用的界面901还可以包括其他更多或更少的显示内容,本申请实施例对此不作限定。一种可实现方式,本实施例的电视和智能手表可以通过本申请实施例的认证应用程序的方法,实现智能手表的视频应用和电视的视频应用的双向可信认证,例如,通过图7所示实施例的认证应用程序的方法对电视的视频应用和智能手表的视频应用进行身份验证,其中,本实施例的电视作为图7 所示实施例的电子设备32,电视的视频应用作为应用程序2,智能手表作为电子设备31,智能手表的视频应用作为应用程序1。电视的视频应用中预制有智能手表的视频应用的认证凭据信息,智能手表的视频应用中预制有电视的视频应用的认证凭据信息,通过开放服务2和开放服务1,电视的视频应用校验智能手表的视频应用是否可信,智能手表的视频应用校验电视的视频应用是否可信,当均可信时,智能手表的视频应用与电视的视频应用之间可以双向通信。例如,智能手表的视频应用通过开放服务2和开放服务1向电视的视频应用发送控制指令,如,暂停播放等。
需要说明的是,本实施例的双向可信认证的时机可以是在智能手表和电视建立可信连接后,也可以是电视启动视频应用后,还可以是其他时刻,本申请实施例不一一举例说明。
在视频播放过程中,用户执行图9中的(b)图所示的对暂停控件9011的点击操作,响应于该点击操作,智能手表的视频应用切换至界面902,并且智能手表的视频应用通过开放服务2和开放服务1向电视的视频应用发送暂停播放指令,电视的视频应用显示图9中的(d)图所示的界面903。在该界面903中,包括当前暂停画面、播放控件、下一个视频播放控件等。应理解,视频应用的界面903还可以包括其他更多或更少的显示内容,本申请实施例对此不作限定。
本实施例,通过智能手表在手腕上与用户的交互,可控制远距离的电视,实现电子设备的灵活使用。
图10为本申请实施例的另一种应用程序协同工作的示意图。作为一种示例而非限定,如图10所示,图10中的(a)图所示手机的屏幕显示***显示了当前一种可能的界面内容,该界面内容为地图应用的导航界面1001。该导航界面1001可以显示局部地图、导航线路的起点、导航线路的终点和导航提示信息等。应理解,导航界面1001还可以包括其他更多或更少的显示内容,本申请实施例对此不作限定。
一种可实现方式,本实施例的手机和智能手表可以通过本申请实施例的认证应用程序的方法,实现智能手表的地图应用和手机的地图应用的双向可信认证,例如,通过图7所示实施例的认证应用程序的方法对手机的地图应用和智能手表的地图应用进行身份验证,其中,本实施例的手机作为图7所示实施例的电子设备32,手机的地图应用作为应用程序2,智能手表作为电子设备31,智能手表的地图应用作为应用程序1。手机的地图应用中预制有智能手表的地图应用的认证凭据信息,智能手表的地图应用中预制有手机的地图应用的认证凭据信息,通过开放服务2和开放服务1,手机的地图应用校验智能手表的地图应用是否可信,智能手表的地图应用校验手机的地图应用是否可信,当均可信时,智能手表的地图应用与手机的地图应用之间可以双向通信。例如,智能手表的地图应用通过开放服务2和开放服务1向手机的地图应用发送导航提示信息,如,前方左转等。如图10 中的(b)图所示的当前一种可能的界面内容,该界面内容为智能手表的地图应用的导航界面1002。该导航界面1002可以显示导航提示信息等,以便用户通过智能手表获取导航信息。应理解,导航界面1002还可以包括其他更多或更少的显示内容,本申请实施例对此不作限定。
需要说明的是,本实施例的双向可信认证的时机可以是在智能手表和手机建立可信连接后,也可以是手机启动地图应用后,还可以是其他时刻,本申请实施例不一一举例说明。
本实施例,通过智能手表和手机的第三方应用程序之间的通信能力,实现手机端和穿戴端的实时协同体验。如:在手机侧开启导航,可以通过智能手表侧提示用户左转、直行、右转等。在走路或骑行时,不用每次掏出手机查看路线。
本申请实施例另一些实施例还提供了一种电子设备,用于执行以上各方法实施例中第一电子设备的方法。如图11所示,该电子设备可以包括:显示屏1101、一个或多个处理器1102;一个或多个存储器1103;以及第一应用程序;上述各器件可以通过一个或多个通信总线1105连接。其中上述存储器1103中存储一个或多个计算机程序1104,一个或多个处理器1102用于执行一个或多个计算机程序1104,该一个或多个计算机程序1104 包括指令,上述指令可以用于执行上述方法实施例中第一电子设备执行的各个步骤。该电子设备可以是上述任一形式的电子设备,例如,智能手机、智能手表等。
例如,一个或多个处理器1102用于运行一个或多个计算机程序1104,以实现以下动作:接收第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,该第一应用程序的预制认证凭据信息为通过该第二电子设备的第二应用程序获取的。根据该第一应用程序的应用标识信息获取该第一应用程序安装时注册的***认证凭据信息。对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,当校验通过时,允许该第二应用程序与该第一应用程序通信。
在一些实施例中,允许该第二应用程序与该第一应用程序通信,可以包括:允许该第二应用程序向该第一应用程序发送文件或数据。
在一些实施例中,还可以实现:接收该第二电子设备发送的该第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息。根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,该第二应用程序的预制认证凭据信息为该第一电子设备通过该第一应用程序获取的。对该第二应用程序的***认证凭据信息和该第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许该第一应用程序与该第二应用程序通信。
在一些实施例中,允许该第一应用程序与该第二应用程序通信,可以包括:允许该第一应用程序向该第二应用程序发送文件或数据。
在一些实施例中,该预制认证凭据信息包括预制认证指纹信息,或,预制域名和预制目录。
在一些实施例中,该预制认证凭据信息包括预制认证指纹信息,对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,可以包括:比对该第一应用程序的预制认证指纹信息和该第一应用程序的***认证指纹信息是否相同,当相同时,则校验通过,当不同时,则校验不通过。
在一些实施例中,该预制认证凭据信息包括预制域名和预制目录,对该第一应用程序的预制认证凭据信息和该第一应用程序的***认证凭据信息进行校验,可以包括:根据该第一应用程序的***域名和***目录获取该第一应用程序的统一资源定位符。判断该第一应用程序的统一资源定位符是否包括该第一应用程序的预制域名和预制目录。当该第一应用程序的统一资源定位符包括该第一应用程序的预制域名和预制目录,则校验通过,当该第一应用程序的统一资源定位符不包括该第一应用程序的预制域名和预制目录,则校验不通过。
在一些实施例中,该第一电子设备的***和该第二电子设备的***不同或者相同。
在一些实施例中,该第一应用程序的包名和第二应用程序的包名不同或者相同。
在一些实施例中,接收第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,可以包括:通过该第一电子设备的开放服务与该第二电子设备的开放服务之间的可信连接,接收该第二电子设备发送的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。
在一些实施例中,根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,可以包括:通过该第一电子设备的开放服务与该第一应用程序之间的接口获取该第二应用程序的应用标识信息对应的预制认证凭据信息。
在一些实施例中,还可以实现:在校验通过之后,接收该第二电子设备发送的第二应用程序的提醒事件信息,该提醒事件信息用于同步至该第一应用程序。
在一些实施例中,还可以实现:在校验通过之后,检测用户在第一应用程序的用户界面的操作,响应于该操作,向该第二电子设备的第二应用程序发送控制指令,该控制指令用于控制该第二应用程序的播放状态。
在一些实施例中,还可以实现:在校验通过之后,向该第二电子设备发送该第一应用程序的导航提示信息,该导航提示信息用于同步至该第二应用程序。
当然,图11所示的电子设备还可以包含如音频模块等其他器件,本申请实施例对此不做任何限制。当其包括其他器件时,具体可以为图2所示的电子设备。
本申请实施例的电子设备可以用于执行上述图5、图7所示方法实施例中第一电子设备的步骤,其技术原理和技术效果可以参见上述方法实施例的解释说明,此处不再赘述。
本申请实施例另一些实施例还提供一种计算机存储介质,该计算机存储介质可包括计算机指令,当该计算机指令在电子设备上运行时,使得该电子设备执行上述方法实施例中第一电子设备执行的各个步骤。
本申请实施例另一些实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行上述方法实施例中第一电子设备执行的各个步骤。
本申请实施例另一些实施例还提供一种装置,该装置具有实现上述方法实施例中第一电子设备行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块,例如,接收单元或模块,处理单元或模块。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
本实施例还提供另一种电子设备,该电子设备用于执行以上各方法实施例中第一电子设备的方法。该电子设备可以采用与图11相同的结构。例如,一个或多个处理器1102用于运行一个或多个计算机程序1104,以实现以下动作:接收第二电子设备发送的该第二电子设备的第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息。根据该第二应用程序的应用标识信息获取该第二应用程序的预制认证凭据信息,该第二应用程序的预制认证凭据信息为该第一电子设备通过该第一应用程序获取的。对该第二应用程序的***认证凭据信息和该第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许该第一应用程序与该第二应用程序通信。
在一些实施例中,允许该第一应用程序与该第二应用程序通信,可以包括:允许该第一应用程序向该第二应用程序发送文件或数据。
本申请实施例的电子设备可以用于执行上述图6所示方法实施例中第一电子设备的步骤,其技术原理和技术效果可以参见上述方法实施例的解释说明,此处不再赘述。
本实施例还提供另一种电子设备,该电子设备用于执行以上各方法实施例中第二电子设备的方法。该电子设备可以采用与图11相同的结构,区别在于该电子设备包括第二应用程序。例如,一个或多个处理器1102用于运行一个或多个计算机程序1104,以实现以下动作:通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。向该第一电子设备发送的该第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,该第一应用程序的预制认证凭据信息用于校验该第一应用程序。
在一些实施例中,通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息,可以包括:检测到用户在该第二应用程序的用户界面的操作。响应于该操作,通过该第二应用程序获取第一电子设备的第一应用程序的应用标识信息和该第一应用程序的预制认证凭据信息。
在一些实施例中,还可以实现:向该第一电子设备发送该第二应用程序的应用标识信息和该第二应用程序安装时注册的***认证凭据信息,该第二应用程序的***认证凭据信息用于校验该第二应用程序。
本申请实施例的电子设备可以用于执行上述图5、图6、或图7所示方法实施例中第二电子设备所执行的步骤,其技术原理和技术效果可以参见上述方法实施例的解释说明,此处不再赘述。
本申请实施例另一些实施例还提供一种计算机存储介质,该计算机存储介质可包括计算机指令,当该计算机指令在电子设备上运行时,使得该电子设备执行上述方法实施例中第二电子设备执行的各个步骤。
本申请实施例另一些实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行上述方法实施例中第二电子设备执行的各个步骤。
本申请实施例另一些实施例还提供一种装置,该装置具有实现上述方法实施例中第二电子设备行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块,例如,接收单元或模块,处理单元或模块。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上各实施例中提及的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。处理器可以是通用处理器、数字信号处理器(digital signalprocessor,DSP)、特定应用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。本申请实施例公开的方法的步骤可以直接体现为硬件编码处理器执行完成,或者用编码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
上述各实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory, RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (25)
1.一种认证应用程序的方法,所述方法应用于第一电子设备,所述第一电子设备包括第一应用程序,其特征在于,所述方法包括:
接收第二电子设备发送的第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息,所述第一应用程序的预制认证凭据信息为通过所述第二电子设备的第二应用程序获取的;
根据所述第一应用程序的应用标识信息获取所述第一应用程序安装时注册的***认证凭据信息;
对所述第一应用程序的预制认证凭据信息和所述第一应用程序的***认证凭据信息进行校验,当校验通过时,允许所述第二应用程序与所述第一应用程序通信。
2.根据权利要求1所述的方法,其特征在于,所述允许所述第二应用程序与所述第一应用程序通信,包括:
允许所述第二应用程序向所述第一应用程序发送文件或数据。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
接收所述第二电子设备发送的所述第二应用程序的应用标识信息和所述第二应用程序安装时注册的***认证凭据信息;
根据所述第二应用程序的应用标识信息获取所述第二应用程序的预制认证凭据信息,所述第二应用程序的预制认证凭据信息为所述第一电子设备通过所述第一应用程序获取的;
对所述第二应用程序的***认证凭据信息和所述第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许所述第一应用程序与所述第二应用程序通信。
4.根据权利要求3所述的方法,其特征在于,所述允许所述第一应用程序与所述第二应用程序通信,包括:
允许所述第一应用程序向所述第二应用程序发送文件或数据。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述预制认证凭据信息包括预制认证指纹信息,或,预制域名和预制目录。
6.根据权利要求5所述的方法,其特征在于,所述预制认证凭据信息包括预制认证指纹信息,所述对所述第一应用程序的预制认证凭据信息和所述第一应用程序的***认证凭据信息进行校验,包括:
比对所述第一应用程序的预制认证指纹信息和所述第一应用程序的***认证指纹信息是否相同,当相同时,则校验通过,当不同时,则校验不通过。
7.根据权利要求5所述的方法,其特征在于,所述预制认证凭据信息包括预制域名和预制目录,所述对所述第一应用程序的预制认证凭据信息和所述第一应用程序的***认证凭据信息进行校验,包括:
根据所述第一应用程序的***域名和***目录获取所述第一应用程序的统一资源定位符;
判断所述第一应用程序的统一资源定位符是否包括所述第一应用程序的预制域名和预制目录;
当所述第一应用程序的统一资源定位符包括所述第一应用程序的预制域名和预制目录,则校验通过,当所述第一应用程序的统一资源定位符不包括所述第一应用程序的预制域名和预制目录,则校验不通过。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述第一电子设备的***和所述第二电子设备的***不同或者相同。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述第一应用程序的包名和第二应用程序的包名不同或者相同。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述接收第二电子设备发送的第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息,包括:
通过所述第一电子设备的开放服务与所述第二电子设备的开放服务之间的可信连接,接收所述第二电子设备发送的第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息。
11.根据权利要求3至10任一项所述的方法,其特征在于,所述根据所述第二应用程序的应用标识信息获取所述第二应用程序的预制认证凭据信息,包括:
通过所述第一电子设备的开放服务与所述第一应用程序之间的接口获取所述第二应用程序的应用标识信息对应的预制认证凭据信息。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在校验通过之后,接收所述第二电子设备发送的第二应用程序的提醒事件信息,所述提醒事件信息用于同步至所述第一应用程序。
13.根据权利要求3至12任一项所述的方法,其特征在于,所述方法还包括:
在校验通过之后,检测用户在第一应用程序的用户界面的操作,响应于所述操作,向所述第二电子设备的第二应用程序发送控制指令,所述控制指令用于控制所述第二应用程序的播放状态。
14.根据权利要求3至12任一项所述的方法,其特征在于,所述方法还包括:
在校验通过之后,向所述第二电子设备发送所述第一应用程序的导航提示信息,所述导航提示信息用于同步至所述第二应用程序。
15.一种认证应用程序的方法,所述方法应用于第二电子设备,所述第二电子设备包括第二应用程序,其特征在于,所述方法包括:
通过所述第二应用程序获取第一电子设备的第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息;
向所述第一电子设备发送的所述第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息,所述第一应用程序的预制认证凭据信息用于校验所述第一应用程序。
16.根据权利要求15所述的方法,其特征在于,所述通过所述第二应用程序获取第一电子设备的第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息,包括:
检测到用户在所述第二应用程序的用户界面的操作;
响应于所述操作,通过所述第二应用程序获取第一电子设备的第一应用程序的应用标识信息和所述第一应用程序的预制认证凭据信息。
17.根据权利要求15或16所述的方法,其特征在于,所述方法还包括:
向所述第一电子设备发送所述第二应用程序的应用标识信息和所述第二应用程序安装时注册的***认证凭据信息,所述第二应用程序的***认证凭据信息用于校验所述第二应用程序。
18.一种认证应用程序的方法,所述方法应用于第一电子设备,所述第一电子设备包括第一应用程序,其特征在于,所述方法包括:
接收第二电子设备发送的所述第二电子设备的第二应用程序的应用标识信息和所述第二应用程序安装时注册的***认证凭据信息;
根据所述第二应用程序的应用标识信息获取所述第二应用程序的预制认证凭据信息,所述第二应用程序的预制认证凭据信息为所述第一电子设备通过所述第一应用程序获取的;
对所述第二应用程序的***认证凭据信息和所述第二应用程序的预制认证凭据信息进行校验,当校验通过时,允许所述第一应用程序与所述第二应用程序通信。
19.根据权利要求18所述的方法,其特征在于,所述允许所述第一应用程序与所述第二应用程序通信,包括:
允许所述第一应用程序向所述第二应用程序发送文件或数据。
20.一种电子设备,其特征在于,所述电子设备作为第一电子设备,所述第一电子设备包括:一个或多个处理器;一个或多个存储器;以及第一应用程序;其中,所述一个或多个存储器用于存储一个或多个程序;所述一个或多个处理器用于运行所述一个或多个程序,以实现如权利要求1-14中任一项所述的方法。
21.一种电子设备,其特征在于,所述电子设备作为第二电子设备,所述第二电子设备包括:一个或多个处理器;一个或多个存储器;以及第二应用程序;其中,所述一个或多个存储器用于存储一个或多个程序;所述一个或多个处理器用于运行所述一个或多个程序,以实现如权利要求15-17中任一项所述的方法。
22.一种电子设备,其特征在于,所述电子设备作为第一电子设备,所述第一电子设备包括:一个或多个处理器;一个或多个存储器;以及第一应用程序;其中,所述一个或多个存储器用于存储一个或多个程序;所述一个或多个处理器用于运行所述一个或多个程序,以实现如权利要求18或19所述的方法。
23.一种认证应用程序的***,其特征在于,所述***包括第一电子设备和第二电子设备,所述第一电子设备包括第一应用程序,所述第二电子设备包括第二应用程序,所述第一电子设备用于执行如权利要求1-14中任一项所述的方法,所述第二电子设备用于执行如权利要求15-17中任一项所述的方法。
24.一种计算机可读存储介质,其特征在于,包括计算机程序,所述计算机程序在计算机上被执行时,使得所述计算机执行如权利要求1-14中任一项所述的方法,或者,执行如权利要求15-17中任一项所述的方法,或者,执行如权利要求18或19所述的方法。
25.一种芯片,其特征在于,包括处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行如权利要求1-14中任一项所述的方法,或者,执行如权利要求15-17中任一项所述的方法,或者,执行如权利要求18或19所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010873231.9A CN114117393A (zh) | 2020-08-26 | 2020-08-26 | 认证应用程序的方法和电子设备 |
PCT/CN2021/113903 WO2022042454A1 (zh) | 2020-08-26 | 2021-08-20 | 认证应用程序的方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010873231.9A CN114117393A (zh) | 2020-08-26 | 2020-08-26 | 认证应用程序的方法和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114117393A true CN114117393A (zh) | 2022-03-01 |
Family
ID=80352631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010873231.9A Pending CN114117393A (zh) | 2020-08-26 | 2020-08-26 | 认证应用程序的方法和电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114117393A (zh) |
WO (1) | WO2022042454A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9912758B2 (en) * | 2014-12-16 | 2018-03-06 | Yahoo Holdings, Inc. | Continuing an application session on a different device |
CN107846390B (zh) * | 2016-09-21 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 应用程序的认证方法及装置 |
CN106453378A (zh) * | 2016-11-03 | 2017-02-22 | 东软集团股份有限公司 | 数据认证的方法、装置及*** |
CN107919960A (zh) * | 2017-12-04 | 2018-04-17 | 北京深思数盾科技股份有限公司 | 一种应用程序的认证方法和*** |
CN110581833B (zh) * | 2018-06-11 | 2022-08-23 | 中移(杭州)信息技术有限公司 | 一种业务安全保护方法及装置 |
-
2020
- 2020-08-26 CN CN202010873231.9A patent/CN114117393A/zh active Pending
-
2021
- 2021-08-20 WO PCT/CN2021/113903 patent/WO2022042454A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2022042454A1 (zh) | 2022-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220163932A1 (en) | Device control page display method, related apparatus, and system | |
CN108595970B (zh) | 处理组件的配置方法、装置、终端及存储介质 | |
US20200051046A1 (en) | Smart broadcasting method and apparatus | |
CN112166591B (zh) | 跨多个设备的数据同步 | |
KR102150514B1 (ko) | 디바이스 및 그를 이용한 컨텐츠 공유 방법 | |
US11979516B2 (en) | Audio output method and terminal device | |
EP3726376B1 (en) | Program orchestration method and electronic device | |
KR20150025613A (ko) | 애플리케이션의 관련 정보를 표시하는 전자 장치 및 방법 | |
JP6077231B2 (ja) | 通信システムにおけるユーザ端末の情報取得方法および装置 | |
KR20140047232A (ko) | 사용자 단말 장치, sns 제공 서버 및 그들의 컨텐츠 제공 방법 | |
JP6209599B2 (ja) | マルチデバイス環境でのメッセージサービス方法及びシステム、並びにこのための装置 | |
KR102128088B1 (ko) | 전자 장치의 방송 채널 정보 공유 방법 및 그 전자 장치 | |
CN114286165A (zh) | 一种显示设备、移动终端及投屏数据传输方法 | |
US11218556B2 (en) | Method, apparatus, user device and server for displaying personal homepage | |
KR20160128293A (ko) | 이벤트 리마인드 방법, 장치, 시스템, 프로그램 및 기록매체 | |
CN110598386A (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
KR20150027459A (ko) | 컨텐츠 전송 방법 및 전자 장치 | |
US20240094972A1 (en) | Page Display Method and Apparatus, Electronic Device, and Readable Storage Medium | |
CN104702701A (zh) | 一种数据分享方法及装置 | |
WO2022042454A1 (zh) | 认证应用程序的方法和电子设备 | |
KR20150085864A (ko) | 전자 장치의 광고 방법 및 그 전자 장치 | |
CN109922440A (zh) | 数据同步方法、设备、移动终端和存储介质 | |
CN112995587B (zh) | 电子设备监控方法、***、计算机设备及存储介质 | |
WO2022165939A1 (zh) | 一种跨设备认证方法及电子设备 | |
CN112597022A (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 |