一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种小程序用户数据处理方法与流程

2022-11-09 22:20:14 来源:中国专利 TAG:


1.本发明涉及数据处理领域,具体涉及一种小程序用户数据处理方法。


背景技术:

2.随着计算机技术的不断发展,各种应用小程序层出不穷。小程序由开发者的服务器为用户提供数据服务,由于小程序开发门槛较低,对于一些个人或者小型企业的开发者来说,由于自身限制,由其提供的服务器单独进行小程序数据服务,小程序服务器的安全性不高,计算能力有限,因此无法为用户数据尤其是有关隐私的数字图像提供安全存储,因此需要对用户信息尤其是隐私图像进行加密。
3.对于待加密图像,需要将待加密图像的所有像素点进行置乱,或者改变像素点的值,从而实现对图像的加密,所述置乱是指按照某种方式将像素点的位置进行改变,现有方法的缺点是需要很多步才能达到这个置乱效果,从而造成计算量大,加密方法过于复杂,不适合计算能力有限的小程序。


技术实现要素:

4.本发明提供一种小程序用户数据处理方法,以解决现有的图像加密算法计算过程复杂,不适合用于小程序中的图像加密的问题。
5.本发明的一种小程序用户数据处理方法,采用如下技术方案,包括:获取小程序用户信息中的待加密灰度图;获取待加密灰度图中每个像素点灰度值的二进制数;设定二进制数中每个非0比特数个数对应的偏移量,根据每个像素点灰度值的二进制数中非0比特数的个数对应的偏移量得到该像素点对应的偏移量;通过二进制数中每个非0比特数的个数对应的偏移量得到顺序序列,对顺序序列进行加密获得密钥;在待加密灰度图的所有像素点中随机选择一个像素点作为第一初始前继像素点,并进行标记;获取第一初始前继像素点的起始方向,根据第一初始前继像素点的起始方向和偏移量获得第一初始前继像素点的链码方向,根据第一初始前继像素点的链码方向确定第一初始前继像素点的后续像素点,对该后续像素点进行标记;以得到的后续像素点为新前继像素点,第一初始前继像素点的链码方向反方向为新前继像素点的起始方向,根据新前继像素点的起始方向和偏移量获取新后续像素点,对该新后续像素点进行标记,按照获取新后续像素点的方法获取所有后续像素点并进行标记,直至获取的后续像素点为被标记的像素点,得到对应的第一方向链码;在待加密灰度图中没有被标记的像素点中随机选择一个像素点作为第二初始前继像素点,按照获取第一方向链码的方法获取第二方向链码,按照获取第二方向链码的方法获取待加密灰度图中其它方向链码,直至待加密灰度图中所有像素点均被标记;在待加密灰度图中根据所有方向链码对应像素点的获取顺序对所有方向链码对
应的像素点按照从左到右、从上往下的顺序进行排列得到密文图像;将密文图像、所有初始前继像素点进行存储;将密钥进行保存。
6.进一步的,所述的一种小程序用户数据处理方法,第一初始前继像素点的链码方向是按照如下步骤获取:根据第一初始前继像素点的偏移量将第一初始前继像素点的起始方向进行顺时针旋转获得该第一初始前继像素点的链码方向。
7.进一步的,所述的一种小程序用户数据处理方法,所述新后续像素点是按照如下步骤获取:根据新前继像素点的起始方向和偏移量获得新前继像素点的链码方向,若根据新前继像素点的链码方向获得的像素点没有被标记,将获得的没有被标记的像素点作为新前继像素点的新后续像素点;若根据新前继像素点的链码方向获得的像素点被标记,将新前继像素点作为终止像素点。
8.进一步的,所述的一种小程序用户数据处理方法,得到对应的第一方向链码的过程中还包括:若第一方向链码的长度大于设定的长度阈值,保留该第一方向链码;若第一方向链码的长度小于或等于设定的长度阈值,舍弃该第一方向链码,将该舍弃的第一方向链码对应的所有标记像素点取消标记,并将该第一初始前继像素点作为废弃像素点。
9.进一步的,所述的一种小程序用户数据处理方法,所述第二初始前继像素点不是废弃像素点。
10.进一步的,所述的一种小程序用户数据处理方法,所述第一方向链码是十六方向链码。
11.进一步的,所述的一种小程序用户数据处理方法,所述二进制数中每个非0比特数个数对应的偏移量包括目标偏移量和备用偏移量;所述目标偏移量和所述备用偏移量为1至16之间的正整数。
12.进一步的,所述的一种小程序用户数据处理方法,二进制数中非0比特数的个数为0至8 中的一种。
13.进一步的,所述的一种小程序用户数据处理方法,对顺序序列进行加密的方法为aes加密算法。
14.进一步的,所述的一种小程序用户数据处理方法,所述第一初始前继像素点的起始方向是方向值为0的方向。
15.本发明的有益效果是:本发明将非0比特数特征与偏移量的对应关系作为密钥,基于16方向链码的16个方向,给非0比特数特征设置目标偏移量和备用偏移量,使获得的密钥空间足够大,进而提高密文图像的安全性。本发明通过计数获得像素点灰度值的二进制数的非0比特数特征,扩充方向链码的方向值,进而根据非0比特数特征和16方向链码对图像进行加密,使得获得的密文图像的混乱度足够大,进而提高了密文图像的安全性;同时该加密方法中不涉及复杂的计算,因此加密方法简单。
附图说明
16.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
17.图1为本发明的一种小程序用户数据处理方法的实施例的流程示意图;图2为像素点的16个方向的示意图。
具体实施方式
18.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.本发明的一种小程序用户数据处理方法的实施例,如图1所示,包括:101、获取小程序用户信息中的待加密灰度图;获取待加密灰度图中每个像素点灰度值的二进制数。
20.用户在登陆、使用小程序时,小程序获取涉及用户隐私的图像,具体包括:用户通过人脸识别系统登陆小程序时被采集的人脸图像;用户信息中的头像图像;用户使用小程序搜索商品时使用的图像;以及用户在对购买的商品进行评价时使用的评价图像等。
21.由于小程序服务器的安全性不高,小程序获取的涉及用户隐私的图像,容易在受到攻击时被窃取,导致用户隐私泄露,因此,需要对小程序获取的涉及用户隐私的图像进行加密存储。由于小程序服务器的计算能力有限,因此,加密方式不能涉及过多的计算,需要足够简单。
22.将用户隐私图像转化为灰度图,将灰度图像中每个像素点的灰度值转换为0和1组成的8位二进制数。
23.链码是用起始点的坐标和方向值来描述曲线的方法,所述方向值为每个后续像素点相对其前继像素点的方向对应的方向值。常规的链码有4方向链码和8方向链码。
24.本发明根据像素点的非0比特数特征获得像素点的链码方向,获得所述链码方向对应的像素点,所有通过链码方向连接的像素点组成一条16方向链码,将灰度图像转换为多条16方向链码,进而根据所有16方向链码对图像进行置乱,获得置乱后的密文图像。
25.因此,本发明是基于链码对图像进行置乱,进而实现对图像的加密。常规的链码包括4方向链码和8方向链码,都是基于像素的邻域进行的,考虑到图像具有局部相似性,因此,单纯基于邻域的4方向链码和8方向链码对图像进行置乱,获得的密文图像的混乱度较小,密文图像的安全性较低;本发明将非0比特数特征与偏移量的对应关系作为密钥,基于4方向链码或8方向链码,密钥的密钥空间较小,密文图像的安全性较低。
26.为了获得密钥空间大且密文图像混乱度大的加密方式,进而增加密文图像的安全性,本发明对链码的方向值进行扩充,基于像素点的邻域,获得16个方向,如图2所示,图2中的数字表示方向值。根据16方向链码的16个方向,按照顺时针方向给每个方向分配一
个方向值,方向值依次记为1到16。其中,方向值1和方向值9表示的方向互为反方向;方向值2和方向值10表示的方向互为反方向;方向值3和方向值11表示的方向互为反方向;方向值4和方向值12表示的方向互为反方向;方向值5和方向值13表示的方向互为反方向;方向值6和方向值14表示的方向互为反方向;方向值7和方向值15表示的方向互为反方向;方向值8和方向值16表示的方向互为反方向。
27.102、设定二进制数中每个非0比特数个数对应的偏移量,根据每个像素点灰度值的二进制数中非0比特数的个数对应的偏移量得到该像素点对应的偏移量。
28.本发明基于像素点灰度值的二进制数的非0比特数特征设计加密方式,只需要计数获得像素点灰度值的二进制数的非0比特数特征,不需要进行额外的计算,加密方法足够简单。
29.具体的,利用每个像素点的灰度值转换得到的8位二进制数,对8位二进制数中的1进行计数,获得像素点的非0比特数特征,由于8位二进制数中最多有8个1,最少没有1,因此,非0比特数特征最大为8,最小为0,共有9种非0比特数特征。
30.本发明根据像素点的非0比特数特征获得像素点的链码方向,获得所述链码方向对应的像素点,所有通过链码方向连接的像素点组成一条16方向链码,将灰度图像转换为多条16方向链码,进而根据所有16方向链码对图像进行置乱,获得置乱后的密文图像。所述像素点的链码方向是根据像素点的起始方向和偏移量获得的。
31.获取每种非0比特数特征的偏移量。
32.具体的,本发明通过扩充方向链码的方向值,使基于16方向链码进行置乱获得的密文图像的混乱度足够大,因此,只有充分利用16方向链码的16个方向值才能够使密文图像的混乱度足够大。为了能够充分利用16方向链码的16个方向值,所述偏移量包括目标偏移量和备用偏移量;偏移量是方向值顺时针旋转的次数,对于16方向链码对应的16个方向,每个方向最小的偏移量为0,此时方向值经过旋转后不发生变化,每个方向最大的偏移量为15,此时方向值经过旋转后发生变化,如图2所示,方向值4经过顺时针旋转15次后卫方向值5;从最小的偏移量0到最大的偏移量15,共有16种偏移量。
33.将9种非0比特数特征与16种偏移量中的9种一一对应,每种非0比特数特征对应的偏移量记为目标偏移量;只有灰度值为0的像素点,其非0比特数特征为0,只有灰度值为255的像素点,其非0比特数特征为8,其他的非0比特数特征对应的灰度值均不止一个,因此,为了在链码方向发生冲突时,能够增加链码长度,给非0比特数特征为1到7的7种非0比特数特征分配一个备用偏移量;因此,非0比特数特征为0和8时,有且仅有一个偏移量为目标偏移量,非0比特数特征为1到7时,有两个偏移量,分别为目标偏移量和备用偏移量。
34.本实施例提供了一种偏移量设定,具体的,非0比特数特征0对应的目标偏移量为3;非0比特数特征1对应的目标偏移量和备用偏移量分别为11和9;非0比特数特征2对应的目标偏移量和备用偏移量分别为15和4;非0比特数特征3对应的目标偏移量和备用偏移量分别为5和8;非0比特数特征4对应的目标偏移量和备用偏移量分别为14和10;非0比特数特征5对应的目标偏移量和备用偏移量分别为7和1;非0比特数特征6对应的目标偏移量和备用偏移量分别为12和16;非0比特数特征7对应的目标偏移量和备用偏移量分别为6和2;非0比特数特征8对应的目标偏移量为13。
35.根据每个像素点灰度值的二进制数中非0比特数的个数对应的偏移量得到该像素
点对应的偏移量,该像素点对应的偏移量包括目标偏移量和备用偏移量。
36.103、通过二进制数中每个非0比特数的个数对应的偏移量得到顺序序列,对顺序序列进行加密获得密钥。
37.基于16方向链码的16个方向,给非0比特数特征设置目标偏移量和备用偏移量,进而根据非0比特数特征与偏移量的顺序序列获得密钥空间足够大的密钥。具体方法为:根据非0比特数特征与偏移量的对应关系获得顺序序列,通过aes加密算法对顺序序列进行加密获得密钥,所述密钥的密钥空间大小为。
38.例如,根据本实施例提供的偏移量设定,根据非0比特数特征与偏移量的对应关系获得的顺序序列为,通过aes加密算法对顺序序列进行加密,获得密钥。
39.104、在待加密灰度图的所有像素点中随机选择一个像素点作为第一初始前继像素点,并进行标记;获取第一初始前继像素点的起始方向,根据第一初始前继像素点的起始方向和偏移量获得第一初始前继像素点的链码方向,根据第一初始前继像素点的链码方向确定第一初始前继像素点的后续像素点,对该后续像素点进行标记,以该后续像素点为新前继像素点,第一初始前继像素点的链码方向反方向为新前继像素点的起始方向,根据新前继像素点的起始方向和偏移量获取新后续像素点,对该新后续像素点进行标记,按照获取新后续像素点的方法获取所有后续像素点并进行标记,直至获取的后续像素点为被标记的像素点,得到对应的第一方向链码。
40.本发明根据前继像素点的链码方向获得对应的后续像素点,因此,需要首先根据前继像素点的位置以及前继像素点的链码方向对应的方向值来获得后续像素点的位置。具体方法为:以灰度图像的左上角为原点,以原点从上向下的方向为轴方向,以原点从左向右的方向为轴方向,建立位置直角坐标系。对于位置为的前继像素点,根据该前继像素点的链码方向的方向值来获得对应后续像素点的位置,具体为:方向值为1,后续像素点的位置为;方向值为2,后续像素点的位置为;方向值为3,后续像素点的位置为;方向值为4,后续像素点的位置为;方向值为5,后续像素点的位置为;方向值为6,后续像素点的位置为;方向值为7,后续像素点的位置为;方向值为8,后续像素点的位置为;方向值为9,后续像素点的位置为;方向值为10,后续像素点的位置为;方向值为11,后续像素点的位置为;方向值为12,后续像素点的位置为;方向值为13,后续像素点的位置为;方向值为14,后续像素点的位置为;方向值为15,后续像素点的位置为
;方向值为16,后续像素点的位置为。
41.在图像中所有没有被标记且不在废弃集合中的像素点中随机选择一个像素点作为起始像素,将起始像素点加入起始像素点集合中,并在图像中对该像素点进行标记。
42.其中,灰度图中第一个16方向链码的起始像素点为在灰度图中所有像素点中随机选择的一个像素点。
43.以起始像素点和起始像素点的灰度值为基础获得所有的链码方向,进而获得所有链码方向对应像素点组成的16方向链码,每通过链码方向获取一个对应像素点,对该像素点进行一次标记;获得16方向链码后,判断该16方向链码的长度,如果长度超过10,则保留该16方向链码,并将组成将该16方向链码的所有像素点的标记保留,其中,10为长度阈值的取值;如果长度不超过10,则舍弃该16方向链码,将该16方向链码的起始像素点取消标记并将起始像素点加入废弃集合中,同时对该方向链码对应的所有像素点取消标记;直至图像中所有的像素点均被标记,或者无法获得新的起始像素点。至此,获得图像对应的所有16方向链码。
44.所述16方向链码是由起始像素点和多个链码像素点组成的,所述组成16方向链码的链码像素点需要保证相邻两个链码像素点互为前继像素点和后续像素点。
45.所述后续像素点的获取方法为:根据前继像素点的位置和前继像素点的链码方向获得目标位置,判断所述目标位置对应的像素点是否被标记,如果像素点被标记了,则将所述前继像素点作为16方向链码的终止像素点,获得对应的16方向链码;如果像素点没有被标记,则将所述位置对应的像素点作为后续像素,加入前继像素点所在的16方向链码中,并在图像中对后续像素点进行标记。
46.其中,前继像素点的链码方向是根据前继像素点的起始方向和前继像素点的偏移量获得的;根据偏移量将前继像素点的起始方向进行顺时针旋转,对应的方向值为前继像素点的链码方向。
47.其中,前继像素点的起始方向的获取方法为:如果前继像素点为起始像素点,则前继像素点的起始方向为方向值0所在的方向;如果前继像素点不是起始像素点,则前继像素点的起始方向为以所述前继像素点为后续像素点的链码方向的反方向,例如,对于某个不是起始像素点的前继像素点,以所述前继像素点为后续像素点的链码方向的方向值为3,则所述前继像素点的起始方向为方向值3所在方向的反方向,即该反方向的方向值为11。
48.其中,后续像素点的获取方法为:根据前继像素点的非0比特数特征获得偏移量,所述偏移量包括目标偏移量和备用偏移量;如果根据目标偏移量对应的链码方向获得的像素点没有被标记,则将获得的像素点作为后续像素点;如果根据目标偏移量对应的链码方向获得的像素点被标记了,则根据备用偏移量对应的链码方向获得像素点,如果根据备用偏移量对应的链码方向获得的像素点没有被标记,则将获得的像素点作为后续像素点;如果根据备用偏移量对应的链码方向获得的像素点被标记了,则将前继像素点作为终止像素点,获得对应的16方向链码。
49.按照上述方法在灰度图所有像素点中随机选择一个像素点作为第一个16方向链码的起始像素点,从而获取第一个16方向链码,判断16方向链码的长度,如果长度超过10,则保留该16方向链码,并将组成将该16方向链码的所有像素点的标记进行保留;如果长度
不超过10,则舍弃该16方向链码,将该16方向链码的起始像素点取消标记并加入废弃集合中,同时将该16方向链码对应的其余像素点取消标记。
50.105、在待加密灰度图中没有被标记的像素点中随机选择一个像素点作为第二初始前继像素点,按照获取第一方向链码的方法获取第二方向链码,按照获取第二方向链码的方法获取待加密灰度图中其它方向链码,直至待加密灰度图中所有像素点均被标记。
51.在待加密灰度图中所述没有被标记的像素点指的是没有被标记且不在废弃集合中的像素点,具体的,在待加密灰度图中没有被标记且不在废弃集合中的像素点中随机选择一个像素点作为另一个方向链码的起始像素点,按照相同方法获取另一个方向链码。
52.判断16方向链码的长度,如果长度超过10,则保留该16方向链码,并将组成将该16方向链码的所有像素点的标记保留;如果长度不超过10,则舍弃该16方向链码,将该16方向链码的起始像素点取消标记并加入废弃集合中,同时将该16方向链码对应的其余像素点取消标记。
53.按照获取第二个方向链码的方法获取待加密灰度图中其它所有方向链码。
54.106、在待加密灰度图中根据所有方向链码对应像素点的获取顺序对所有方向链码对应的像素点按照从左到右、从上往下的顺序进行排列得到密文图像。
55.按照顺序将所有16方向链码对应的像素点,按照逐行从左到右的顺序排列,对图像中除所有16方向链码对应的像素点外的所有剩余像素点,按照逐行从左到右的顺序排列;重排后的图像即为密文图像。
56.107、将密文图像、所有初始前继像素点进行存储;将密钥进行保存。
57.对密文图像和起始像素点集合进行存储,所述起始像素点集合中的像素点为初始前继像素点。
58.对顺序序列进行加密获得的密钥进行单独存储。
59.最后,对密钥解密获得非0比特数特征与偏移量的对应关系;根据密文图像和对应关系获得组成密文图像的所有16方向链码,进而根据所有16方向链码对密文图像进行还原,获得解密后的还原图像。
60.具体步骤包括:1、对密钥解密获得非0比特数特征与偏移量的对应关系。通过aes解密算法对密钥进行解密,获得顺序序列,所述顺序序列为非0比特数特征与偏移量的对应关系。
61.2、将密文图像的第一行第一列对应的像素点作为起始像素点,按照起始像素点集合中的第一个起始像素点,将其放置还原图像中。
62.3、根据所述起始像素点的非0比特数特征以及对应关系获得起始像素点的偏移量,根据起始像素点的起始方向和偏移量获得链码方向,将起始像素点作为前继像素点,根据前继像素点的位置和链码方向获得对应后续像素点的位置,根据后续像素点的位置将后续像素点放置在还原图像中。
63.4、根据前继像素点的非0比特数特征获得偏移量,所述偏移量包括目标偏移量和备用偏移量;如果根据目标偏移量对应的链码方向获得的位置没有像素点,则将后续像素点放置在还原图像中的相应位置上;如果根据目标偏移量对应的链码方向获得的位置有像素点,则根据备用偏移量对应的链码方向获得位置,如果根据备用偏移量对应的链码方向获得的位置没有像素点,则将后续像素点放置在还原图像中的相应位置上;如果根据备用
偏移量对应的链码方向获得的位置有像素点,则终止,重新获得起始像素点。
64.5、重复上述步骤3-4,直至起始像素点集合中为空,对密文图像中所有剩余像素点,逐行按照从左到右的顺序放置在还原图像中。
65.本发明将非0比特数特征与偏移量的对应关系作为密钥,基于16方向链码的16个方向,给非0比特数特征设置目标偏移量和备用偏移量,使获得的密钥空间足够大,进而提高密文图像的安全性。本发明通过计数获得像素点灰度值的二进制数的非0比特数特征,扩充方向链码的方向值,进而根据非0比特数特征和16方向链码对图像进行加密,使得获得的密文图像的混乱度足够大,进而提高了密文图像的安全性;同时该加密方法中不涉及复杂的计算,因此加密方法简单。
66.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献