CN111083541A - 接口调用方法、装置、智能电视及可读存储介质 - Google Patents
接口调用方法、装置、智能电视及可读存储介质 Download PDFInfo
- Publication number
- CN111083541A CN111083541A CN201911422761.5A CN201911422761A CN111083541A CN 111083541 A CN111083541 A CN 111083541A CN 201911422761 A CN201911422761 A CN 201911422761A CN 111083541 A CN111083541 A CN 111083541A
- Authority
- CN
- China
- Prior art keywords
- interface
- target
- application
- call
- target application
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4108—Peripherals receiving signals from specially adapted client devices characterised by an identification number or address, e.g. local network address
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
- H04N21/42684—Client identification by a unique number or address, e.g. serial number, MAC address, socket ID
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/475—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
- H04N21/4753—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for user identification, e.g. by entering a PIN or password
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供一种接口调用方法、装置、智能电视及可读存储介质,该方法包括:在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。本发明实现了接口调用可管控,禁止非法调用接口,以确保接口调用的安全性,提高电视运行的稳定性和可靠性。
Description
技术领域
本发明涉及智能电视领域,尤其涉及一种接口调用方法、装置、智能电视及可读存储介质。
背景技术
在智能电视领域,每家芯片厂商对芯片设计和驱动不同,对应用的开发来说也存在不同。为了避免应用之间的差异,智能电视一般是通过中间件来完成与芯片厂家驱动层的对接,而中间件又通过TVManager(电视管理器)来实现与应用之间的对接,比如电视上常用的切换频道、切换信源、搜索频道、搜索EPG(电子节目指南)等接口。
一般应用和TVMaganer的对接方式,是由应用导入TVMaganer的jar包,即可使用jar包里面的所有接口,完全使用jar包里面的功能,但TVMaganer里面包括很多核心的功能,逻辑非常复杂,如果使用不当,则会造成非常严重的后果,从而对降低了电视系统运行的稳定性。
发明内容
本发明的主要目的在于提供一种接口调用方法、装置、电视系统及可读存储介质,旨在解决现有智能电视接口调用方式会降低电视运行稳定性的技术问题。
为实现上述目的,本发明实施例提供一种接口调用方法,所述接口调用方法包括:
在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;
若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;
若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。
可选地,所述在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口的步骤包括:
在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并获取所述目标应用的进程标识符;
根据所述目标应用的进程标识符查询对应的目标授权钥,并根据查询结果判断所述目标应用是否有权调用所述目标接口。
可选地,所述根据查询结果判断所述目标应用是否有权调用所述目标接口的步骤包括:
判断是否存在所述目标应用的进程标识符对应的目标授权钥;
若不存在所述目标应用的进程标识符对应的目标授权钥,则判定所述目标应用无权调用所述目标接口;
若存在所述目标应用的进程标识符对应的目标授权钥,则判断所述目标授权钥中是否存在所述目标接口的接口信息,
若所述所述目标授权钥中不存在所述目标接口的接口信息,则判定所述目标应用无权调用所述目标接口;
若所述目标授权钥中存在所述目标接口的接口信息,则判定所述目标应用有权调用所述目标接口。
可选地,所述在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口的步骤之前,还包括:
在接收到注册应用的注册请求时,根据所述注册请求获取所述注册应用的进程标识符和注册授权钥,并根据所述注册应用的进程标识符和注册授权钥进行身份核对;
若身份核对通过,则记录所述注册应用的进程标识符、注册授权钥和所述注册授权钥中申请接口信息之间的对应关系。
可选地,所述注册授权钥由服务端生成并部署在所述注册应用,所述注册授权钥包括服务端的签名,所述签名由所述服务端根据所述注册应用的应用包名和申请接口信息加密生成。
可选地,所述根据所述注册应用的进程标识符和注册授权钥进行身份核对的步骤包括:
通过所述注册应用的进程标识符获取对应的第一应用包名;
对所述注册授权钥中的签名进行解密,获取对应的第二应用包名;
判断所述第一应用包名和所述第二应用包名是否一致;
若一致,则判定身份核对通过。
可选地,所述若所述目标应用无权调用所述目标接口,则向目标应用返回拒绝调用信息的步骤之后,还包括:
统计所述目标应用在预设时段内的拒绝调用次数;
若所述拒绝调用次数大于预设阈值,则向预设终端发送对应的可疑应用提示。
此外,为实现上述目的,本发明实施例还提供一种接口调用装置,所述接口调用装置包括:
请求接收模块,用于在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;
接口提供模块,用于若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;
请求拒绝模块,用于若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。
此外,为实现上述目的,本发明实施例还提供一种智能电视,所述智能电视包括处理器、存储器、以及存储在所述存储器上并被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上述的接口调用方法的步骤。
此外,为实现上述目的,本发明实施例还提供一种可读存储介质,所述可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上述的接口调用方法的步骤。
本发明实施例在目标应用进行接口调用请求时,确定该应用所要调用的目标接口,并判断该目标应用是否有权调用目标接口;若有权则向该应用目标接口,若无权则拒绝调用,从而实现接口调用可管控,禁止非法调用接口,以确保接口调用的安全性,提高电视运行的稳定性和可靠性。
附图说明
图1为本发明实施例方案中涉及的智能电视硬件架构示意图;
图2为本发明接口调用方法第一实施例的流程示意图;
图3为本发明接口调用装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例用以解释本发明,并不用于限定本发明。
本发明实施例涉及的接口调用方法主要应用于智能电视。
参照图1,图1为本发明实施例方案中涉及的智能电视硬件架构示意图。本发明实施例中,智能电视可以包括处理器1001(例如中央处理器Central Processing Unit,CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如按键(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真WIreless-FIdelity,WI-FI接口);存储器1005可以是高速随机存取存储器(random accessmemory,RAM),也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种可读存储介质的存储器1005可以包括操作系统、网络通信模块以及计算机程序。在图1中,网络通信模块可用于连接外部网络,以进行数据通信;而处理器1001可以调用存储器1005中存储的计算机程序,并执行以下步骤:。
本发明实施例提供了一种接口调用方法。
参照图2,图2为本发明接口调用方法第一实施例的流程示意图。
本实施例中,所述接口调用方法包括以下步骤:
步骤S10,在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;
为了避免应用之间的差异,智能电视一般是通过中间件来完成与芯片厂家驱动层的对接,而中间件又通过TVManager(电视管理器)来实现与应用之间的对接,比如电视上常用的切换频道、切换信源、搜索频道、搜索EPG(电子节目指南)等接口。一般应用和TVMaganer的对接方式,是由应用导入TVMaganer的jar包,即可使用jar包里面的所有接口,完全使用jar包里面的功能;其中jar包是一种软件包文件格式,可聚合大量的Java类文件、相关的元数据和资源(文本、图片等),用于发布和使用类库,或是用于作为应用程序和扩展的构建单元,又或是作为组件、applet或插件程序的部署单位,还可以用于打包与组件相关联的辅助资源;但是TVMaganer里面包括很多核心的功能,逻辑非常复杂,如果使用不当,则会造成非常严重的后果,从而对降低了电视系统运行的稳定性。对此,本实施例提出一种接口调用方法,在应用进行接口调用请求时,确定该应用所要调用的目标接口,并判断该应用是否有权调用目标接口;若有权则向该应用目标接口,若无权则拒绝调用,从而使接口调用可管控,禁止非法调用接口,以确保接口调用的安全性,提高电视运行的稳定性和可靠性。
本实施例的接口调用方法主要应用于智能电视,即智能电视对本身的运行情况进行控制;本实施的接口调用方法也可以是应用于某一控制装置(或终端、设备),由该控制装置对智能电视进行控制,当然该控制装置可以是一个单独装置,也可以是由多个不同的实体装置所组成的抽象功能装置。为说明方便,本实施例中以智能电视对自身进行控制为例进行说明。本实施例中的智能电视预先安装有若干应用;当某一应用需要调用某一接口时,可向智能电视发送接口调用请求;为说明方便,该发送接口调用请求的应用可称为目标应用,而该接口调用请求中包括需要调用的接口信息,为说明方便,该需要调用的接口可称为目标接口。智能电视在接收到该接口调用请求时,首先将会根据该接口调用请求确定目标应用所要调用的目标接口,然后判断目标应用是否具有调用目标接口的权限。其中,对于判断目标应用是否有权调用的过程,可以是智能电视中预先存储有各应用对各接口的调用权限信息,例如各应用的权限调用表等,然后根据该调用权限信息进行判断;又或者从接口角度进行设置,预先存储各接口能否调用的信息,然后根据该信息进行判断;又或者是目标应用在发送接口调用请求时提供相关的权限证明,智能电视根据该权限证明判断目标应用是否有权调用目标接口;当然除了上述举例还可以是其它的判断方式。
步骤S20,若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;
本实施例中,若判定目标应用有权限调用该目标接口,则向目标应用提供该目标接口,以供目标应用进行调用。
步骤S30,若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。
本实施例中,若判定目标应用无权限调用该目标接口,则拒绝该目标应用的接口调用请求,并向目标应用返回对应的拒绝调用信息。
本实施例在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。通过以上方式,本实施例在目标应用进行接口调用请求时,确定该应用所要调用的目标接口,并判断该目标应用是否有权调用目标接口;若有权则向该应用目标接口,若无权则拒绝调用,从而实现接口调用可管控,禁止非法调用接口,以确保接口调用的安全性,提高电视运行的稳定性和可靠性。
基于上述接口调用方法第一实施例,提出本发明接口调用方法第二实施例。
本实施例中,所述步骤S10包括:
步骤A11,在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并获取所述目标应用的进程标识符;
本实施例中,对于各应用的接口调用权限,可通过授权钥TSA KEY(TV+SDK授权金钥)来表征;TSA KEY可理解为接口调用的权限凭证,若目标应用对应有一个注册的TSAKEY,则可认为目标应用有权限调用该TSA KEY所对应的接口。具体的,目标应用需要调用接口时,将向智能电视发送接口调用请求,该接口调用请求中包括需要调用的接口信息。智能电视在接收到该接口调用请求时,将会根据该接口调用请求确定目标应用所要调用的目标接口;同时,智能电视还将会获取目标应用的进程标识符PID。其中,应用在运行时,每个应用对会对应一个唯一的进程标识符PID;而智能电视可通过执行limux命令ps-A的方式,获取到目标应用的PID。
步骤A12,根据所述目标应用的进程标识符查询对应的目标授权钥,并根据查询结果判断所述目标应用是否有权调用所述目标接口。
本实施例中,智能电视在得到目标应用的PID时,可根据目标应用的PID进行查询,以查找目标应用的PID是否存在对应注册的TSA KEY,并根据查询结果判断目标应用是否有权调用该目标接口。
本实施例中,在应用进行接口调用请求时,可通过查询应用的进程标识符对应的授权钥的方式判断应用是否有权调用接口,从而使接口调用可管控,禁止非法调用接口,以确保接口调用的安全性,提高电视运行的稳定性和可靠性。
进一步的,智能电视的jar包中的接口数量较多,为了实现更为精细化的管理,不同应用的TSA KEY可以对应不同接口的调用权限;例如,TSA KEY中包括有接口信息,该接口信息用以说明TSA KEY是针对哪一个接口;换而言之,本实施例在判断目标应用是否有权调用目标接口时,不仅要判断目标应用的PID是否具有对应注册的TSA KEY,还需要判断注册的TSA KEY是否即对应目标接口。具体的,本实施例中,所述根据查询结果判断目标应用是否有权调用该目标接口的步骤包括:
步骤A121,判断是否存在所述目标应用的进程标识符对应的目标授权钥;
本实施例中,智能电视在目标应用的PID查询对应的目标TSA KEY后,首先需要判断是否存在目标应用的PID对应的目标TSA KEY。
步骤A122,若不存在所述目标应用的进程标识符对应的目标授权钥,则判定所述目标应用无权调用所述目标接口;
本实施例中,若不存在目标应用的PID对应的目标授权钥TSA KEY,则可认为目标应用之前并没有进行接口调用的注册;此时,可判定目标应用无权调用该目标接口。
步骤A123,若存在所述目标应用的进程标识符对应的目标授权钥,则判断所述目标授权钥中是否存在所述目标接口的接口信息;
本实施例中,若存在目标应用的PID对应的目标授权钥TSA KEY,则可认为目标应用之前进行了接口调用的注册;但不同的TSA KEY可能会有不同的接口信息,因此需要进一步判断该目标TSA KEY中是否存在目标接口的接口信息,也即判断该目标TSA KEY与目标接口对应。
步骤A124,若所述所述目标授权钥中不存在所述目标接口的接口信息,则判定所述目标应用无权调用所述目标接口;
本实施例中,若目标TSA KEY中不存在目标接口的接口信息,则说明目标TSA KEY并不是与目标接口对应的,也即目标应用之前并没有针对目标接口的调用进行了注册,此时不属于合法调用,因此可判定目标应用无权调用目标接口;
步骤A124,若所述目标授权钥中存在所述目标接口的接口信息,则判定所述目标应用有权调用所述目标接口。
本实施例中,若目标TSA KEY中存在目标接口的接口信息,则说明目标TSA KEY是与目标接口对应的,也即目标应用之前针对目标接口的调用进行了注册,此时属于合法调用,因此可判定目标应用有权调用目标接口。
通过以上方式,本实施例中不同应用的TSA KEY可以对应不同接口的调用权限,在判断目标应用是否有权调用目标接口时,不仅要判断目标应用的PID是否具有对应注册的TSA KEY,还需要判断注册的TSA KEY是否即对应目标接口,从而实现对接口调用更为精细化的管理,有利于提高电视运行稳定性。
基于上述接口调用方法第二实施例,提出本发明接口调用方法第三实施例。
本实施例中,所述步骤S10之前,还包括:
步骤A40,在接收到注册应用的注册请求时,根据所述注册请求获取所述注册应用的进程标识符和注册授权钥,并根据所述注册应用的进程标识符和注册授权钥进行身份核对;
本实施例中,对于各应用的接口调用权限,可通过授权钥TSA KEY来表征;而各应用TSA KEY需要预先在智能电视处进行注册认证,后续才可基于TSA KEY进行接口调用。具体的,应用在初始化时,将向智能电视发送注册请求,为说明方便,该发送注册请求的应用可称为注册应用;智能电视在接收到该注册请求时,将会根据注册请求获取注册应用的进程标识符PID和用以注册的注册授权钥TSA KEY。其中,注册应用的PID的获取方式与上述目标应用的PID的获取方式类似;而对于注册TSA KEY,可以是注册应用在发送注册请求时一起发送,也可以是智能电视在收到注册请求后再从注册应用、或是其它的第三方平台中获取得到。在得到注册应用的PID和注册TSA KEY,将根据注册应用的PID和注册TSA KEY进行身份核对,也即判断注册TSA KEY是否对应了注册应用。对于该判断过程,可以是注册TSAKEY中包括有注册应用的相关身份信息,而根据注册应用的PID也可获取注册应用的相关身份信息,然后通过将两者进行比对以实现身份核对;当然也可以是其它的方式。
步骤A50,若身份核对通过,则记录所述注册应用的进程标识符、注册授权钥和所述注册授权钥中申请接口信息之间的对应关系。
本实施例中,若身份核对通过,则可同意此次的注册请求,并记录注册应用的PID,注册TSA KEY以及申请接口信息之间的对应关系;后续过程中,当注册应用需要调用目标接口时,即可如步骤S10般向智能电视发送调用请求(此时注册应用也即为目标应用),智能电视即可获取注册应用的PID,根据PID查询对应的授权钥,并判断是否存在对应的授权钥;若不存在对应的授权钥,则判定无权调用目标接口;若存在对应的授权钥,则需判断授权钥中是否存在目标接口的接口信息,也即判断授权钥是否与目标接口对应;若存在目标目标接口的接口信息,则可认为注册应用有权调用目标接口。而若身份核对不通过,智能电视将向注册应用返回注册失败信息,也即拒绝此次的注册请求。
进一步的,本实施例中,为了提高接口调用的安全性,对于该注册TSAKEY是由第三方生成的,该第三方可称为服务端(或服务方);注册应用的应用方(或理解为注册应用的开发方、提供方)需要预先向服务端提出TSA KEY申请,然后服务端根据该TSA KEY申请进行审核,当审核通过时生成注册TSA KEY,并将该注册TSA KEY返回给注册应用的提供方;注册应用的应用方即可将该注册TSA KEY部署在注册应用中,以进行后续的注册处理。
具体的,注册应用应用方进行TSA KEY申请时,将要提供应注册应用的应用信息,可以包括注册应用的公司名、应用包名、应用版本号以及需要申请调用的接口(申请接口信息)等,例如下表1:
表1应用信息
公司名 | 应用包名 | 应用版本号 | 申请调用的接口 |
FFALCON | com.tlc.cyberui | 1.0.0 | 0 |
其中,表1的申请调用的接口项,是用数字代表某一个或多个接口,当然也可以是直接以接口名的方式表示;此外,应用信息还可以包括其它内容。服务端在接收到该TSAKEY申请时,将会根据应用信息进行审核,判断是否予以下发注册TSA KEY。若判定不予以下发,在可向应用方返回拒绝信息;而若判定予以下发,则先会生成该应用信息对应的签发信息,签发信息可以包括签发信息的版本类型MAGIC、签发信息的版本(即注册应用第几次申请)、有效期、签发者、签发时间等,例如下表2:
表2签发信息
MAGIC | 版本 | 有效期 | 签发者 | 签发时间 |
SITA | 1 | 9999 | TLC | 2018.11.10 |
当然,签发信息还可以包括其它内容。在生成签发信息后,可将签发信息与应用信息以预设规则进行拼接,得到对应的字符串;拼接的规则,是将每一块信息以“信息类型的数字标识码+信息字符长度+:+内容”的形式表示为多个编码块,然后再根据信息类型的数字标识码的大小顺序将这些编码进行排列,并组合得到字符串;例如,对于表2中的MAGIC项,其对应的信息类型的数字标识码为1,而“SITA”的信息字符长度为4,内容为“SITA”,则对应的编码块为“14:SITA”;又例如,对于表1中的应用包名,其对应的信息类型的数字标识码为7,而“com.tlc.cyberui”的信息字符长度为15,内容为“com.tlc.cyberui”,则对应的编码块为“715:com.tcl.cyberui”;对于上述表1和表2,拼接后得到的字符串为:
14:SITA21:134:999943:TCL510:2018.11.1067:FFALCON715:com.tcl.cyberui85:1.0.091:0。
在得到该字符串后,服务端会对其进行加密,得到对应的密文;而在进行加密时,可以是字符串进行SHA1加密,再进行RSA加密;例如对于上述的字符串,在进行SHA1加密后,得到对应的SHA1密文为:
188909a6f5b6941232f2d70b0d2285f2ae1f9414
然后再对该SHA1密文进行RSA加密,得到对应的RSA密文为:
Es+3HaKuleISbEzFQUfL2K8YQCSCtrraGLrvvvCHOJ6psprAWfyhkTzFvzSoKXoxZOtFGZdbaj0yiflz9QugO56uWpjHF04EhtjMPubI9jLGDF0N0+u/nyi4KSP0tSdOO07qpnHMdOSF8uhJbSpdHXpuNdTMG+/+Ha+t3Rr6uoM=
在得到该RSA密文时,该RSA密文可认为是服务端的签名。然后可根据上述字符串、签名得到注册TSA KEY;也即完整的注册TSA KEY可包括应用信息、签发信息和签名,其中应用信息和签发信息可以是字符串的形式,例如对于上述的表1的应用信息和表2的签发信息,所对应的注册TSA KEY为:14:SITA21:134:999943:TCL510:2018.11.1067:FFALCON715:com.tcl.cyberui85:1.0.091:0Es+3HaKuleISbEzFQUfL2K8YQCSCtrraGLrvvvCHOJ6psprAWfyhkTzFvzSoKXoxZOtFGZdbaj0yiflz9QugO56uWpjHF04EhtjMPubI9jLGDF0N0+u/nyi4KSP0tSdOO07qpnHMdOSF8uhJbSpdHXpuNdTMG+/+Ha+t3Rr6uoM=
当然,除了上述内容,TSA KEY还可以包括其它内容。服务端在得到注册TSA KEY时,即可将该注册TSA KEY返回给应用方,以供应用方将其部署在注册应用中。
再进一步的,当注册TSA KEY包括上述内容时,步骤A40中根据所述注册应用的进程标识符和注册授权钥进行身份核对的步骤包括:
步骤A41,通过所述注册应用的进程标识符获取对应的第一应用包名;
智能电视根据注册应用的PID可获取对应的应用包名,这个第一应用包名可认为是注册应用在智能电视中安装所用的应用包名,为说明方便,根据PID获取的应用包名可称为第一应用包名。
步骤A42,对所述注册授权钥中的签名进行解密,获取对应的第二应用包名;
对于注册应用的注册TSA KEY,由于其包括了服务端的签名,而该签名是根据应用信息和签发加密得到;而应用信息中又包括注册时提供的应用包名,因此可对其进行解密,获得该应用包名,为说明方便,解密后得到的应用包名可称为第二应用包名。值得说明的是,对于服务端在加密得到签名时,该加密过程包括RSA加密,该加密使用的是服务端的私钥;而智能电视中预先存储有服务端的公钥,并通过该公钥进行解密,从而第二应用包名。值得说明的是,若通过该公钥无法对签名进行解密,则说明该签名并不是由服务端通过其私钥加密得到,此时可直接对注册TSA KEY的可靠性进行质疑,并直接判定身份核对不通过;当然也可以是其它的处理方式。
步骤A43,判断所述第一应用包名和所述第二应用包名是否一致;
在得到第一应用包名和第二应用包名时,可将两个包名进行比对,判定两者是否一致。
步骤A44,若一致,则判定身份核对通过。
若两者一致,则可认为注册应用进行注册所用的注册TSA KEY确为自身所对应的,因此判定身份核对通过;而若两者不一致,则可认为注册应用进行注册所用的注册TSA KEY并不是自身所对应的,因此判定身份核对不通过。
通过以上方式,本实施例在对注册应用进行身份核对时,根据注册应用的PID和注册TSA KEY分别获取应用包名,然后以包名比对的方式进行身份核对,当两个包名一致时说明注册应用所用的注册TSA KEY确为自身所对应的,此时判定核对通过,避免注册应用冒名使用TSA KEY注册成功的情况,有利于提高应用接口调用的安全性。
基于本发明接口调用方法任一实施例,提出本发明接口调用方法第四实施例。
本实施例中,所述步骤S30之后,还包括:
步骤A60,统计所述目标应用在预设时段内的拒绝调用次数;
本实施例中,若判定目标应用无权限调用该目标接口,并向目标应用返回对应的拒绝调用信息后,智能电视还可以统计目标应用在预设时段内的拒绝调用次数。例如,统计目标应用在一天内的拒绝调用次数。
步骤A70,若所述拒绝调用次数大于预设阈值,则向预设终端发送对应的可疑应用提示。
本实施例中,若目标应用在预设时段内的拒绝调用次数大于预设阈值,则说明目标应用在该预设时段内存在多次接口调用失败的情况,而该目标应用有可能是恶意应用,因此多次进行接口调用申请,但因本实施中的权限判断机制所拒绝,当然也可能是该目标应用自身bug导致;对此,智能终端可向预设终端发送对应的可疑应用提示,例如向用户的手机发送可疑应用提示,以提示用户进行检视,又例如向网络服务器发送可疑应用提示,以使网络服务器进行相应处理。
通过以上方式,当目标应用在预设时段内的拒绝调用次数大于预设阈值,可向某一终端发送相关提示信息,以使得相关人员及时进行相应处理,有利于及时发现安全隐患,提高电视运行稳定性和可靠性。
值得说明的是,对于上述接口调用方法各实施例中的步骤,是将智能电视作为一个整体进行说明;而在实际中,智能电视可以是分为多个不同的功能模块、功能层、功能组件,然后由这些功能模块、功能层、功能组件负责具体的步骤。
例如,智能电视包括远程过程调用的客户端Binder-client、远程过程调用的服务端Binder-server、中间件Sitatvservice(连接应用和驱动的中介),而Sitatvservice中包括有注册接口,该注册接口用于接收PID和TSAKEY。在应用注册过程中,Binder-client由TVManager调用,用于获取到注册应用的PID,并将其打包到Parcel结构体中,将其传输到Binder-server,同时还将注册应用的TSAKEY传输给Binder-server;Binder-server在得到Parcel时,从中取出PID,并与TSAKEY一起通过注册接口传输给Sitatvservice;Sitatvservice接收到PID和TSAKEY时,即可根据PID和TSAKEY进行身份核对。在应用调用接口的过程中,Binder-client负责采集应用的PID,并通过Parcel作为载体传到Binder-server,Binder-server再通过Sitatvservice的接口将PID传给Sitatvservice,由Sitatvservice根据PID判断应用是否有权调用目标接口;Sitatvservice判断完成后,将会向Binder-server返回判断结果,由Binder-server根据判断结果确定后续处理过程,若有权调用,则向应用提供目标接口,若无权调用,则会拒绝调用。当然,上述层级的分类方式并不代表对本发明各实施例的限定。
此外,本发明实施例还提供一种接口调用装置。
参照图3,图3为本发明接口调用装置第一实施例的功能模块示意图。
本实施例中,所述接口调用装置包括:
请求接收模块10,用于在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;
接口提供模块20,用于若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;
请求拒绝模块30,用于若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。
其中,上述接口调用装置的各虚拟功能模块存储于图1所示的存储器1005中,各模块被处理器1001执行时,可实现接口调用功能。
进一步的,所述请求接收模块10,包括:
请求接收单元,用于在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并获取所述目标应用的进程标识符;
权限判断单元,用于根据所述目标应用的进程标识符查询对应的目标授权钥,并根据查询结果判断所述目标应用是否有权调用所述目标接口。
进一步的,所述权限判断单元,具体用于判断是否存在所述目标应用的进程标识符对应的目标授权钥;若不存在所述目标应用的进程标识符对应的目标授权钥,则判定所述目标应用无权调用所述目标接口;若存在所述目标应用的进程标识符对应的目标授权钥,则判断所述目标授权钥中是否存在所述目标接口的接口信息,若所述所述目标授权钥中不存在所述目标接口的接口信息,则判定所述目标应用无权调用所述目标接口;若所述目标授权钥中存在所述目标接口的接口信息,则判定所述目标应用有权调用所述目标接口。
进一步的,所述接口调用装置,还包括:
身份核对模块,用于在接收到注册应用的注册请求时,根据所述注册请求获取所述注册应用的进程标识符和注册授权钥,并根据所述注册应用的进程标识符和注册授权钥进行身份核对;
关系记录模块,用于若身份核对通过,则记录所述注册应用的进程标识符、注册授权钥和所述注册授权钥中申请接口信息之间的对应关系。
进一步的,所述注册授权钥由服务端生成并部署在所述注册应用,所述注册授权钥包括服务端的签名,所述签名由所述服务端根据所述注册应用的应用包名和申请接口信息加密生成。
进一步的,所述身份核对模块包括:
第一获取单元,用于通过所述注册应用的进程标识符获取对应的第一应用包名;
第二获取单元,用于对所述注册授权钥中的签名进行解密,获取对应的第二应用包名;
包名判断单元,用于判断所述第一应用包名和所述第二应用包名是否一致;
身份判定单元,用于若一致,则判定身份核对通过。
进一步的,所述接口调用装置,还包括:
次数统计模块,用于统计所述目标应用在预设时段内的拒绝调用次数;
提示发送模块,用于若所述拒绝调用次数大于预设阈值,则向预设终端发送对应的可疑应用提示。
其中,上述接口调用装置各个模块的功能实现与上述接口调用方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
此外,本发明实施例还提供一种可读存储介质。
本发明可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上述的接口调用方法的步骤。
其中,计算机程序被执行时所实现的方法可参照本发明接口调用方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种接口调用方法,其特征在于,所述接口调用方法包括:
在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;
若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;
若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。
2.如权利要求1所述的接口调用方法,其特征在于,所述在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口的步骤包括:
在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并获取所述目标应用的进程标识符;
根据所述目标应用的进程标识符查询对应的目标授权钥,并根据查询结果判断所述目标应用是否有权调用所述目标接口。
3.如权利要求2所述的接口调用方法,其特征在于,所述根据查询结果判断所述目标应用是否有权调用所述目标接口的步骤包括:
判断是否存在所述目标应用的进程标识符对应的目标授权钥;
若不存在所述目标应用的进程标识符对应的目标授权钥,则判定所述目标应用无权调用所述目标接口;
若存在所述目标应用的进程标识符对应的目标授权钥,则判断所述目标授权钥中是否存在所述目标接口的接口信息,
若所述所述目标授权钥中不存在所述目标接口的接口信息,则判定所述目标应用无权调用所述目标接口;
若所述目标授权钥中存在所述目标接口的接口信息,则判定所述目标应用有权调用所述目标接口。
4.如权利要求2所述的接口调用方法,其特征在于,所述在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口的步骤之前,还包括:
在接收到注册应用的注册请求时,根据所述注册请求获取所述注册应用的进程标识符和注册授权钥,并根据所述注册应用的进程标识符和注册授权钥进行身份核对;
若身份核对通过,则记录所述注册应用的进程标识符、注册授权钥和所述注册授权钥中申请接口信息之间的对应关系。
5.如权利要求4所述的接口调用方法,其特征在于,所述注册授权钥由服务端生成并部署在所述注册应用,所述注册授权钥包括服务端的签名,所述签名由所述服务端根据所述注册应用的应用包名和申请接口信息加密生成。
6.如权利要求5所述的接口调用方法,其特征在于,所述根据所述注册应用的进程标识符和注册授权钥进行身份核对的步骤包括:
通过所述注册应用的进程标识符获取对应的第一应用包名;
对所述注册授权钥中的签名进行解密,获取对应的第二应用包名;
判断所述第一应用包名和所述第二应用包名是否一致;
若一致,则判定身份核对通过。
7.如权利要求1至6中任一项所述的接口调用方法,其特征在于,所述若所述目标应用无权调用所述目标接口,则向目标应用返回拒绝调用信息的步骤之后,还包括:
统计所述目标应用在预设时段内的拒绝调用次数;
若所述拒绝调用次数大于预设阈值,则向预设终端发送对应的可疑应用提示。
8.一种接口调用装置,其特征在于,所述接口调用装置包括:
请求接收模块,用于在接收到目标应用的接口调用请求时,根据所述接口调用请求确定对应的目标接口,并判断所述目标应用是否有权调用所述目标接口;
接口提供模块,用于若所述目标应用有权调用所述目标接口,则向目标应用提供所述目标接口;
请求拒绝模块,用于若所述目标应用无权调用所述目标接口,则拒绝所述接口调用请求。
9.一种智能电视,其特征在于,所述智能电视包括处理器、存储器、以及存储在所述存储器上并被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至7中任一项所述的接口调用方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述的接口调用方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422761.5A CN111083541B (zh) | 2019-12-30 | 2019-12-30 | 接口调用方法、装置、智能电视及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422761.5A CN111083541B (zh) | 2019-12-30 | 2019-12-30 | 接口调用方法、装置、智能电视及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111083541A true CN111083541A (zh) | 2020-04-28 |
CN111083541B CN111083541B (zh) | 2022-10-04 |
Family
ID=70321547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911422761.5A Active CN111083541B (zh) | 2019-12-30 | 2019-12-30 | 接口调用方法、装置、智能电视及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111083541B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760405A (zh) * | 2021-01-29 | 2021-12-07 | 北京京东拓先科技有限公司 | 一种网关接口的验签方法、装置、存储介质及电子设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030126195A1 (en) * | 2000-05-20 | 2003-07-03 | Reynolds Daniel A. | Common command interface |
US20070061482A1 (en) * | 2005-08-03 | 2007-03-15 | Nec Corporation | Information processing apparatus, communication control method, and communication control program |
CN106453519A (zh) * | 2016-09-21 | 2017-02-22 | 合网络技术(北京)有限公司 | 接口调用方法及装置 |
CN106778208A (zh) * | 2016-12-01 | 2017-05-31 | 深圳Tcl新技术有限公司 | 应用程序的访问处理方法及装置 |
CN108280349A (zh) * | 2018-01-10 | 2018-07-13 | 维沃移动通信有限公司 | 保护系统内核层的方法、移动终端及计算机可读存储介质 |
CN108449315A (zh) * | 2018-02-05 | 2018-08-24 | 平安科技(深圳)有限公司 | 请求合法性的校验装置、方法及计算机可读存储介质 |
US20190018961A1 (en) * | 2017-07-12 | 2019-01-17 | Acronis International Gmbh | Method for decrypting data encrypted by ransomware |
CN109246092A (zh) * | 2018-08-22 | 2019-01-18 | 北京旷视科技有限公司 | 接口管理方法、装置、系统、计算机可读存储介质 |
CN110049041A (zh) * | 2019-04-17 | 2019-07-23 | 北京网聘咨询有限公司 | 招聘网站开放平台的接口调用方法和接口调用系统 |
CN110308955A (zh) * | 2019-06-05 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 一种接口调用方法、系统及设备 |
-
2019
- 2019-12-30 CN CN201911422761.5A patent/CN111083541B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030126195A1 (en) * | 2000-05-20 | 2003-07-03 | Reynolds Daniel A. | Common command interface |
US20070061482A1 (en) * | 2005-08-03 | 2007-03-15 | Nec Corporation | Information processing apparatus, communication control method, and communication control program |
CN106453519A (zh) * | 2016-09-21 | 2017-02-22 | 合网络技术(北京)有限公司 | 接口调用方法及装置 |
CN106778208A (zh) * | 2016-12-01 | 2017-05-31 | 深圳Tcl新技术有限公司 | 应用程序的访问处理方法及装置 |
US20190018961A1 (en) * | 2017-07-12 | 2019-01-17 | Acronis International Gmbh | Method for decrypting data encrypted by ransomware |
CN108280349A (zh) * | 2018-01-10 | 2018-07-13 | 维沃移动通信有限公司 | 保护系统内核层的方法、移动终端及计算机可读存储介质 |
CN108449315A (zh) * | 2018-02-05 | 2018-08-24 | 平安科技(深圳)有限公司 | 请求合法性的校验装置、方法及计算机可读存储介质 |
CN109246092A (zh) * | 2018-08-22 | 2019-01-18 | 北京旷视科技有限公司 | 接口管理方法、装置、系统、计算机可读存储介质 |
CN110049041A (zh) * | 2019-04-17 | 2019-07-23 | 北京网聘咨询有限公司 | 招聘网站开放平台的接口调用方法和接口调用系统 |
CN110308955A (zh) * | 2019-06-05 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 一种接口调用方法、系统及设备 |
Non-Patent Citations (2)
Title |
---|
张凯等: "一个安全异步Web服务应用平台的实现方案", 《计算机工程》 * |
王倩文等: "基于安卓平台的恶意软件动态监测的研究", 《计算机技术与发展》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760405A (zh) * | 2021-01-29 | 2021-12-07 | 北京京东拓先科技有限公司 | 一种网关接口的验签方法、装置、存储介质及电子设备 |
CN113760405B (zh) * | 2021-01-29 | 2024-05-17 | 北京京东拓先科技有限公司 | 一种网关接口的验签方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111083541B (zh) | 2022-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108200050B (zh) | 单点登录服务器、方法及计算机可读存储介质 | |
US11870758B2 (en) | Systems and methods for application identification | |
CA2923740C (en) | Software code signing system and method | |
US8752189B2 (en) | Resource management system and corresponding method | |
US9226143B2 (en) | Controlling application access to mobile device functions | |
US9025769B2 (en) | Method of registering smart phone when accessing security authentication device and method of granting access permission to registered smart phone | |
CN110071806B (zh) | 基于接口校验的数据处理的方法和系统 | |
US20060190986A1 (en) | System and method for dynamically allocating resources | |
US9313214B2 (en) | Enhanced security using service provider authentication | |
CA2561608C (en) | System and method for registering entities for code signing services | |
US12088595B2 (en) | Entity authentication for pre-authenticated links | |
CN107015996A (zh) | 一种资源访问方法、装置及系统 | |
US9942047B2 (en) | Controlling application access to mobile device functions | |
CN106936774A (zh) | 可信执行环境中的认证方法和系统 | |
CN108319827B (zh) | 一种基于osgi框架的api权限管理系统及方法 | |
CN101547202A (zh) | 处理网络上的装置的安全等级的方法和设备 | |
CN107358118B (zh) | Sfs访问控制方法及系统、sfs及终端设备 | |
CN111083541B (zh) | 接口调用方法、装置、智能电视及可读存储介质 | |
CN108429732B (zh) | 一种获取资源的方法及系统 | |
CN113254986B (zh) | 数据处理方法、装置及计算机可读存储介质 | |
WO2022062688A1 (zh) | 消息推送方法、电子设备及存储介质 | |
CN114448725A (zh) | 一种设备认证方法、系统及存储介质 | |
US11687673B2 (en) | Actor migration | |
CN115221562A (zh) | 浏览器文件的签名方法、装置及计算机可读存储介质 | |
CN112134705B (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 |