发明名称 一种多方授权的APK签名方法及系统
摘要 本发明提供一种多方授权的APK签名方法及系统,包括不同终端设备厂商签名服务器用各自的工作私钥对包括原始APK文件的被签名数据进行签名生成不同终端设备厂商签名数据,将厂商工作公钥证书放入终端设备厂商签名数据中或预装在终端设备中;收单机构签名服务器将不同终端设备厂商签名数据按照签名时间的先后顺序采用DER格式组成已签名APK文件;已签名APK文件包括原始APK文件和签名文件头,签名文件头包括用于标识文件已经过签名操作和标识终端设备厂商签名数据的个数及所述签名数据在已签名APK文件中的具体位置;终端设备获取已签名APK文件并判断已签名APK文件中有对应的终端设备厂商签名数据后定位终端设备厂商签名数据并验证,验证通过后允许安装及运行。
申请公布号 CN103944903A 申请公布日期 2014.07.23
申请号 CN201410165106.7 申请日期 2014.04.23
申请人 福建联迪商用设备有限公司 发明人 苏文龙;孟陆强;陈菲菲
分类号 H04L29/06(2006.01)I;H04L29/08(2006.01)I;G07G1/00(2006.01)I;G06F9/445(2006.01)I;G06F21/51(2013.01)I 主分类号 H04L29/06(2006.01)I
代理机构 福州市鼓楼区博深专利代理事务所(普通合伙) 35214 代理人 林志峥
主权项 一种多方授权的APK签名方法,其特征在于,包括:S1:不同终端设备厂商CA服务器各自生成厂商根公私钥对,将厂商根公钥生成厂商根公钥证书;不同终端设备厂商签名服务器各自生成厂商工作公私钥对,将工作公钥分发至各自的厂商CA服务器,厂商CA服务器使用厂商根私钥对厂商工作公钥签名生成厂商工作公钥证书;S2:不同终端设备厂商签名服务器使用各自的厂商工作私钥对包括原始APK文件的被签名数据签名生成不同终端设备厂商签名数据,根据不同终端设备厂商的验签机制将各自的厂商工作公钥证书放入各自生成的厂商签名数据中或预装在终端设备中;不同终端设备厂商将各自的厂商根公钥证书预装在各自的终端设备中;S3:收单机构签名服务器将不同终端设备厂商签名服务器生成的不同厂商签名数据按照签名时间的先后顺序采用DER格式组成已签名APK文件;其中,所述已签名APK文件包括原始APK文件和签名文件头,所述签名文件头包括基础文件和扩展文件,所述基础文件用于标识文件已经过签名操作;所述扩展文件用于标识不同终端设备各自的厂商签名数据的个数及不同终端设备各自的厂商签名数据在已签名APK文件中的具体位置;S4:终端设备从所述收单机构签名服务器获取已签名APK文件,判断已签名APK文件中是否有与所述终端设备对应的终端设备厂商生成的厂商签名数据,当判定有对应的厂商签名数据后,终端设备通过所述已签名APK文件的文件头定位所述厂商签名数据;S5:终端设备获取厂商根公钥证书后使用厂商根公钥证书验证厂商签名数据中厂商工作公钥证书的合法性,验证合法后终端设备提取厂商工作公钥证书中的工作公钥验证签名数据,验证通过后允许安装或运行。
地址 350000 福建省福州市软件大道89号福州软件园一区23号楼