云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于线性移位寄存器的流密码算法与实现

基于线性移位寄存器的流密码算法与实现

  • 62 次阅读
  • 3 次下载
  • 2025/5/5 23:02:32

深圳大学本科毕业论文—基于线性移位寄存器的流密码算法与实现

4.2 加密流程图

对函数进行定义,array1,array2,array3,array4,array5?? 矩阵转换为(256,256) lfsr1,lfsr2,lfsr3,lfsr4,lfsr5工作(1,256*256) 进行异或运算 lfsr1,lfsr2,lfsr3组成的geffe生成器工作 coord_1矩阵转换为(256,256) 上一个geffe的输出与lfsr4,lfsr5组成geffe生成器工作 合成新的密钥矩阵coord_1(1,256*256) 生成最终加密矩阵key(i,j) 读取图像teddy的灰度矩阵z(256,256) 加密矩阵与图像灰度矩阵异或运算 加密完成

图8 加密流程图

4.3 加密步骤

①对所有下面加密图像中将要用到的矩阵进行定义,并给定5个LFSR的初始密钥流。 %LFSR1 级数41

第 14 页 共 32 页

深圳大学本科毕业论文—基于线性移位寄存器的流密码算法与实现

array1=

[51,49,196,63,12,34,153,158,20,105,89,89,12,47,15,35,15,156,123,123,78,96,125,78,123,15,13,23,34,133,26,48,42,16,13,28,38,69,66,123,215]; %LFSR2 级数18

array2 = [105,89,89,12,47,15,35,15,156,123,123,78,96,123,121,154,21,19]; %LFSR3 级数35

array3=

[142,152,18,125,22,85,71,11,73,12,63,12,86,152,31,82,56,96,13,68,12,58,62,23,48,32,156,45,15,156,52,72,8,6,132]; %LFSR4 级数17

array4 = [47,15,35,112,63,12,158,152,31,156,45,15,156,15,35,15,156]; %LFSR5 级数7

array5 = [34,153,158,20,35,15,26];

N = 256*256 lfsr1 = zeros(1,N); lfsr2 = zeros(1,N); lfsr3 = zeros(1,N); lfsr4 = zeros(1,N); lfsr5 = zeros(1,N); coord_0 = zeros(1,N); temp = zeros(1,N);

②读取所要加密的图像teddy的灰度矩阵并且显示出原始图像: %%读图%%

z=imread('D:\\MATLAB7\\teddy.jpg'); subplot(1,3,1),imshow(z); title('teddy原始图像');

第 15 页 共 32 页

深圳大学本科毕业论文—基于线性移位寄存器的流密码算法与实现

图9 teddy原始图像

③由于LFSR1、LFSR2和LFSR3最先开始工作,故将这3个LFSR的初始array矩阵分别进入各自的LFSR中,进行线性移位处理,下面举其中的LFSR1为例: %LFSR1 级数41

array1 =

[51,49,196,63,12,34,153,158,20,105,89,89,12,47,15,35,15,156,123,123,78,96,125,78,123,15,13,23,34,133,26,48,42,16,13,28,38,69,66,123,215]; %LFSR2 级数18

array2 =

[105,89,89,12,47,15,35,15,156,123,123,78,96,123,121,154,21,19]; %LFSR3 级数35 array3 =

[142,152,18,125,22,85,71,11,73,12,63,12,86,152,31,82,56,96,13,68,12,58,62,23,48,32,156,45,15,156,52,72,8,6,132]; %LFSR4 级数17

array4 = [47,15,35,112,63,12,158,152,31,156,45,15,156,15,35,15,156]; %LFSR5 级数7

array5 = [34,153,158,20,35,15,26];

N = 256*256

第 16 页 共 32 页

深圳大学本科毕业论文—基于线性移位寄存器的流密码算法与实现

lfsr1 = zeros(1,N); lfsr2 = zeros(1,N); lfsr3 = zeros(1,N); lfsr4 = zeros(1,N); lfsr5 = zeros(1,N); temp1 = zeros(1,N); temp2 = zeros(1,N);

%%%%%%% LFSR1工作 %%%%%%% for i = 1 : N lfsr1(i) = array1(1);

a = bitxor(array1(3),array1(41)); for m = 1 : 40

array1(m) = array1(m+1); end if a<=255 array1(41) = a; else

array1(41) = mod(a,255); end end

%将LFSR1输出密钥序列放入x*y维矩阵中 c1 = zeros(256,256); for i = 1 : 256 for j = 1 : 256

c1(i,j) = lfsr1((i-1)*256+j); end end

④由LFSR1、LFSR2和LFSR3组成geffe序列生成器,把结果放入coord_0(1,256*256)

第 17 页 共 32 页

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

深圳大学本科毕业论文—基于线性移位寄存器的流密码算法与实现 4.2 加密流程图 对函数进行定义,array1,array2,array3,array4,array5?? 矩阵转换为(256,256) lfsr1,lfsr2,lfsr3,lfsr4,lfsr5工作(1,256*256) 进行异或运算 lfsr1,lfsr2,lfsr3组成的geffe生成器工作 coord_1矩阵转换为(256,256) 上一个geffe的输出与lfsr4,lfsr5组成geffe生成器工作 合成新的密钥矩阵coord_1(1,256*256) 生成最终加密矩阵key(i,j) 读取图像teddy的灰度矩阵z(256,256) 加密矩阵与图像灰度矩阵异或运算 加密完成 图8 加密流程图 4.3 加密步骤 ①对所有下面加密图像中将要用

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com