【技术实现步骤摘要】
一种采用Blowfish对文件进行加解密的方法、系统及装置
本专利技术涉及加解密
,具体为一种采用Blowfish对文件进行加解密的方法、系统及装置。
技术介绍
在一些应用场景中,例如生产许可证技术需要将许可证进行加密,然后在软件在验证许可证时候,再将许可证解密。其中,解密后的许可证包括如下信息。许可时长、许可开始时间、允许的特性以及允许的特性的使用时长等信息。例如在某个设备,说明书上是说具有某些功能的,但是这些功能默认是不能使用的,需要再购买授权来激活。这就是一个典型的生产许可证应用场景。当加密成功后,可以发送给顾客,表示许可证生成完成;当顾客导入加密的许可证后,产品会对许可证进行解密。在现有技术中,通过采用blowfish算法进行加解密。blowfish是常用的加密解密算法,是一种对称加密算法,其原理是采用S盒子和P盒子对高低4字节数(或者左四字节、右四字节)进行加密。blowfish算法能够实现无损加解密。但是blowfish是对一对4字节数进行的加密,也就是说,对8字节数加密很合适。对于文件来说 ...
【技术保护点】
1.一种采用blowfish对文件进行加解密的方法,其特征在于,包括以下步骤:/n步骤S1,加密装置读入待加密文件,并获得所述待加密文件的长度信息;/n步骤S2,对所述待加密文件的结尾进行补足处理,形成8个字节的倍数的补足的待加密文件;/n步骤S3,对所述补足的待加密文件依顺序每8个字节根据预定的密钥进行blowfish加密计算,获得加密后密文数据;/n步骤S4,将所有加密后密文数据、待加密文件长度、补足长度、补足位置、密文长度信息写入预定格式的文件中,形成加密后的文件,并发送给解密装置;/n步骤S5,解密装置获得所述加密后的文件,解析出其中的加密数据、待加密文件长度、补足 ...
【技术特征摘要】
1.一种采用blowfish对文件进行加解密的方法,其特征在于,包括以下步骤:
步骤S1,加密装置读入待加密文件,并获得所述待加密文件的长度信息;
步骤S2,对所述待加密文件的结尾进行补足处理,形成8个字节的倍数的补足的待加密文件;
步骤S3,对所述补足的待加密文件依顺序每8个字节根据预定的密钥进行blowfish加密计算,获得加密后密文数据;
步骤S4,将所有加密后密文数据、待加密文件长度、补足长度、补足位置、密文长度信息写入预定格式的文件中,形成加密后的文件,并发送给解密装置;
步骤S5,解密装置获得所述加密后的文件,解析出其中的加密数据、待加密文件长度、补足长度、补足位置、密文长度信息;
步骤S6、对所述加密数据依顺序每8个字节根据预定的密钥进行blowfish解密计算,获得每8个字节对应的解密后数据;
步骤S7,根据所述补足长度、补足位置,删除最后一组解密的数据中的补足的数据;
步骤S8,将所有解密后的数据进行组合,形成解密后的文件。
2.如权利要求1所述的方法,其特征在于,所述步骤S2进一步包括:
对所述待加密文件按每隔8个字节分隔,获得最后一组8个字节以下的数据,在所述最后一组数据前面或后面补充0,形成一组8个字节的数据。
3.如权利要求2所述的方法,其特征在于,所述步骤S4中的预定文件格式如下:
@fromlen@4@L1@padding@4@L2@littleendian@4@L3@content@L4@ABCDEFGHIJK…
其中,@fromlen为待加密文件长度标识,@4表示采用4个字节进行记录,@L1表示待加密文件长度的具体值;
@padding为补足长度标识,@4表示采用4个字节进行记录,@L2表示补足长度的具体值;
@littleendian为补足位置标识,@4表示采用4个字节进行记录,@L3用于指示具体的补足位置;
@content为密文内容标识;@L4表示密文的具体长度;ABCDEFGHIJK…表示密文数据的具体内容。
4.如权利要求1至3任一项所述的方法,其特征在于,进一步包括:
所述加密装置与解密装置预先协商确认用于加密和解密的密钥。
5.一种采用blowfish对文件进行加密的装置,其特征在于,包括:
读取单元,用于读入待加密文件,并获得所述待加密文件的长度信息;
补足处理单元,...
【专利技术属性】
技术研发人员:周婧,吴谦,杨旸,高强,曹易,周瑾瑜,杨洋,宋旅宁,于宗红,
申请(专利权)人:深圳供电局有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。