System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种Web端图片上传的压缩加密方法技术_技高网

一种Web端图片上传的压缩加密方法技术

技术编号:40846212 阅读:4 留言:0更新日期:2024-04-01 15:14
本发明专利技术公开了一种Web端图片上传的加密压缩方法,通过HTML表单接收用户上传的图片文件后使用python的打开图片并转换为WebP格式,之后使用压缩算法对图片文件进行压缩处理,压缩完成使用密钥配合SMS4加密算法对图片进行加密处理,再使用图像识别算法检测图片的安全信息,处理完成的图片存在数据库并进行权限控制,使用图片时将图片从数据库中调出,使用SMS4算法对图片数据进行解密,并根据需求选择使用WebP压缩算法进行解压处理以获得原始的图片数据,本发明专利技术可以对企业选择保密的图片数据在用户上传图片时便进行压缩加密,以防Web端或数据库出现问题或被攻击时产生数据泄露,也能减少服务器的传输开销与存储压力。

【技术实现步骤摘要】

本专利技术涉及图像数据处理领域,尤其涉及一种web端图片上传的压缩加密算法。


技术介绍

1、以往的图片上传技术中,由于技术的不成熟,用户在web端上传的都是没有经过压缩加密的原图,当原图数量过多时这对于网站后端的数据库存储以及存储硬件来说是一种巨大的负担,并且由于没有经过加密处理,图片中所蕴含的重要数据也可能被黑客窃取。而当图片上传过程中对图片转化为webp格式进行压缩后再使用sms4算法进行加密处理后,web端的数据安全可以得到进一步的保证,对图片而言所需要的存储空间也可以减少很多。对图片数据提供压缩技术同时加密增加安全性,从两个方向提升了web端的功能。

2、webp格式是一种用于图像压缩的现代图像格式,其使用先进的压缩算法来显著减小图像文件的大小,并不影响图像质量,并且可以根据需求来设置有损压缩与无损压缩模式。

3、sms4也称为国密sm4算法,其广泛运用在安全领域,特别是在数据加密和保护中使用,sms4是对称加密算法,加密与解密有着相同的密钥,且sms4采用分组密码算法,其将明文数据分成固定大小的数据块进行处理,每个数据块长度为128位。sms4算法中最重要的一个因素便是轮函数与轮密钥,多轮加密过程中每轮都是用特定的轮函数对数据变换,并且使用生成的轮密钥对数据进行混淆,轮函数和轮密钥的运算通过非线性置换、线性变换和异或运算来完成。


技术实现思路

1、本专利技术所要解决的第一个问题是:

2、将用户从web端上传的图片数据按照需求对其使用webp格式进行压缩处理,以减少传输开销并使得服务器的存储压力更小。

3、本专利技术所要解决的第二个问题是:

4、使用sms4加密算法,对压缩完成的图片数据进行加密处理用以抵抗一些窃取信息的黑客的攻击手段,使得数据在传输以及存储时更加安全。

5、一种web端图片上传的加密压缩方法采用的技术方案如下:

6、s1:在web端,通过html表单的enctype属性设置为multipart/form-data来接收用户上传的图片文件,图片上传完成后使用python的pillow库中image.open方法打开原始图片,并在指定了图片的路径和文件名后使用save方法将图片转换为webp格式;

7、s2:使用径向基函数曲线进行图片分割通常可以分为选择径向基函数、确定聚类中心点、计算距离和相似度、标记边界或确定范围以及进行压缩和加密,

8、径向基函数曲线的公式为,每个基函数根据其相应的参数和来决定形状和位置,根据不同的尺度对数据进行建模,其中x表示输入向量,表示每个基函数的中心点,是控制基函数宽度的参数,是控制函数斜率的参数,当=0,函数退化成阶跃函数,当趋近于无穷大时,函数趋近于0,是基函数的权重参数;

9、每个基函数根据其相应的参数和来决定形状和位置,这样可以根据不同的尺度对数据进行更加灵活的建模;

10、s2:根据需求的图片压缩质量对webp压缩的相关参数进行设置以实现不同环境下的不同需求,之后使用webp压缩算法依照所设置的参数对转换后的webp图片文件进行压缩处理;

11、s3:使用密码学安全随机数生成器算法生成一个安全且随机的密钥,将密钥存储在密钥库中后,以生成的密钥配合sms4加密算法将webp算法压缩过的图片进行加密处理;

12、s4:使用图像识别算法对加密后的图片进行检测,对包含违规信息的照片进行相关处理;

13、s5:将经过加密处理后的合规压缩图片数据保存在数据库中,并且确保对加密数据的访问按用户进行权限控制,以确保数据的安全性;

14、s6:需要使用图片时,从数据库中获取加密的图片数据,使用加密时相同的密钥和加密模式以sms4算法对图片数据进行解密,得到解密后的数据,并且根据需求选择使用webp压缩算法进行解压缩操作以还原为原始的图片数据。

15、进一步的,上述步骤s1中使用径向基函数曲线进行图片分割的具体步骤为:

16、s11:将待分割的图像转换为灰度图像,并进行二值化处理;

17、s12:对二值化后的图像进行边缘检测,得到图像中的边缘;

18、s13:选取一定数量的控制点并计算每个控制点到图像边缘上的点之间的距离,得到相应的权重;

19、s14:根据权重计算出各个参数值对应的坐标点,得到一条完整的径向基函数曲线;

20、s15:将图像按照径向基函数曲线分割成若干个区域;

21、s16:对每个区域进行进一步处理,进一步的加密和压缩。

22、进一步的,上述步骤s2中webp压缩的相关参数,具体为:

23、quality:用作调整图像的压缩品质;

24、method:用于选择压缩算法的模式;

25、lossless:用于选择是否使用无损模式保存图像;

26、alpha_quality:用于控制透明度通道的压缩质量;

27、icc_profile:用于对图像选择合适的色彩空间;

28、所述步骤s2的webp图像压缩步骤,离散余弦变换dct用于将图像从空域转换到频域,以实现更高效的压缩,dct的变换过程包含以下步骤:

29、s21:对n×n的输入矩阵输入矩阵进行预处理;

30、s22:对每个频域系数x(u,v)使用dct公式进行计算,dct公式具体如下:,其中为变换后的频域系数,是频域坐标,是空间域坐标。和是归一化系数,当u或v为0时,或取值为,否则为1;

31、s23:通过对图像块的像素值进行变换,得到相应的频域系数矩阵;

32、上述步骤s3中sms4对图片进行加密处理,具体为:

33、生成密钥后,按照sms4算法的规定将压缩后的图片数据划分为每组128位的分组,并对长度不满128位的分组进行pkcs7填充处理,完成后为每个分组生成一个与密钥共同使用的唯一初始化向量iv以增加加密的安全性,将分组、密钥和初始化向量一起输入sms4算法中,最后使用sms4算法产生加密后的输出;

34、sms4算法作为一种对称性分组密码算法,加密和解密操作涉及各种公式:

35、轮函数:轮函数是sms4算法中最核心的部分,它使用置换、替换、按位异或等运算进行混淆和扩散,其定义如下:,其中x0,x1,x2,x3代表将输入的明文分组划分后形成的4个字,表示按位异或运算,表示循环左移2位,表示轮密钥;

36、轮密钥生成:sms4算法会根据主密钥生成多轮的轮密钥,生成过程中需要使用非线性s盒和线性变换矩阵进行初始扩展和变换,生成过程如下:其中,是第i轮的轮密钥,是一个非线性函数,表示按位异或运算,表示循环左移,指用于生成轮密钥的常数,一个位移量;

37、加密公式:sms4算法的加密过程采用32轮迭代,加密公式如下:,其中表示第i轮的输入,是第i轮的轮密钥,是轮函数本文档来自技高网...

【技术保护点】

1.一种Web端图片上传的加密压缩方法,其特征在于,包括以下步骤:

2.据权利要求1中所述的一种Web端图片上传的加密压缩方法,其特征在于,所述步骤S1中使用径向基函数曲线进行图片分割的具体步骤为:

3.根据权利要求1中所述的一种Web端图片上传的加密压缩方法,其特征在于,

4.根据权利要求1中所述的一种Web端图片上传的加密压缩方法,其特征在于:

5.根据权利要求1中所述的一种Web端图片上传的加密压缩方法,其特征在于:

6.根据权利要求1中所述的一种Web端图片上传的加密压缩方法,其特征在于,所述步骤S5中SMS4对图片进行解密处理,包括以下步骤:

【技术特征摘要】

1.一种web端图片上传的加密压缩方法,其特征在于,包括以下步骤:

2.据权利要求1中所述的一种web端图片上传的加密压缩方法,其特征在于,所述步骤s1中使用径向基函数曲线进行图片分割的具体步骤为:

3.根据权利要求1中所述的一种web端图片上传的加密压缩方法,其特征在于,

【专利技术属性】
技术研发人员:卢建宇陈炯林钢林学良卢环宇
申请(专利权)人:深圳卫医通信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1