CN109241484A - 一种基于加密技术的网页数据的发送方法及设备 - Google Patents

一种基于加密技术的网页数据的发送方法及设备 Download PDF

Info

Publication number
CN109241484A
CN109241484A CN201811039189.XA CN201811039189A CN109241484A CN 109241484 A CN109241484 A CN 109241484A CN 201811039189 A CN201811039189 A CN 201811039189A CN 109241484 A CN109241484 A CN 109241484A
Authority
CN
China
Prior art keywords
source code
syntax tree
abstract syntax
grammer
webpage
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
Application number
CN201811039189.XA
Other languages
English (en)
Other versions
CN109241484B (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201811039189.XA priority Critical patent/CN109241484B/zh
Publication of CN109241484A publication Critical patent/CN109241484A/zh
Application granted granted Critical
Publication of CN109241484B publication Critical patent/CN109241484B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Abstract

本发明适用于信息处理技术领域,提供了一种基于加密技术的网页数据的发送方法及设备,包括:若接收到网页显示请求,则根据网页显示请求包含的网页标识,获取网页标识对应的网页源码数据;通过语法分析确定网页源码数据包含的源码关键词,并基于源码关键词将网页源码数据转换为一阶抽象语法树;通过语义分析将一阶抽象语法树内的各个源码关键词划分为至少一个语法组,并基于语法组将一阶抽象语法树转换为二阶抽象语法树;将加密后的二阶抽象语法树发送给网页显示请求对应的用户终端。本发明通过语法抽离和语义抽离将网页源码数据中的代码逻辑进行抽象处理,提高了发送过程的保密性与安全性,避免被不法分子盗取核心源码数据以及对源码数据进行篡改。

Description

一种基于加密技术的网页数据的发送方法及设备
技术领域
本发明属于信息处理技术领域,尤其涉及一种基于加密技术的网页数据的发送方法及设备。
背景技术
网页,作为现今重要的网络信息展示载体,被广泛应用于各个领域,因此如何安全稳定地显示网页则显得尤为重要。现有的网页数据的发送方法,一般是将网页的源码数据直接发送给需要进行网页显示的显示方,即用户终端侧,由于与用户终端进行传输的过程中是直接使用源码数据进行发送,不法分子可以随意篡改源码数据的内容,导入网页的核心源码数据并通过修改源码数据加入网络病毒等,从而造成信息泄露,以及增加网页展示过程中的安全隐患。由此可见,现有的网页数据的发送方法,保密性以及安全性较低。
发明内容
有鉴于此,本发明实施例提供了一种基于加密技术的网页数据的发送方法及设备,以解决现有的网页数据的发送方法,容易被不法分子随意篡改源码数据的内容,保密性以及安全性较低的问题。
本发明实施例的第一方面提供了一种基于加密技术的网页数据的发送方法,包括:
获取应用程序的接口信息以及代码文件;所述接口信息包括所述应用程序中各个本地接口的接口描述信息;
解析所述代码文件,确定所述应用程序包含的调用链接;
基于所述调用链接,与调用服务器建立通信连接,并获取所述应用程序访问所述调用服务器时所使用的调用接口的调用接口信息;
根据所述接口描述信息以及所述调用接口信息,分别确定各个所述本地接口关联的所述调用接口;
接收所述调用服务器通过所述调用接口发送的调用数据,并根据所述调用数据对该调用接口关联的本地接口进行校验。
本发明实施例的第二方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面的各个步骤。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面的各个步骤。
实施本发明实施例提供的一种基于加密技术的网页数据的发送方法及设备具有以下有益效果:
本发明实施例中,基于网页源码数据中的源码关键词,将网页源码数据转换为一阶抽象语法树,并进一步通过语义分析,对网页源码数据中不同语段之间的逻辑特征进行进一步抽离,得到二阶抽象语法树,将通过加密后的二阶抽象语法树,将网页数据发送给用户终端。上述过程并非直接发送网页源码数据,而是通过语法抽离和语义抽离将网页源码数据中的代码逻辑进行抽象处理,提高了发送过程的保密性以及安全性,避免被不法分子盗取核心源码数据以及对源码数据进行篡改。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的一种基于加密技术的网页数据的发送方法的实现流程图;
图2是本发明第二实施例提供的一种基于加密技术的网页数据的发送方法S103具体实现流程图;
图3是本发明第三实施例提供的一种基于加密技术的网页数据的发送方法S104具体实现流程图;
图4是本发明第四实施例提供的一种基于加密技术的网页数据的发送方法具体实现流程图;
图5是本发明第五实施例提供的一种基于加密技术的网页数据的发送方法S105具体实现流程图;
图6是本发明一实施例提供的一种终端设备的结构框图;
图7是本发明另一实施例提供的一种终端设备的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过提取网页显示请求中的网页标识,并获取该网页标识对应的网页源码数据,继而通过语法分析算法确定网页源码数据中的源码关键词,该源码关键词能够体现网页源码数据所使用的语法特征,并根据提取得到的源码关键词对网页源码数据进行转换,得到一阶抽象语法树,对语法特征进行抽象化,为了进一步提高所传输的数据的保密性,还会根据预设的语义分析对一阶抽象语法树中的源码关键词进行划分得到语法组,其中语义分析算法主要是关注不同语段之间的逻辑关联性,从而能够对网页源码数据中不同语段之间的逻辑特征进行进一步抽离,得到二阶抽象语法树,最后通过对该二阶抽象语法树进行加密操作,并将加密后的二阶抽象语法树发送给用户终端,完成网页数据的发送过程,解决了现有的网页数据的发送方法,容易被不法分子随意篡改源码数据的内容,保密性以及安全性较低的问题。
在本发明实施例中,流程的执行主体为终端设备。该终端设备包括但不限于:服务器、计算机、智能手机以及平板电脑等具有网页数据的发送功能的设备。特别地,该终端设备可以为网页服务器,响应各个用户终端发起的网页显示请求,并通过本发明对网页数据进行处理后再发送给用户终端进行网页显示。
图1示出了本发明第一实施例提供的基于加密技术的网页数据的发送方法的实现流程图,详述如下:
在S101中,若接收到网页显示请求,则根据所述网页显示请求包含的网页标识,获取所述网页标识对应的网页源码数据。
在本实施例中,用户终端可以通过在浏览器中输入网页的域名或网络地址,并点击跳转按钮的方式,生成一网页显示请求,并通过用户终端与终端设备之间建立的通信链路,将该生成的网页显示请求发送给终端设备。终端设备在接收到该网页显示请求后,会提取该网页显示请求中所包含的网页标识,确定用户终端所需显示的网页页面,并从网页数据库中提取该网页标识对应的网页源码数据。
可选地,若用户在某一网页页面中点击对应的链接,从而需要将网页页面切换至另一页面的情况下,该网页显示请求中的网页标识还可以为用户在网页页面中进行点击操作的坐标位置。终端设备在接收到该网页页面请求后,会根据该用户终端当前显示的网页页面以及网页页面请求中包含的坐标位置,确定用户所点击的网页页面,并获取该所需跳转的网页页面的源码数据。
可选地,在S101之前还包括:网页显示请求还携带有访问渠道,该访问渠道用于表示用户终端是通过哪种应用发送网页显示请求的。若用户终端是通过终端设备配套的客户端发起网页显示请求,即该用户终端已经配置有对发送的网页数据进行解析的预设算法,在该情况下,终端设备可以直接执行S101至S105的相关操作;若用户终端是通过内置浏览器发起网页显示请求,则识别该用户终端是否首次发起网页显示请求,若是,则将语法解析算法、语义解析算法以及解密算法发送给用户终端,以便在后续在将网页数据发送给用户终端后,可以正确解析该网页数据。
在S102中,通过语法分析确定所述网页源码数据包含的源码关键词,并基于所述源码关键词将所述网页源码数据转换为一阶抽象语法树。
在本实施例中,终端设备在获取了网页页面的网页源码数据后,为了确保传输过程中不易被不法分子盗取网页页面的源码,需要将源码数据的语法层面的逻辑以及语义层面的代码逻辑进行抽离。因此,终端设备会通过预审的语法分析算法,确定该网页源码数据中,哪些字符串是符合预设的语法规则,将满足预设的语法规则的字符串提取出来,作为源码关键词。具体地,该语法分析算法具体是用于检测各个字符以及字符串之间是否符合词语结构,例如不同字符之间的关联性是否大于预设阈值,例如“回”和“答”两个字符之间的关联性较强,则可以识别为符合词语结构,提取作为一个源码关键词;又例如某些字符串会符合预设的词组结构,例如“both”和“and”两个字符串是成对出现的,从而可以将上述两个字符串是否别一个源码关键词。由此可见,通过预设的语法识别规则,将网页源码数据中符合词语结构的字符串进行组合,生成源码关键词,从而使得在词语结构层面对网页源码数据进行抽象化。
在本实施例中,终端设备在确定了各个源码关键词后,可以将网页源码数据转换为一阶抽象语法树,从而将词语结构在一阶抽象语法树上不可见。可选地,该一阶抽象语法树的生成过程可以为:根据各个源码关键词在预设的关键词库中的序号,在网页源码数据中将源码关键词替换为其对应的序号,以使源码关键词在一阶抽象语法树中进行隐藏。当然,还可以通过其他预设词语进行替换,例如将源码关键词导入预设的哈希函数内,确定该源码关键词对应的哈希关键词,并将网页源码数据中给的所有源码关键词均替换为与之对应的哈希关键词,生成一阶抽象语法树。
可选地,在进行语法分析之前还包括:终端设备可以通过预设的混淆加密算法对网页源码数据进行混淆加密操作。例如,通过在网页源码数据的多个预设位置插入预设字符串,和/或将满足预设规则的字符串替换为预设字符,从而提高了进行发送的网页数据的安全性以及保密性。
在S103中,通过语义分析将所述一阶抽象语法树内的各个源码关键词划分为至少一个语法组,并基于所述语法组将所述一阶抽象语法树转换为二阶抽象语法树。
在本实施例中,一阶抽象语法树对词语结构进行抽离后,还需要对不同语段之间的语法结构进行抽离,从而提高发送的网页数据的安全性以及保密性。基于此,终端设备根据识别得到的语法关键词,确定该网页源码数据中所使用的语法结构,从而将属于同一个语法结构的源码关键词划分到同一个语法组内。例如,对于循环嵌套语句,是通过“if…when…”结构实现的,即该循环嵌套语句中包含了关键词“if”以及关键词“when”,因而可以将上述两个源码关键词划分到同一个语法组内。对每个识别得到的源码关键词均进行上述操作,从而可以确定网页源码数据中包含的语法结构,从而能够确定不同语段之间的关联关系。
在本实施例中,一个语法组包含至少一个源码关键词,即一个源码关键词也可以构成一个语法结构,对于较为复杂的语法结构,则需要多个源码关键词将不同语句进行关联,因此一个语法组还可以包含两个或以上的源码关键词。
可选地,终端设备将源码关键词划分为多个语法组的方式可以为:终端设备获取各个源码关键词所在的语段代码,将任一语段代码与其他语段代码进行关联度计算,确定不同语段代码之间是否符合预设的语法条件,若是,则识别上述两个源码关键词属于同一语法组,从而划分得到多个语法组。
在本实施例中,终端设备根据识别得到的语法组,确定各个语法组对应的语法结构,并从一阶抽象语法树中标记各个语法结构,根据各个语法结构预设的语法分离算法,对各个语法组所在的代码段进行语法抽离,从而得到二阶抽象语法树。举例性地,对于“if…when…”语句,其对应的语法分离算法为语段混淆算法,终端设备定位“if…when…”语句所在的语段,并基于语段混淆算法确定多个混淆字符插入点,将预设的混淆字符插入至各个预设的混淆字符插入点内,以使“if…when…”的语法不可见。其他语法组也可以通过不同的语法抽离算法进行处理,从而得到二阶抽象语法树。
在S104中,对所述二阶抽象语法树进行加密操作,生成加密后的二阶抽象语法树。
在本实施例中,为了避免不法用户对二阶抽象语法树直接进行解析,从而盗取网页数据的核心代码,终端设备还会通过加密算法对二阶抽象语法树进行加密操作,生成加密后的二阶抽象语法树,进一步提高网页数据的解析难度,从而提高网页数据的安全性。
可选地,终端设备可以通过随机密钥生成算法,生成随机密钥,并通过该随机密钥对二阶抽象语法树进行加密操作。在解密完成后发送网页数据前,终端设备可以将该随机密钥加载至数据同步帧内,从而用户终端在接收到网页数据后,可以通过在数据同步帧内的随机密钥对网页数据进行解密。当然,终端设备还可以采用固定密钥,在该情况下,终端设备同样可以通过用户终端发送网页显示请求的渠道,判断是否需要将固定密钥发送给终端设备,具体发送渠道的判断方式可以参照S101的判断方式,在此不再赘述。
在S105中,将所述加密后的二阶抽象语法树发送给所述网页显示请求对应的用户终端,以在所述用户终端的界面上生成对应的网页页面。
在本实施例中,终端设备对网页源码数据进行两次语法抽离操作并进行加密后,网页源码数据中的语法、语义特征均被抽离,从而不易被解析以及盗取,并通过加密算法进行加密保护,大大增大了解析的难度,可将加密后的二阶抽象语法树作为发送给用户终端的网页数据。
在本实施例中,终端设备可以通过与用户终端之间的通信链路,将加密后的二阶抽象语法树发送给用户终端,用户终端在接收到该二阶抽象语法树后,首先通过预设的密钥对该加密后的二阶抽象语法树进行加密操作,后续通过语义还原算法以及语法还原算法恢复二阶抽象语法树中的语义特征以及语法特征,从而得到网页源码数据,并基于该网页源码数据在用户终端的界面上生成对应的网页页面,完成网页页面的显示操作。
以上可以看出,本发明实施例提供的一种网页数据的发送方法通过提取网页显示请求中的网页标识,并获取该网页标识对应的网页源码数据,继而通过语法分析算法确定网页源码数据中的源码关键词,该源码关键词能够体现网页源码数据所使用的语法特征,并根据提取得到的源码关键词对网页源码数据进行转换,得到一阶抽象语法树,对语法特征进行抽象化,为了进一步提高所传输的数据的保密性,还会根据预设的语义分析对一阶抽象语法树中的源码关键词进行划分得到语法组,其中语义分析算法主要是关注不同语段之间的逻辑关联性,从而能够对网页源码数据中不同语段之间的逻辑特征进行进一步抽离,得到二阶抽象语法树,最后通过对该二阶抽象语法树进行加密操作,并将加密后的二阶抽象语法树发送给用户终端,完成网页数据的发送过程。与现有的网页数据的发送方法相比,不再是直接发送源码数据,而是将网页源码数据进行语法抽离以及语义抽离后在进行发送,将源码数据中代码的逻辑进行抽象化,提高了发送过程的保密性以及安全性,避免被不法分子盗取核心源码数据以及对源码数据进行篡改。
图2示出了本发明第二实施例提供的一种基于加密技术的网页数据的发送方法S103的具体实现流程图。参见图2所示,相对于图1述实施例,本实施例提供的一种网页数据的发送方法中S103包括:S1031~S1033,具体详述如下:
在S1031中,根据预设的通用词库,从各个所述源码关键词中选取通用关键词。
在本实施例中,由于网页源码数据中提取得到的源码关键词中,可能会存在部分用户自定义的关键词,例如变量的名称以及接口的名称,该类型的关键词是对于不同网页源码数据其命名均不同,即是具有个性特性的关键性,并不具备通用性,即在其他网页源码数据中所代表的含义并不一定相同。而除了用户的自定义的关键词外,源码关键词中还包含了通用关键词,例如固定的语法特征词以及对于变量属性进行定义的关键词。例如某一网页源码数据中某一语段如下“int b,c;int a=b mod c;”其中,“int”即用于限定“a、b、c”三个变量均为整型变量,对于各个网页源码数据该“int”的定义是具有通用性的,对于该类型的源码关键词,终端设备会识别为通用关键词。
在本实施例中,终端设备设置有通用词库,记录了与语法相关的各个标准关键词。终端设备将各个源码关键词与通用词库中的各个标准关键词进行匹配,判断该源码关键词是否记录于该通用词库内,若是,则识别该源码关键词为通用关键词;反之,若该源码关键词不存在与通用词库内,则识别为自定义关键词。
可选地,在S1031之前,终端设备可以与上位机服务器进行通信,获取当前时刻的通用词库的版本编号,判断是否需要对本地的通用词库进行更新。若当前时刻的版本编号与本地的版本编号不一致,则对本地的通用词库进行增量更新,以保证本地的通用词库与上位机服务器当前时刻的通用词库的版本一致,从而在识别通用关键词时,能够提高识别的准确率。
在S1032中,获取各个通用关键词的语法句型模板,并将所述一阶抽象语法树分别与各个所述语法句型模板进行匹配,根据匹配结果确定所述一阶抽象语法树中包含的语法句型。
在本实施例中,由于识别得到的通用关键词具体为与语法相关的关键词,因此每个通用关键词对应一个语法句型模板,即用于表示出现该通用关键词,网页源代码中会存在那类型的语法句型。例如某一通用关键词“when”,正常然而会出现在语法句型“if…when…”之中,因而通用关键词“when”会对应一个语法句型模板。但需要进一步确认该网页源码数据中是否存在该语法句型模板,因此需要将该语法句型模板与网页源码数据转换后的一阶抽象语法树进行匹配,判断该一阶抽象语法树中是否存在与语法句型模板一致的代码语段,若存在,则识别匹配成功;若一阶抽象语法树中不存在与语法句型模板一致的代码语段,即一阶抽象语法树中各个语段的结构均与语法句型模板不一致,则可能该通用关键词并非具有语法实义,而是用于自定义声明的变量或函数名。
在本实施例中,若匹配结果为成功,则识别该一阶抽象语法树中包含该语法句型模板对应的语法句型,并从一阶抽象语法树中提取与该语法句型模板匹配的代码语段,作为该语法句型模板对应的语法句型。反之,若匹配结果为失败,则识别该一阶抽象语法树不包含该语法句型模板对应的语法句型,并判定该通用关键词为无效关键词。
在S1033中,根据所述语法句型,将各个所述源码关键词划分为至少一个所述语法组;每个所述语法组内的所述源码关键词属于同一所述语法句型。
在本实施例中,在确定了一阶抽象语法树中包含的语法句型后,会确定该语法句型中所包含的源码关键词,并将在同一语法句型中的源码关键词识别为同一语法组,从而可以将所有源码关键词基于所属的语法句型,划分为多个语法组。
在本发明实施例中,通过确定源码关键词中的通用关键词,从而确定一阶抽象语法树中包含的语法句型,从而将各个源码关键词进行分组,进而对一阶抽象语法树进一步进行语义抽离,从而提高了抽离后二阶抽象语法树的保密性。
图3示出了本发明第三实施例提供的一种基于加密技术的网页数据的发送方法S104的具体实现流程图。参见图3所示,相对于图1所述实施例,本实施例提供的一种网页数据的发送方法中S104包括:S1041~S1042,具体详述如下:
在S1041中,将加密密钥划分为N个子密钥,并根据各个所述子密钥在所述加密密钥的位置,确定各个所述子密钥的加密次序;所述N为大于或等于2的正整数。
在本实施例中,对二阶抽象语法树进行加密的方法具体为循环加密方法,即通过多个密钥循环对二阶抽象语法树进行加密,从而能够提高二阶抽象语法树的保密性。相应地,通过多重循环加密方法进行加密的数据,进行解密操作时,也需要利用多个密钥,依次对二阶抽象语法树进行解密,才能成功对二阶抽象语法树进行加密。即本实施例中终端设备会获取得到加密密钥是基于多个子密钥集成得到的,因此可以通过预设的密钥划分算法,对该加密密钥进行拆分,划分为N个子密钥。
在本实施例中,预设的密钥分割算法可以为基于预设的分割节点,将加密密钥分割为多段数据,每段数据作为一个子密钥。例如,终端设备以每4个字节为一个分割节点,将一个数据量为64字节的目标密钥分割为16个区间的数据,每个区间内包含的数据作为一个子密钥,从而得到16个子密钥。当然,还可以通过其他划分算法对目标密钥进行分割,将密钥中的各个字符依次导入N个队列中,导入完成后,每个队列所包含的字符则作为分割后的子密钥,队列的序号则为该子密钥的编号。
在本实施例中,由于循环加密算法中是基于固定的次序对二阶抽象语法树进行加密的,因此执行加密操作时,也需要基于一定的加密次序对目二阶抽象语法树加密,在本实施例中,加密次序与该子密钥在加密密钥中的位置相关,可以基于在加密密钥的先后次序,确定各个子密钥的加密次序,即子密钥在密钥中的位置越靠前,其对应的加密次序也相应靠前。
需要说明的是,由于加密操作以及解密操作是共同同一加密密钥的,因此用户终端在接收到加密后的二阶抽象语法树后,需要对二阶抽象语法树进行解密的操作,同样可以基于密钥分割算法,对加密密钥分割为N个子密钥,并基于各个子密钥的逆序,对目标文件进行解密,实现与加密操作相互匹配。
在S1042中,基于所述加密次序,依次通过各个所述子密钥对所述二阶抽象语法树执行循环加密操作,将经过N次循环加密的所述二阶抽象语法树作为所述加密后的二阶抽象语法树;所述循环加密操作包括:行列移位操作和/或字符替代操作。
在本实施例中,终端设备会基于各个子密钥的加密次序,由加密次序的数值最小的子密钥开始对二阶抽象语法树进行加密,在加密成功后,输出第一加密数据,并再通过加密次序的数值为2的子密钥对第一加密数据进行加密,在加密成功后,输出第三加密数据,依次类推,直到第N个子密钥对第N-1加密文件进行加密后,输出第N加密文件,并识别为加密后的目标文件。
需要说明的是,循环加密操作包括移位复原操作和/或替代字符过滤操作。移位复原操作具体为:由于在通过子密钥对目标文件进行加密的过程中,需要对某行或某几行的数据进行移位,对某列或某几列的数据进行混淆,因此在解密操作时,需要对预设移位的行复原至移位前的状态,将执行混淆操作的列还原为混淆前的状态,上述操作即为移位复原操作。具体移位的行数以及列数可以从子密钥中提取得到。替代字符过来操作具体为:通过子密钥对二阶抽象语法树进行加密的过程中,会在二阶抽象语法树中查找符合预设规律的字符或字符串,将上述字符或字符串替换为预设的混淆字符,因此在进行解密操作的过程中,用户终端会查询加密后二阶抽象语法树中包含的混淆字符,将被混淆字符替代的字符或字符串还原为原本的状态,实现替代字符过滤的目的。
在本实施例中,每个子密钥所包含的加密操作可以相同,也可以不同,具体基于子密钥中的加密响应方式字段的内容确定。即第一子密钥对应的循环加密操作可以包含替代字符过滤操作,而第二子密钥对应的循环加密操作可以包含移位复原操作;而第三子密钥对应的循环加密操作可以既包含替代字符过滤操作以及移位复原操作。在此不一一限定。
在本发明实施例中,通过多重循环加密技术对二阶抽象语法树进行加密,能够有效提高二阶抽象语法树的保密性。
图4示出了本发明第四实施例提供的一种基于加密技术的网页数据的发送方法的具体实现流程图。参见图4所示,相对于图1-图3所述实施例,本实施例提供的一种网页数据的发送方法中在所述通过语法分析确定所述网页源码数据包含的源码关键词之前,还包括:S401~S402,具体详述如下:
进一步地,在所述通过语法分析确定所述网页源码数据包含的源码关键词之前,还包括:
在S401中,从预设的无效字符库内随机选取M个无效字符串;M为大于或等于1的正整数。
在本实施例中,终端设备在对网页源码数据进行语法抽离之前,可以首先对网页源码数据进行预处理,以降低整个网页源码数据的可读性,从而能够避免非法用户直接从网页源码数据中获取到网页页面的核心代码,提高网页页面的安全性。基于此,终端设备会从无效字符库中选取M个无效字符,其中该M的数值可以由用网页服务器的管理员进行设置,还可以根据网页源码数据的数据量,将该数据量导入预设的哈希函数,确定网页源码数据对应的M值,其中网页源码数据越大,则该M的数值则越大,即需要插入的无效字符串的个数将越多;反之,若该源码数据的数据量越小,则该M的数值则越小。
在S402中,基于所述网页源码数据中预设M个的字符插入坐标,分别将各个所述无效字符串插入至所述网页源码数据内。
在本实施例中,终端设备在确定了M个无效字符串后,会在源码数据中为每个无效字符串确定一个对应的字符插入坐标,并将该无效字符串插入到预设的字符插入坐标所在的位置,从而实现对原有的网页源码数据结构进行重新排布,降低网页源码数据的可读性。
在本发明实施例中,通过选取预设的无效字符串,并插入到网页源码数据中,从而能够减低源码数据的可读性,便于对网页源码数据的代码结构进行隐藏,提高了网页数据发送的保密性以及可靠性。
图5示出了本发明第五实施例提供的一种网页数据的发送方法S105的具体实现流程图。参见图5所示,相对于图1-图3所述实施例,本实施例提供的一种网页数据的发送方法中S105包括:S1051~S1052,具体详述如下:
进一步地,所述网页显示请求还携带有信道加密口令;所述将所述加密后的二阶抽象语法树发送给所述网页显示请求对应的用户终端,包括:
在S1051中,根据所述信道加密口令与所述用户终端建立通信链路。
在本实施例中,为了提高用户终端与终端设备通信的保密性,终端设备以及用户终端之间的通信链路需要通过信号加密口令对通信信道进行加密操作。因此,用户终端向终端设备发送网页页面请求时,会将信道加密口令添加到网页页面请求内,终端设备在接收到该网页页面请求后,会提取该信道加密口令,以便在对用户终端发送网页数据时,通过该信道加密口令与用户终端建立通信链路。
在本实施例中,用户终端在接收到通信链路建立请求时,会判断该建立请求中携带的信道加密口令是否合法,若合法,则同意建立该通信信道;反之,若该建立请求中不包含该信道加密口令或该信道加密口令不合法,则断开通信链路。
在S1052中,通过所述通信链路发送所述加密后的二阶抽象语法树至所述用户终端。
在本实施例中,终端设备在通信链路建立后,可以将加密后的二阶抽象语法树发送给用户终端,以便用户终端根据该加密后的二阶抽象语法树显示网页页面。
在本发明实施例中,通过信道加密口令对通信链路进行授权,从而能够确保通信双端之间数据的保密性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图6示出了本发明一实施例提供的一种终端设备的结构框图,该终端设备包括的各单元用于执行图1对应的实施例中的各步骤。具体请参阅图1与图1所对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。
参见图6,所述终端设备包括:
网页源码数据获取单元61,用于若接收到网页显示请求,则根据所述网页显示请求包含的网页标识,获取所述网页标识对应的网页源码数据;
一阶抽象语法树生成单元62,用于通过语法分析确定所述网页源码数据包含的源码关键词,并基于所述源码关键词将所述网页源码数据转换为一阶抽象语法树;
二阶抽象语法树生成单元63,用于通过语义分析将所述一阶抽象语法树内的各个源码关键词划分为至少一个语法组,并基于所述语法组将所述一阶抽象语法树转换为二阶抽象语法树;
加密处理单元64,用于对所述二阶抽象语法树进行加密操作,生成加密后的二阶抽象语法树;
网页数据发送单元65,用于将所述加密后的二阶抽象语法树发送给所述网页显示请求对应的用户终端,以在所述用户终端的界面上生成对应的网页页面。
可选地,所述二阶抽象语法树生成单元63包括:
通用关键词选取单元,用于根据预设的通用词库,从各个所述源码关键词中选取通用关键词;
语法句型识别单元,用于获取各个通用关键词的语法句型模板,并将所述一阶抽象语法树分别与各个所述语法句型模板进行匹配,根据匹配结果确定所述一阶抽象语法树中包含的语法句型;
源码关键词划分单元,用于根据所述语法句型,将各个所述源码关键词划分为至少一个所述语法组;每个所述语法组内的所述源码关键词属于同一所述语法句型。
可选地,所述加密处理单元64包括:
加密密钥分割单元,用于将加密密钥划分为N个子密钥,并根据各个所述子密钥在所述加密密钥的位置,确定各个所述子密钥的加密次序;所述N为大于或等于2的正整数;
循环加密单元,用于基于所述加密次序,依次通过各个所述子密钥对所述二阶抽象语法树执行循环加密操作,将经过N次循环加密的所述二阶抽象语法树作为所述加密后的二阶抽象语法树;所述循环加密操作包括:行列移位操作和/或字符替代操作。
可选地,所述终端设备还包括:
无效字符选取单元,用于从预设的无效字符库内随机选取M个无效字符串;M为大于或等于1的正整数;
无效字符插入单元,用于基于所述网页源码数据中预设M个的字符插入坐标,分别将各个所述无效字符串插入至所述网页源码数据内。
可选地,所述网页数据发送单元65包括:
通信链路建立单元,用于根据所述信道加密口令与所述用户终端建立通信链路;
通信链路传输单元,用于通过所述通信链路发送所述加密后的二阶抽象语法树至所述用户终端。
因此,本发明实施例提供的终端设备同样可以基于网页源码数据中的源码关键词,将网页源码数据转换为一阶抽象语法树,并进一步通过语义分析,对网页源码数据中不同语段之间的逻辑特征进行进一步抽离,得到二阶抽象语法树,将通过加密后的二阶抽象语法树,将网页数据发送给用户终端。上述过程并非直接发送网页源码数据,而是通过语法抽离和语义抽离将网页源码数据中的代码逻辑进行抽象处理,提高了发送过程的保密性以及安全性,避免被不法分子盗取核心源码数据以及对源码数据进行篡改。
图7是本发明另一实施例提供的一种终端设备的示意图。如图7所示,该实施例的终端设备7包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机程序72,例如基于加密技术的网页数据的发送程序。所述处理器70执行所述计算机程序72时实现上述各个基于加密技术的网页数据的发送方法实施例中的步骤,例如图1所示的S101至S105。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中各单元的功能,例如图6所示模块61至65功能。
示例性的,所述计算机程序72可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器71中,并由所述处理器70执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序72在所述终端设备7中的执行过程。例如,所述计算机程序72可以被分割成网页源码数据获取单元、一阶抽象语法树生成单元、二阶抽象语法树生成单元、加密处理单元以及网页数据发送单元,各单元具体功能如上所述。
所述终端设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端设备7的示例,并不构成对终端设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于加密技术的网页数据的发送方法,其特征在于,包括:
若接收到网页显示请求,则根据所述网页显示请求包含的网页标识,获取所述网页标识对应的网页源码数据;
通过语法分析确定所述网页源码数据包含的源码关键词,并基于所述源码关键词将所述网页源码数据转换为一阶抽象语法树;
通过语义分析将所述一阶抽象语法树内的各个源码关键词划分为至少一个语法组,并基于所述语法组将所述一阶抽象语法树转换为二阶抽象语法树;
对所述二阶抽象语法树进行加密操作,生成加密后的二阶抽象语法树;
将所述加密后的二阶抽象语法树发送给所述网页显示请求对应的用户终端,以在所述用户终端的界面上生成对应的网页页面。
2.根据权利要求1所述的发送方法,其特征在于,所述通过语义分析将所述一阶抽象语法树内的各个源码关键词划分为多个语法组,包括:
根据预设的通用词库,从各个所述源码关键词中选取通用关键词;
获取各个通用关键词的语法句型模板,并将所述一阶抽象语法树分别与各个所述语法句型模板进行匹配,根据匹配结果确定所述一阶抽象语法树中包含的语法句型;
根据所述语法句型,将各个所述源码关键词划分为至少一个所述语法组;每个所述语法组内的所述源码关键词属于同一所述语法句型。
3.根据权利要求1所述的发送方法,其特征在于,所述对所述二阶抽象语法树进行加密操作,生成加密后的二阶抽象语法树,包括:
将加密密钥划分为N个子密钥,并根据各个所述子密钥在所述加密密钥的位置,确定各个所述子密钥的加密次序;所述N为大于或等于2的正整数;
基于所述加密次序,依次通过各个所述子密钥对所述二阶抽象语法树执行循环加密操作,将经过N次循环加密的所述二阶抽象语法树作为所述加密后的二阶抽象语法树;所述循环加密操作包括:行列移位操作和/或字符替代操作。
4.根据权利要求1-3任一项所述的发送方法,其特征在于,在所述通过语法分析确定所述网页源码数据包含的源码关键词之前,还包括:
从预设的无效字符库内随机选取M个无效字符串;M为大于或等于1的正整数;
基于所述网页源码数据中预设M个的字符插入坐标,分别将各个所述无效字符串插入至所述网页源码数据内。
5.根据权利要求1-3任一项所述的发送方法,其特征在于,所述网页显示请求还携带有信道加密口令;所述将所述加密后的二阶抽象语法树发送给所述网页显示请求对应的用户终端,包括:
根据所述信道加密口令与所述用户终端建立通信链路;
通过所述通信链路发送所述加密后的二阶抽象语法树至所述用户终端。
6.一种终端设备,其特征在于,所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
若接收到网页显示请求,则根据所述网页显示请求包含的网页标识,获取所述网页标识对应的网页源码数据;
通过语法分析确定所述网页源码数据包含的源码关键词,并基于所述源码关键词将所述网页源码数据转换为一阶抽象语法树;
通过语义分析将所述一阶抽象语法树内的各个源码关键词划分为至少一个语法组,并基于所述语法组将所述一阶抽象语法树转换为二阶抽象语法树;
对所述二阶抽象语法树进行加密操作,生成加密后的二阶抽象语法树;
将所述加密后的二阶抽象语法树发送给所述网页显示请求对应的用户终端,以在所述用户终端的界面上生成对应的网页页面。
7.根据权利要求6所述的终端设备,其特征在于,所述通过语义分析将所述一阶抽象语法树内的各个源码关键词划分为多个语法组,包括:
根据预设的通用词库,从各个所述源码关键词中选取通用关键词;
获取各个通用关键词的语法句型模板,并将所述一阶抽象语法树分别与各个所述语法句型模板进行匹配,根据匹配结果确定所述一阶抽象语法树中包含的语法句型;
根据所述语法句型,将各个所述源码关键词划分为至少一个所述语法组;每个所述语法组内的所述源码关键词属于同一所述语法句型。
8.根据权利要求6所述的终端设备,其特征在于,所述对所述二阶抽象语法树进行加密操作,生成加密后的二阶抽象语法树,包括:
将加密密钥划分为N个子密钥,并根据各个所述子密钥在所述加密密钥的位置,确定各个所述子密钥的加密次序;所述N为大于或等于2的正整数;
基于所述加密次序,依次通过各个所述子密钥对所述二阶抽象语法树执行循环加密操作,将经过N次循环加密的所述二阶抽象语法树作为所述加密后的二阶抽象语法树;所述循环加密操作包括:行列移位操作和/或字符替代操作。
9.根据权利要求6-8任一项所述的终端设备,其特征在于,在所述通过语法分析确定所述网页源码数据包含的源码关键词之前,所述处理器执行所述计算机程序时还实现如下步骤:
从预设的无效字符库内随机选取M个无效字符串;M为大于或等于1的正整数;
基于所述网页源码数据中预设M个的字符插入坐标,分别将各个所述无效字符串插入至所述网页源码数据内。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
CN201811039189.XA 2018-09-06 2018-09-06 一种基于加密技术的网页数据的发送方法及设备 Active CN109241484B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811039189.XA CN109241484B (zh) 2018-09-06 2018-09-06 一种基于加密技术的网页数据的发送方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811039189.XA CN109241484B (zh) 2018-09-06 2018-09-06 一种基于加密技术的网页数据的发送方法及设备

Publications (2)

Publication Number Publication Date
CN109241484A true CN109241484A (zh) 2019-01-18
CN109241484B CN109241484B (zh) 2023-06-16

Family

ID=65067543

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811039189.XA Active CN109241484B (zh) 2018-09-06 2018-09-06 一种基于加密技术的网页数据的发送方法及设备

Country Status (1)

Country Link
CN (1) CN109241484B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309629A (zh) * 2019-06-18 2019-10-08 阿里巴巴集团控股有限公司 一种网页代码加固方法、装置及设备
CN110532782A (zh) * 2019-07-30 2019-12-03 平安科技(深圳)有限公司 一种任务执行程序的检测方法、装置及存储介质
CN110598379A (zh) * 2019-09-23 2019-12-20 北京智游网安科技有限公司 一种实现字符串混淆的方法、系统、设备及存储介质
CN110830261A (zh) * 2019-10-12 2020-02-21 平安普惠企业管理有限公司 加密方法、装置、计算机设备及存储介质
CN111131282A (zh) * 2019-12-27 2020-05-08 武汉极意网络科技有限公司 请求加密方法、装置、电子设备及存储介质
CN111880777A (zh) * 2020-06-23 2020-11-03 北京三快在线科技有限公司 程序信息下发方法、装置、电子设备
CN112416340A (zh) * 2020-05-14 2021-02-26 上海哔哩哔哩科技有限公司 基于草图的网页生成方法和系统
CN113434148A (zh) * 2021-06-30 2021-09-24 平安普惠企业管理有限公司 防解密客户端开发编译方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100088686A1 (en) * 2008-10-06 2010-04-08 Microsoft Corporation Programming language with extensible syntax
CN103455759A (zh) * 2012-06-05 2013-12-18 深圳市腾讯计算机系统有限公司 一种页面漏洞检测装置及检测方法
US20140359586A1 (en) * 2013-06-02 2014-12-04 Microsoft Corporation Programming Language with Extensions using a Strict Meta-Model
CN105450662A (zh) * 2015-12-25 2016-03-30 小米科技有限责任公司 加密方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100088686A1 (en) * 2008-10-06 2010-04-08 Microsoft Corporation Programming language with extensible syntax
CN103455759A (zh) * 2012-06-05 2013-12-18 深圳市腾讯计算机系统有限公司 一种页面漏洞检测装置及检测方法
US20140359586A1 (en) * 2013-06-02 2014-12-04 Microsoft Corporation Programming Language with Extensions using a Strict Meta-Model
CN105450662A (zh) * 2015-12-25 2016-03-30 小米科技有限责任公司 加密方法及装置

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309629A (zh) * 2019-06-18 2019-10-08 阿里巴巴集团控股有限公司 一种网页代码加固方法、装置及设备
CN110309629B (zh) * 2019-06-18 2023-10-10 创新先进技术有限公司 一种网页代码加固方法、装置及设备
CN110532782A (zh) * 2019-07-30 2019-12-03 平安科技(深圳)有限公司 一种任务执行程序的检测方法、装置及存储介质
CN110598379A (zh) * 2019-09-23 2019-12-20 北京智游网安科技有限公司 一种实现字符串混淆的方法、系统、设备及存储介质
CN110830261A (zh) * 2019-10-12 2020-02-21 平安普惠企业管理有限公司 加密方法、装置、计算机设备及存储介质
CN111131282A (zh) * 2019-12-27 2020-05-08 武汉极意网络科技有限公司 请求加密方法、装置、电子设备及存储介质
CN112416340A (zh) * 2020-05-14 2021-02-26 上海哔哩哔哩科技有限公司 基于草图的网页生成方法和系统
CN111880777A (zh) * 2020-06-23 2020-11-03 北京三快在线科技有限公司 程序信息下发方法、装置、电子设备
CN113434148A (zh) * 2021-06-30 2021-09-24 平安普惠企业管理有限公司 防解密客户端开发编译方法、装置、电子设备及存储介质
CN113434148B (zh) * 2021-06-30 2024-03-22 广东迅维信息产业股份有限公司 防解密客户端开发编译方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN109241484B (zh) 2023-06-16

Similar Documents

Publication Publication Date Title
CN109241484A (zh) 一种基于加密技术的网页数据的发送方法及设备
US9977918B2 (en) Method and system for verifiable searchable symmetric encryption
US11232216B1 (en) Systems and methods for generation of secure indexes for cryptographically-secure queries
CN110324143A (zh) 数据传输方法、电子设备及存储介质
CN111835511A (zh) 数据安全传输方法、装置、计算机设备及存储介质
CN110110163A (zh) 安全子字符串搜索以过滤加密数据
CN103067156B (zh) 移动互联网用户资源访问的url加密、验证方法和装置
CN107408135A (zh) 用于对加密数据进行查询处理的数据库服务器和客户端
WO2014189900A1 (en) Protecting data
CN106533658A (zh) 基于md5算法的url防篡改签名及验签方法
US8699703B2 (en) System and method for pseudo-random polymorphic tree construction
CN106599723A (zh) 一种文件加密方法及装置、文件解密方法及装置
CN102782692A (zh) 网络上传送数据的加密和解密的系统、装置和方法
CN109491727A (zh) 对象序列化方法、终端设备及计算机可读存储介质
CN106610995A (zh) 一种创建密文索引的方法、装置及系统
CN109376021A (zh) 接口调用的响应方法及服务器
CN105827582A (zh) 一种通信加密方法、装置和系统
CN112131564A (zh) 加密数据通信方法、装置、设备以及介质
CN110210211A (zh) 一种数据保护的方法和计算设备
CN109614789A (zh) 一种终端设备的验证方法及设备
CN106529317A (zh) 基于Shadow DOM的Web应用加解密方法
CN103761487B (zh) 文件的隐藏方法及装置
CN108900472A (zh) 信息的传输方法和装置
CN107222494A (zh) 一种sql注入攻击防御组件及方法
CN115589316B (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