CN109450643B - Android平台上基于native服务实现的签名验签方法 - Google Patents

Android平台上基于native服务实现的签名验签方法 Download PDF

Info

Publication number
CN109450643B
CN109450643B CN201811308602.8A CN201811308602A CN109450643B CN 109450643 B CN109450643 B CN 109450643B CN 201811308602 A CN201811308602 A CN 201811308602A CN 109450643 B CN109450643 B CN 109450643B
Authority
CN
China
Prior art keywords
signature
service
terminal
data
cloud
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
CN201811308602.8A
Other languages
English (en)
Other versions
CN109450643A (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.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric Co Ltd
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 Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201811308602.8A priority Critical patent/CN109450643B/zh
Publication of CN109450643A publication Critical patent/CN109450643A/zh
Application granted granted Critical
Publication of CN109450643B publication Critical patent/CN109450643B/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26613Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了Android平台上基于native服务实现的签名验签方法,终端应用向云端发送业务请求时,基于业务数据、时间戳、随机数、业务key计算数字签名,将签名序列添加在请求中发送给云端;云端接收到请求后,解析时间戳、比较签名,校验通过的请求进入后续的业务数据处理,否则请求被丢弃,在云端需要将业务回应数据发送给终端时,将基于业务数据、业务key的组合计算数字签名再发送给终端;终端应用接收到回应报文后解析出业务数据、签名序列,调用终端验签接口,验签成功则接收的数据合法,可以安全地使用,否则丢弃回应报文。本发明的方法可保证端云业务数据交互的安全运营,防止伪设备网络攻击、重要数据篡改、关键数据泄露等安全风险。

Description

Android平台上基于native服务实现的签名验签方法
技术领域
本发明涉及Android智能电视端云交互业务的数据安全技术领域,特别涉及一种Android平台上基于native服务实现的签名验签方法。
背景技术
Android智能电视上支持多样化云端服务器部署的运营业务,如主场景从云端获取呈现页面的部署、广告应用从云端获取广告媒体资源、用户的媒体搜索、个性化推荐、做任务赚积分、参与抽奖等服务,都需要电视与云端业务服务器的信息交换来支持。当云端服务器被终端恶意伪装攻击、重放攻击时,很可能被流量冲击导致系统瘫痪;终端请求数据也可能被恶意窃取和篡改,使得终端显示内容异常,甚至非法内容,导致严重的是后果。
因此,智能电视上端云业务中的交互安全非常重要,是提供稳定可靠服务的基础,受到各家智能电视厂商的重视。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种Android平台上基于native服务实现的签名验签方法,可在Android智能电视中实现核心native服务,用于封装各种加解密、hash算法、签名、验签处理;终端应用与业务云端发送请求、获取应答时基于该native服务实现双向验签和关键数据的加密处理,保证端云业务数据交互的安全运营,防止伪设备网络攻击、重要数据篡改、关键数据泄露等安全风险。
为了达到上述的技术效果,本发明采取以下技术方案:
Android平台上基于native服务实现的签名验签方法,具体包括以下步骤:
A.终端应用将业务数据及安全参数传给native服务实施签名,调用成功返回终端数字签名信息;其中,所述安全参数至少包含时间戳、随机数、secret key;
B.终端发送携带安全参数和数字签名信息的业务请求给云端;
C.云端接收到请求报文后解析出业务数据,并基于安全SDK实现验签处理,若验签通过则向终端返回业务数据正常处理,否则,丢弃请求报文;
D.云端对通过验签的请求进行回应处理,对业务数据结合安全参数,调用安全SDK实现云端数字签名;
E.云端将携带数字签名的报文发送回终端;
F.终端应用解析回应报文,并基于native服务实现验签处理,验签不通过则丢弃报文,且只有验签通过的报文,才进入后续的业务数据处理;
终端与业务云端存在双向交互,在本发明的Android平台上基于native服务实现的签名验签方法中,支持双向数字签名与验签处理,可保证业务交互的安全,其具体的双向签名验签处理流程为:终端应用向云端发送业务请求时,基于业务数据、时间戳、随机数、业务key计算数字签名,将签名序列添加在请求中发送给云端;云端接收到请求后,解析时间戳、比较签名,只有校验通过的请求,才进入后续的业务数据处理,否则请求被丢弃,同时,在云端需要将业务回应数据发送给终端时,将基于业务数据、业务key的组合计算数字签名,再发送给终端;终端应用接收到回应报文后解析出业务数据、签名序列,调用终端验签接口,验签成功说明发送云端为合法平台,接收的数据合法,可以安全地使用,否则丢弃回应报文;
本发明的方法通过在Android智能电视中实现核心native服务,用于封装各种加解密、hash算法、签名、验签处理;且终端应用与业务云端发送请求、获取应答时基于该native服务实现双向验签和关键数据的加密处理,从而保证端云业务数据交互的安全运营,实现防止伪设备网络攻击、重要数据篡改、关键数据泄露等安全风险。
进一步地,所述步骤A中进行基于业务数据及安全参数的签名时,具体流程如下:
S101.终端应用组装出要发送请求的业务数据并将业务数据按照键值升序排列后和时间戳、随机数组成字符串序列,然后转为统一的byte数组;
S102.终端应用基于app key获取业务的加密secret key,其中,所述app key为网络传输中可见的明文,与终端应用为一一对应的关系;
S103.终端应用获取native服务,基于byte数组、加密secret key作为输入参数,调用native服务的签名处理接口;
S104.native服务解密secret key,然后组合时间戳、随机数、secret key和业务数据,实施签名;
S105.终端应用从native服务获取返回签名状态、签名序列;
上述app key具体为平台调用终端应用的ID,app key是与业务绑定,不同的业务在终端上是不同的应用来实现,终端应用与app key是一一对应的,通过此参数可识别调用不同的调用者(业务),且secret key是从app key上延伸出来的安全参数,用于参与签名与验签处理;同时,为了保证secret key的使用安全,secret key是基于加密保存,在签名/验签时再解密使用;
进一步地,所述步骤F中的验签处理具体包括以下步骤:
S201.终端应用从接收的回应报文中解析业务数据、签名序列并转为byte数组;
S202.终端应用基于app key获取到安全参数:加密secret key;
S203.终端应用获取native服务,基于byte数组、安全参数作为输入参数,调用native服务的验签接口;
S204.native服务解密所述加密secret key,然后组合安全参数和业务数据,实施签名并输出签名序列;
S205.native服务将步骤S204得到的签名序列与所述步骤S201中的签名序列比较,一致则返回验签成功,否则返回验签失败。
进一步地,在终端上调用native服务的实现流程如下:
S301.终端系统启动时,native服务由init进程启动后台运行中;
S302.终端APP应用层通过binder服务,获取服务实例;
S303.终端基于对应接口Index序号,设置入参调用对应的接口;
S304.终端解析native服务返回的状态和输出结果;
实际中,为了适应多业务运营下终端电视上应用交互安全,每个参与云端交互的应用都需要支持签名与验签处理,因此需要提供通用的签名验签和加解密处理模块,本发明的技术方案基于Android系统各版本平台上的兼容性、多应用调用接口的移植性,采用基于native层实现的服务来替代SDK软件包提供接口调用的方案,将核心算法由系统native层服务实现,具体有以下几点优点:
首先,不同Android版本上兼容,不再受到不同版本上域名空间的限制,其次,native层服务移植或版本升级更加方便,不需要各上层应用逐个更新,最后,算法和密钥都在native层封装和实现,比应用层安全更有保障。
本发明与现有技术相比,具有以下的有益效果:
通过本发明的Android平台上基于native服务实现的签名验签方法,在Android智能设备的端云业务数据交互中,通过关键业务数据的加密处理保证了数据安全;同时,基于业务数据与安全参数组合的签名与验签处理,保证通信双方的身份识别和确认数据完整性;这些安全机制可有效防止数据篡改、重放攻击、以及业务接口被伪装和恶意利用等风险,保障了Android智能电视上端云业务运营安全。
附图说明
图1是本发明的Android平台上基于native服务实现的签名验签方法的流程示意图。
图2是本发明的一个实施例中终端基于业务数据和安全参数的签名流程示意图。
图3是本发明的一个实施例中终端基于业务数据和安全参数的验签流程示意图。
图4是本发明的一个实施例中Android智能设备上应用调用native服务的实现流程示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
Android智能电视上基于电视厂商云端服务器部署的运营性业务中存在频繁的数据交互,需要预防数据被窃取和恶意利用,以及基于交互报文的网络攻击,如防重放攻击(请求被截获并被多次重放)、防数据信息泄漏(如截获用户登录请求,截获到账号/密码等重要信息)等,可基于交互数据的数字签名和加密传输等方式来为业务运营保驾护航。因此,我们要在终端电视上为端云交互的应用提供一套高效安全的双向验签和加解密处理方案。
本实施例在Android智能电视与云端服务器之间安全交互接口设计基础上,提出了native服务实现核心算法,与终端应用配合提供高效、安全的签名、验签、hash散列、加解密算法等接口的调用,为上层应用与云端交互时提供双向签名与验签、数据加密处理。
如图1所示,一种Android平台上基于native服务实现的签名验签方法,具体包括以下步骤:
A.终端应用将业务数据及安全参数传给native服务实施签名,调用成功返回终端数字签名信息;其中,所述安全参数至少包含时间戳、随机数、secret key;
B.终端发送携带安全参数和数字签名信息的业务请求给云端;
C.云端接收到请求报文后解析出业务数据,并基于安全SDK实现验签处理,若验签通过则向终端返回业务数据正常处理,否则,丢弃请求报文;
D.云端对通过验签的请求进行回应处理,对业务数据结合安全参数,调用安全SDK实现云端数字签名;
E.云端将携带数字签名的报文发送回终端;
F.终端应用解析回应报文,并基于native服务实现验签处理,验签不通过则丢弃报文,且只有验签通过的报文,才进入后续的业务数据处理。
为了进一步说明本技术方案,本实施例中,将对以下内容进行具体说明:
本方案中的安全参数的设计实现:
具体的,数字签名具有保护数据完整性作用,如果端云业务交互中只针对业务数据签名,仍然无法防止伪设备窃取利用数据实现的重放攻击,对此,本方案中设计了安全参数,由安全参数与业务数据组合体来实现数字签名,具有更高安全。
在本发明的技术方案中,其终端电视上安全参数的设计具体如下:
app key:app key是平台调用APP应用的ID,在网络传输中可见的明文,不同的业务在终端上是不同的应用来实现,app key与业务绑定且终端应用与app key是一一对应的,通过app key参数可识别到不同的调用者(业务),app key与数字签名的安全参数secret key有关。
secret key:secret key是从app key上延伸出来的安全参数,参与签名与验签处理;为了保证secret key的使用安全,secret key基于加密保存,在签名/验签时再解密使用。
app key与secret key:
app key是作为业务标志来设计的,在接口中明文传输,故签名验签处理时设计了加密secret key。在业务管理服务器平台上负责每项端云交互业务中key的申请和维护。服务器为每项交互业务的终端应用和云端分配一对app key和secret key字符序列,然后将secret key实施加密,将密文secret key分配给终端应用。
终端应用基于自己的业务app key获取密文secret key,在请求发送前签名时,由native服务先将密文secret key解密为明文secret key,然后再用来组装数据计算消息摘要,获得签名序列,一起发送给云端。云端接收到请求后,解析出业务数据和签名,保持与终端一致的签名计算方式,得到新签名。
sign(签名)是接口上携带的数字签名,基于hex编码可视化。签名有两个使用途径:一是请求内携带的签名与之前请求报文的签名比较,甄别出重复请求,直接丢弃不处理;二是云端计算出的签名与报文内携带的签名比较,不同则认为数据被篡改或不完整,验签不通过,丢弃请求不处理。
nonce(随机数):随机数可为数字签名增加安全保障,对于终端设备是唯一的。将该参数信息纳入签名数据中,有助于云端对终端请求的验签处理,随机数是由终端设备信息生成,如基于MAC地址、SN号等生成,本实施例中是基于mac地址生成的随机数。
timestamp(时间戳):即unix时间戳,是从时间服务器获取,终端与云端时间戳来源都是时间服务器,两者的时间在系统启动时就是维持同步状态,同时兼容一定时间差异,例如1分钟,故时间戳用于终端到云端方向上的签名与验签处理,不仅纳入签名处理,还作为评估终端请求是否有效的参数。
如果云端接收到请求时的时间戳与请求内携带的时间戳间隔在一定时间内,才认为是可能有效的请求,否则直接丢弃请求不处理。
终端电视签名的设计与实现:
具体的,终端电视的签名是由业务应用和统一native服务来协同完成的,跟业务相关的由应用层来完成,与业务无关的则由native服务来完成,如加解密和签名验签的具体实现,如图2所示,本实施例中的步骤A中终端基于业务数据和安全参数的签名流程如下:
S1.1终端应用准备数据:业务数据content、获取时间戳timestamp、产生随机数nonce,并将业务数据content按照升序排列后和时间戳、随机数组成字符串序列,然后转为统一的byte数组;
S1.2终端应用获取业务的加密secret key:终端应用基于app key获取到加密secret key、随机数nonce、时间戳timestamp等这些安全参数;
S1.3终端应用获取native服务实例:基于byte数组、加密secret key作为输入参数,调用native服务的签名接口;
S1.4 native服务解密secret key,然后组合安全参数和业务数据,实施签名;
S1.5终端应用获取签名返回状态、签名序列。若签名成功,则在后续步骤中将签名序列加入请求中发送出去。
终端电视验签的设计与实现:
终端电视验签云端回应报文处理,与反方向的验签稍有差异,主要体现在业务报文对目的设备的影响上。在云端到终端的签名验签过程中,时间戳和随机数则没有使用的意义。云端只将业务的加密secret key,解密获取原始secret key,基于该key与回应报文的业务数据组合为待签名数据,获取签名后一起发送给终端。具体的,如图3所示,本实施例中,步骤F中终端接收回应报文后的验签处理如下:
S2.1终端应用提取回应报文中的数据:业务数据content、签名序列并转为byte数组;
S2.2终端应用获取该业务的加密secret key:终端应用基于app key获取到加密secret key;
S2.3终端应用获取native服务实例,基于业务数据content、签名序列、加密secret key作为输入参数,调用native服务的验签接口;
S2.4 native服务解密secret key,然后组合解密的secret key和业务数据,实施签名并输出签名序列;
S2.5 native服务将步骤S2.4输出的签名序列与步骤S2.1提取的签名序列比较,一致则返回验签成功,否则返回验签失败并返回验签结果。
当验签成功后则继续后续的业务报文的解析处理;否则丢弃本次回应报文。
终端电视上应用调用native服务的实现:
为了适应多业务运营下终端电视上应用交互安全,每个参与云端交互的应用都需要支持签名与验签处理,因此需要提供通用的签名验签和加解密处理模块。从Android系统各版本平台上的兼容性、多应用调用接口的移植性本实施例中采用系统中基于native层实现的服务,来替代SDK软件包提供接口调用的方案。将核心算法由系统native层服务实现,有以下几个好处:
1)不同Android版本上兼容,不再受到不同版本上域名空间的限制;
2)native层服务移植或版本升级更加方便,不需要各上层应用逐个更新;
3)算法和密钥都在native层封装和实现,比应用层安全更有保障。
具体的,Android智能终端电视上在native层实现服务,支持各种算法处理,为上层应用提供服务调用的接口,由两部分组成:一是服务端server的实现;二是在开机系统启动时运行该服务。
Native服务运行在Android系统的runtime层,由C/C++语言实现,其中跟系统框架的交互支持由C++实现,核心算法源码则是C源码库,提供了AES/TEA等堆成加密算法、SHA1/SHA256等hash散列算法、RSA非对称算法等。源码工程实现后,在Android平台上编译出可执行文件,即为native服务的server。
Android系统启动时,在init启动脚本中增加service,设置该service为开机时后台启动运行、权限等属性。系统中还集成了C层客户端文件,便于验证集成在系统中的service运行状态,并提供service的版本查询、算法流程验证等功能。
具体的,如图4所示,本实施例中,Android智能设备上应用调用native服务的实现流程如下:
S3.1系统启动时,native服务由init进程启动后台运行中;
S3.2 APP应用层通过binder服务,获取服务实例;
S3.3基于对应接口Index序号,设置入参调用对应的接口;
S3.4解析服务返回的状态和输出结果。
其中,Android平台上runtime层的native服务支持多个应用层进程调用,具有相互独立性,包括C实现的客户端,也包括应用APP中的实例。
由上可知,本发明的Android平台上基于native服务实现的签名验签方法解决的技术问题主要在于在Android智能电视平台上支持多业务端云交互中双向验签,为多个业务应用提供高效、安全的签名、验签、数据加解密处理的调用,其主要用于在Android智能电视中实现核心native服务,用于封装各种加解密、hash算法、签名、验签处理;终端应用与业务云端发送请求、获取应答时基于该native服务实现双向验签和关键数据的加密处理,保证端云业务数据交互的安全运营,防止伪设备网络攻击、重要数据篡改、关键数据泄露等安全风险。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

Claims (2)

1.Android平台上基于native服务实现的签名验签方法,其特征在于,具体包括以下步骤:
A.终端应用将业务数据及安全参数传给native服务实施签名,调用成功返回终端数字签名信息;其中,所述安全参数至少包含时间戳、随机数、secret key;步骤A中终端基于业务数据和安全参数的签名流程如下:
S1.1终端应用准备数据:业务数据content、获取时间戳timestamp、产生随机数nonce,并将业务数据content按照升序排列后和时间戳、随机数组成字符串序列,然后转为统一的byte数组;
S1.2终端应用获取业务的加密secret key:终端应用基于app key获取到加密secretkey、随机数nonce、时间戳timestamp这些安全参数;
S1.3终端应用获取native服务:基于byte数组、加密secret key作为输入参数,调用native服务的签名接口;
S1.4 native服务解密secret key,然后组合安全参数和业务数据,实施签名;
S1.5终端应用获取签名返回状态、签名序列;若签名成功,则在后续步骤中将签名序列加入请求中发送出去;
B.终端发送携带安全参数和数字签名信息的业务请求给云端;
C.云端接收到请求报文后解析出业务数据,并基于安全SDK实现验签处理,若验签通过则向终端返回业务数据正常处理,否则,丢弃请求报文;
D.云端对通过验签的请求进行回应处理,对业务数据结合安全参数,调用安全SDK实现云端数字签名;
E.云端将携带数字签名的报文发送回终端;
F.终端应用解析回应报文,并基于native服务实现验签处理,验签不通过则丢弃报文,且只有验签通过的报文,才进入后续的业务数据处理;步骤F中终端接收回应报文后的验签处理如下:
S2.1终端应用提取回应报文中的数据:业务数据content、签名序列并转为byte数组;
S2.2终端应用获取该业务的加密secret key:终端应用基于app key获取到加密secret key;
S2.3终端应用获取native服务,基于业务数据content、签名序列、加密secret key作为输入参数,调用native服务的验签接口;
S2.4 native服务解密secret key,然后组合解密的secret key和业务数据,实施签名并输出签名序列;
S2.5 native服务将步骤S2.4输出的签名序列与步骤S2.1提取的签名序列比较,一致则返回验签成功,否则返回验签失败并返回验签结果。
2.根据权利要求1所述的Android平台上基于native服务实现的签名验签方法,其特征在于,在终端上调用native服务的实现流程如下:
S301.终端系统启动时,native服务由init进程启动后台运行中;
S302.终端APP应用层通过binder服务,获取服务实例;
S303.终端基于对应接口Index序号,设置入参调用对应的接口;
S304.终端解析native服务返回的状态和输出结果。
CN201811308602.8A 2018-11-05 2018-11-05 Android平台上基于native服务实现的签名验签方法 Active CN109450643B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811308602.8A CN109450643B (zh) 2018-11-05 2018-11-05 Android平台上基于native服务实现的签名验签方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811308602.8A CN109450643B (zh) 2018-11-05 2018-11-05 Android平台上基于native服务实现的签名验签方法

Publications (2)

Publication Number Publication Date
CN109450643A CN109450643A (zh) 2019-03-08
CN109450643B true CN109450643B (zh) 2021-06-22

Family

ID=65550615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811308602.8A Active CN109450643B (zh) 2018-11-05 2018-11-05 Android平台上基于native服务实现的签名验签方法

Country Status (1)

Country Link
CN (1) CN109450643B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110290102A (zh) * 2019-04-26 2019-09-27 武汉众邦银行股份有限公司 基于应用的业务安全系统及方法
CN115412282A (zh) * 2022-06-28 2022-11-29 浪潮云信息技术股份公司 一种基于mqtt协议的报文安全校验方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924731B2 (en) * 2007-09-11 2014-12-30 Lg Electronics Inc. Secure signing method, secure authentication method and IPTV system
CN103685138B (zh) * 2012-08-30 2016-12-21 卓望数码技术(深圳)有限公司 移动互联网上的Android平台应用软件的认证方法和系统
CN105025470A (zh) * 2014-04-18 2015-11-04 中国移动通信集团公司 一种业务请求处理方法、系统及相关装置
CN103955652B (zh) * 2014-04-30 2016-08-24 武汉库百网络技术有限公司 一种基于Andriod设备认证的文件加密方法及装置
CN106789841B (zh) * 2015-11-23 2019-12-06 中国电信股份有限公司 业务处理方法、终端、服务器以及系统
CN107426593A (zh) * 2017-08-08 2017-12-01 四川长虹电器股份有限公司 智能电视上快速播放数字电视的实现方法及开机启动方法
CN108021805A (zh) * 2017-12-18 2018-05-11 上海众人网络安全技术有限公司 检测Android应用程序运行环境的方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN109450643A (zh) 2019-03-08

Similar Documents

Publication Publication Date Title
CN108092776B (zh) 一种基于身份认证服务器和身份认证令牌的系统
CN102891843B (zh) 本地服务单元认证安卓客户端应用程序的方法
CN114726643B (zh) 云平台上的数据存储、访问方法及装置
CN108600222B (zh) 客户端应用与可信应用的通信方法、系统以及终端
CN114900338B (zh) 一种加密解密方法、装置、设备和介质
CN109831311B (zh) 一种服务器验证方法、系统、用户终端及可读存储介质
CN113992346B (zh) 一种基于国密加固的安全云桌面的实现方法
CN111884811B (zh) 一种基于区块链的数据存证方法和数据存证平台
CN111080299B (zh) 一种交易信息的防抵赖方法及客户端、服务器
CN112187466B (zh) 一种身份管理方法、装置、设备及存储介质
CN114266033A (zh) 验证码生成方法、装置、验证码登录系统及电子设备
CN112199622A (zh) 页面跳转方法、系统及存储介质
CN112765626A (zh) 基于托管密钥授权签名方法、装置、系统及存储介质
CN106549757B (zh) Web服务的数据真伪识别方法、服务端和客户端
CN109450643B (zh) Android平台上基于native服务实现的签名验签方法
CN115150821A (zh) 离线包的传输、存储方法及装置
CN111241492A (zh) 一种产品多租户安全授信方法、系统及电子设备
CN114499875A (zh) 业务数据处理方法、装置、计算机设备和存储介质
CN111901287B (zh) 一种为轻应用提供加密信息的方法、装置和智能设备
CN110890979B (zh) 堡垒机自动部署方法、装置、设备及介质
CN115801275A (zh) 一种api接口加密签名方法
CN112671691B (zh) 一种数据验证系统
CN113114468B (zh) 基于md5+aes混合的加密防篡改方法及系统
CN111953495B (zh) 一种电子签名混合云场景下无私钥签署方法
CN116599772B (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