公安部第一研究所于炳虎获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉公安部第一研究所申请的专利一种基于JavaScript实现应用签名验签的方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN115659318B 。
龙图腾网通过国家知识产权局官网在2025-07-01发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202211331375.7,技术领域涉及:G06F21/51;该发明授权一种基于JavaScript实现应用签名验签的方法是由于炳虎;周昕;蹇诗婕;赵荣辉;樊子民;皮文超设计研发完成,并于2022-10-28向国家知识产权局提交的专利申请。
本一种基于JavaScript实现应用签名验签的方法在说明书摘要公布了:本发明公开了一种基于JavaScript实现应用签名验签的方法,包括应用签名和应用验签两部分。基于国密算法SM3SM2、签名验签技术和代码保护处理,能够对JavaScript代码文件进行签名、验签,显著降低非法篡改、恶意利用、恶意攻击等安全风险。可以应用于防篡改、防盗用、防分析等应用场景。弥补了当前Web应用签名验签机制的空白,能够满足应用安全体系建设的急迫需求。
本发明授权一种基于JavaScript实现应用签名验签的方法在权利要求书中公布了:1.一种基于JavaScript实现应用签名验签的方法,其特征在于,包括应用签名和应用验签两部分; 1)应用签名 应用签名服务部署于签名服务侧,对Web应用程序包进行拆包解析,遍历查找所有JavaScript文件;针对每个JavaScript文件,首先对代码进行基础保护处理,压缩并混淆,然后使用应用签名专用证书,基于国密商用证书和算法,对JavaScript文件进行签名处理,生成代码签名值;创建自定义的签名校验标识,签名校验标识中包含固定标识、签名算法和版本信息、签名属性数据和签名校验标识的签名值;创建用于定位查找相关数据的签名魔数值;然后按顺序将签名校验标识、代码签名值、签名魔数值、经基础保护处理的原始代码数据合入到原始JavaScript文件中;完成上述处理后,重新按程序包的原格式对程序进行打包; 2)应用验签 本地客户端Web容器集成应用验签组件,应用验签组件对每一个拉取至本地客户端Web容器的JavaScript文件执行数据验签与签名属性校验;应用验签组件逻辑基于JavaScript代码实现;若验签失败或签名属性校验失败,则禁止加载此JavaScript文件,并向用户给出相应提示;若验签通过并且签名属性校验通过,则允许加载执行对应JavaScript文件;验签的具体过程为: 2.1)本地客户端Web容器请求到JavaScript文件时,应用验签组件截获JavaScript文件并处理; 2.2)首先获取256字节长度的签名校验标识,计算解析出签名校验标识的签名值SJT,验证签名校验标识是否被篡改,验证通过后,对签名校验标识前128字节进行处理,解析得到64字节的签名属性数据,判断其包含的签名属性值和或证书属性值是否符合预期; 2.3)完成步骤2.2)的校验后,查找签名魔数值,根据其首字节偏移量和签名校验标识的末字节偏移量,计算解析出代码签名值; 2.4)查找签名魔数值,根据其末字节偏移量,计算解析出JavaScript原始代码数据; 2.5)根据获取到的代码签名值和原始代码数据,使用国密证书和验签算法,验证是否通过,如果未通过验证,则拒绝执行此JavaScript文件,并给出用户提示;如果通过验证则继续执行下步操作; 应用签名的具体过程为: 1.1)拆包遍历与分析:签名服务获取程序压缩包文件后,解压压缩文件,并遍历以js结尾的文件,针对每一个JavaScript文件,进行词法分析和语法分析; 1.2)代码保护与重构:对JavaScript文件中的变量名进行混淆重命名,并压缩代码生成第一次重构后的JavaScript文件; 1.3)计算第一次重构后的JavaScript文件的签名值:使用国密算法SM3SM2对第一次重构后的JavaScript文件进行全量签名,生成代码签名值SDT; 1.4)计算签名校验标识:签名校验标识的长度定义为256位,按顺序排列组成,依次为固定标识、签名算法和版本信息、签名属性数据和签名校验标识的签名值SJT;固定标识长度为16字节,签名算法和版本信息长度为40字节,签名属性数据长度为64字节,签名数据长度为8字节,签名校验标识的签名值SJT长度为128字节; 1.5)合入生成签名文件:按顺序插入签名校验标识、代码签名值SDT,再插入16字节固定长度的签名魔数值,此为自定义扩展数据,用于配合签名校验标识查找验证签名数据,最后插入经代码保护处理后的JavaScript原始代码数据;完成上述四部分数据合入后,进行二次压缩,生成第二次重构后的JavaScript文件。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人公安部第一研究所,其通讯地址为:100048 北京市海淀区首都体育馆南路一号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。