行为轨迹无损压缩编码方法、用户设备、存储介质及装置与流程

文档序号:17863652发布日期:2019-06-11 23:02阅读:171来源:国知局
行为轨迹无损压缩编码方法、用户设备、存储介质及装置与流程

本发明涉及网路安全领域,尤其涉及行为轨迹无损压缩编码方法、用户设备、存储介质及装置。



背景技术:

现有的轨迹压缩技术一般采用通用的字符串压缩技术,通常在web端使用zlib、js等三方压缩编码包,该技术也是一种基于简单字典的压缩编码方案。

现有使用基于字符串压缩技术的方案的缺点在于:

需要三方的sdk(softwaredevelopmentkit,软件开发工具包),这需要额外大量的js代码以及不可控的安全风险,这对于saas(software-as-a-service,软件即服务)开发而言,是非常被客户所诟病和排斥的方案。现有压缩方案本身天然是对字符串进行压缩的,该方案没有充分的应用轨迹数据的特点进行优化,导致压缩率非常低。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。



技术实现要素:

本发明的主要目的在于提供行为轨迹无损压缩编码方法、用户设备、存储介质及装置,旨在提高轨迹压缩技术的安全性及压缩效率。

为实现上述目的,本发明提供一种行为轨迹无损压缩编码方法,所述行为轨迹无损压缩编码方法包括以下步骤:

对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据;

将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码;

根据数字类型编码及状态类型编码转换得到非特殊字符集合。

优选地,所述对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据,包括:

对原始轨迹数据进行分类,得到第一坐标数据队列、时间数据队列、第二坐标数据队列及状态数据队列;

将第一坐标数据队列、时间数据队列、第二坐标数据队列生成第一子轨迹数据;

将状态数据队列作为第二子轨迹数据;

把第一子轨迹数据及第二子轨迹数据组合生成目标轨迹数据。

优选地,所述将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码,包括:

从目标轨迹数据的第一子轨迹数据提取第一目标参数,进行二进制转换后按照第一预设顺序排列,以生成数字类型编码;

从目标轨迹数据的第二子轨迹数据提取第二目标参数,进行二进制转换后按照第二预设顺序排列,以生成状态类型编码。

优选地,所述第一目标参数类型包括长度标志、轨迹长度、待重复次数、重复次数及未重复次数,所述从目标轨迹数据的第一子轨迹数据提取第一目标参数,进行二进制转换后按照第一预设顺序排列包括:

从目标轨迹数据的第一子轨迹数据提取长度标志、轨迹长度、待重复次数及未重复次数;

进行二进制转换后按照长度标志、轨迹长度、待重复次数及未重复次数的顺序依次进行排列,以生成数字类型编码。

优选地,所述第二目标参数包括宽度标志、符号标识、待重复次数、重复次数所述从目标轨迹数据的第二子轨迹数据提取第二目标参数,进行二进制转换后按照第二预设顺序排列,包括:

从目标轨迹数据的第二子轨迹数据提取长度标志、轨迹长度、待重复次数及未重复次数;

进行二进制转换后按照长度标志、轨迹长度、待重复次数及未重复次数的顺序依次进行排列,以生成状态类型编码。

优选地,所述根据数字类型编码及状态类型编码制转换得到非特殊字符集合,包括:

将所述数字类型编码及状态类型编码转换成二进制编码,将转换后的二进制编码按照按照每6位进行切分并转换为非特殊字符集合。

本发明还提出一种用户设备,所述用户设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行行为轨迹无损压缩编码程序,所述行为轨迹无损压缩编码程序被所述处理器执行时实现如权利要求1至7中任一项所述的行为轨迹无损压缩编码方法的步骤。

本发明还提出一种存储介质,所述存储介质上存储有行为轨迹无损压缩编码程序,所述行为轨迹无损压缩编码程序被处理器执行时实现如上所述的行为轨迹无损压缩编码方法的步骤。

本发明还提出一种行为轨迹无损压缩编码装置,所述行为轨迹无损压缩编码装置包括:

生成模块,用于对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据;

编码模块,用于将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码;

转换模块,用于根据数字类型编码及状态类型编码转换得到非特殊字符集合。

本发明通过对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据;将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码;根据数字类型编码及状态类型编码转换得到非特殊字符集合。本发明技术方案不需要额外不可控风险的三方压缩包,减轻了接入saas的流量以及部署成本;充分利用行为轨迹的特点,充分利用了每一个bit位,提高了压缩效率。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的用户设备结构示意图;

图2为本发明行为轨迹无损压缩编码方法一实施例的流程示意图;

图3为将原始轨迹数据按照预设规则进行排列一实施例的一示意图;

图4为本发明行为轨迹无损压缩编码方法按照第一预设顺序进行排列的一实施例的示意图;

图5为本发明行为轨迹无损压缩编码按照第二预设顺序进行排列的一实施例的示意图;

图6为本发明行为轨迹无损压缩编码装置一实施例的模块功能图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1,图1为本发明实施例方案涉及的硬件运行环境的用户设备结构示意图。

如图1所示,该用户设备可以包括:处理器1001,例如cpu,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如按键,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的用户设备结构并不构成对用户设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及行为轨迹无损压缩编码程序。

在图1所示的用户设备中,网络接口1004主要用于连接外网,与其他网络设备进行数据通信;用户接口1003主要用于连接用户终端,与终端进行数据通信;本发明用户设备通过处理器1001调用存储器1005中存储的数据库部署程序,并执行本发明实施例提供的行为轨迹无损压缩编码方法。

所述用户设备可为电脑、服务器等电子设备。

基于上述硬件结构,提出本发明行为轨迹无损压缩编码方法的实施例。

参照图2,图2为本发明行为轨迹无损压缩编码方法第一实施例的流程示意图。

在第一实施例中,所述行为轨迹无损压缩编码方法包括以下步骤:

步骤s10:对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据。

值得说明的是,在网络安全领域,例如需要分析网页验证码是人为输入的还是机器自动输入的,以判断是否是恶意网页攻击。这里就需要分析采集终端设备的行为轨迹数据,若是人为输入的验证码,则可通过分析例如鼠标的相关轨迹数据就可得知。

通过鼠标的轨迹数据包括有横向坐标数据、纵向坐标数据、时间数据以及状态数据,一般来说,状态数据包括有鼠标的按下,抬起及滚动。采集目标鼠标在某一段时间内的轨迹数据作为原始轨迹数据。再对该原始轨迹数据按照预设规则进行排列,生成了目标轨迹数据。

这里,对原始轨迹数据进行重新排列的目的在于重整后的数据更具有连续性,方便后续充分进行压缩编码。

步骤s20:将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码。

本实施例中,设定轨迹数据横向坐标数据、纵向坐标数据、时间数据及状态数据分别为delta_x,delta_y,delta_t及action;在实际采集过程中有非常高的连续性质,例如鼠标水平稳定移动时,delta_x会以同一数值连续出现,纵向稳定移动时,delta_y会以同一数值连续出现。delta_x,delta_y,delta_t,action都是有一定取值范围的,而这个范围的差异并不大,例如在鼠标移动过程中,delta_x,delta_y的数值都不会超出屏幕的最大分辨率。而action是只有固定的几种,例如鼠标按下,抬起,滚动等。

通过分成两部分后,进行压缩编码,分别为数字类型编码及状态类型编码。第一部分是numberrepeatencoder:主要针对轨迹delta_x,delta_y,delta_t的number类型进行压缩;第二部分是actionrepeatencoder,主要针对action进行压缩编码。

步骤s30:根据数字类型编码及状态类型编码转换得到非特殊字符集合。

压缩编码完成后的数据需要在网络中进行传播,针对http协议,需要将将bit编码转换为规范的非特殊字符集合。

本发明通过对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据;将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码;根据数字类型编码及状态类型编码转换得到非特殊字符集合。本发明技术方案不需要额外不可控风险的三方压缩包,减轻了接入saas的流量以及部署成本;充分利用行为轨迹的特点,充分利用了每一个bit位,提高了压缩效率。

参照图3,其中,所述对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据,包括:

将第一坐标数据队列、时间数据队列、第二坐标数据队列生成第一子轨迹数据。本实施例中,将第一轨迹数据分为四个维度进行排列。

将第一坐标数据队列、时间数据队列、第二坐标数据队列生成第一子轨迹数据。将状态数据队列作为第二子轨迹数据。把第一子轨迹数据及第二子轨迹数据组合生成目标轨迹数据。

假设原始轨迹数据为[[delta_x,delta_y,delta_t,action],

[delta_x,delta_y,delta_t,action],

[delta_x,delta_y,delta_t,action],...1]。

经过预设规则的轨迹重排后变为:

[[delta_x,delta_x,delta_x,…],

[delta_y,delta_y,delta_y,…],

[delta_t,delta_t,delta_t,…],

[action,action,action,…]]。

所述将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码,包括:

从目标轨迹数据的第一子轨迹数据提取第一目标参数,进行二进制转换后按照第一预设顺序排列,以生成数字类型编码。

从目标轨迹数据的第二子轨迹数据提取第二目标参数,进行二进制转换后按照第二预设顺序排列,以生成状态类型编码。

具体地,所述第一目标参数类型包括长度标志、轨迹长度、待重复次数、重复次数及未重复次数,所述从目标轨迹数据的第一子轨迹数据提取第一目标参数,进行二进制转换后按照第一预设顺序排列包括:

从目标轨迹数据的第一子轨迹数据提取长度标志、轨迹长度、待重复次数及未重复次数。

进行二进制转换后按照长度标志、轨迹长度、待重复次数及未重复次数的顺序依次进行排列,以生成数字类型编码。

参照图4,在一实施例中,在未进行编码前,其排列顺序是重复标识、符号标识、重复次数、待重复次数、未重复数值以及符号位,编码为110000011000011101111。经过按照第一预设顺序排列后,顺序为110011000001100001111。

具体地所述第二目标参数包括宽度标志、符号标识、待重复次数、重复次数所述从目标轨迹数据的第二子轨迹数据提取第二目标参数,进行二进制转换后按照第二预设顺序排列,包括:

从目标轨迹数据的第二子轨迹数据提取长度标志、轨迹长度、待重复次数及未重复次数。

进行二进制转换后按照长度标志、轨迹长度、待重复次数及未重复次数的顺序依次进行排列,以生成状态类型编码。

参照图5,在本实施例中,第二预设顺序排列为长度标志(1)、轨迹长度(000111)、重复标识(1)、待重复次数(011)及未重复次数(0011),经过压缩编码后为1000111101100110011。

具体地,所述根据数字类型编码及状态类型编码制转换得到非特殊字符集合,包括:

将所述数字类型编码及状态类型编码转换成二进制编码,将转换后的二进制编码按照按照每6位进行切分并转换为非特殊字符集合。

为实现上述目的,本发明提出一种存储介质,所述存储介质上存储有行为轨迹无损压缩编码程序,所述行为轨迹无损压缩编码程序被处理器执行时实现如上所述的行为轨迹无损压缩编码方法的步骤。

本发明实施例只是有以下有益效果:

1、不需要额外不可控风险的三方压缩包,减轻了接入saas的流量以及部署成本;

2、充分利用行为轨迹的特点,充分利用了每一个bit位;

3、该压缩率可以压缩到原始字符串的1/80,zlib压缩的1/15,在特殊场景压缩率会更高。

参照图6,为实现上述目的,本发明提出一种行为轨迹无损压缩编码装置,所述行为轨迹无损压缩编码装置包括:

生成模块100,用于对采集到的原始轨迹数据按照预设规则进行排列生成目标轨迹数据。值得说明的是,在网络安全领域,例如需要分析网页验证码是人为输入的还是机器自动输入的,以判断是否是恶意网页攻击。这里就需要分析采集终端设备的行为轨迹数据,若是人为输入的验证码,则可通过分析例如鼠标的相关轨迹数据就可得知。

通过鼠标的轨迹数据包括有横向坐标数据、纵向坐标数据、时间数据以及状态数据,一般来说,状态数据包括有鼠标的按下,抬起及滚动。采集目标鼠标在某一段时间内的轨迹数据作为原始轨迹数据。再对该原始轨迹数据按照预设规则进行排列,生成了目标轨迹数据。

这里,对原始轨迹数据进行重新排列的目的在于重整后的数据更具有连续性,方便后续充分进行压缩编码。

编码模块200,用于将目标轨迹数据进行压缩编码,分别生成数字类型编码及状态类型编码。本实施例中,设定轨迹数据横向坐标数据、纵向坐标数据、时间数据及状态数据分别delta_x,delta_y,delta_t及action;在实际采集过程中有非常高的连续性质,例如鼠标水平稳定移动时,delta_x会以同一数值连续出现,纵向稳定移动时,delta_y会以同一数值连续出现。delta_x,delta_y,delta_t,action都是有一定取值范围的,而这个范围的差异并不大,例如在鼠标移动过程中,delta_x,delta_y的数值都不会超出屏幕的最大分辨率。而action是只有固定的几种,例如鼠标按下,抬起,滚动。

通过分成两部分后,进行压缩编码,分别为数字类型编码及状态类型编码。第一部分是numberrepeatencoder:主要针对轨迹delta_x,delta_y,delta_t的number类型进行压缩;第二部分是actionrepeatencoder,主要针对action进行压缩编码。

转换模块300,用于根据数字类型编码及状态类型编码转换得到非特殊字符集合。压缩编码完成后的数据需要在网络中进行传播,针对http协议,需要将将bit编码转换为规范的非特殊字符集合。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词解释为名称。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1