Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 基础科学 > 数学
数学 A discussion board for Mathematics.
回复
 
主题工具 显示模式
旧 2009-05-24, 18:50   #1
yhf1114
初级会员
 
注册日期: 2009-05-24
年龄: 37
帖子: 1
声望力: 0
yhf1114 正向着好的方向发展
默认 用matlab编写一个程序

混沌加密算法实现
选取Logistic映射 ,取参数 =4,该映射为满射,具有良好的混沌特征;选取正弦混沌映射 ,参数作为初始密钥一部分。采用上述两个混沌映射产生的混沌序列 和 交替对明文流加密,设置一逻辑型变量Enisl,当Enisl值为True时,采用Logistic映射产生的混沌序列 加密8次,当Enisl值为False时,采用正弦混沌映射 加密8次。 序列量化函数采用选取小数点后4、5、6位有效数字构成整数,对256取余, 序列量化函数采用选取小数点后7、8、9位有效数字构成整数,对256取余。具体算法步骤如下:
(1) 输入Logistic映射初值 和正弦混沌映射初值 ,参数b
(2) Logistic映射和正弦混沌映射分别迭代500次
(3) 判断加密完成否,若完成退出,否则转(4)
(4) 读取明文串
(5) 运行混沌发生器,判断Enisl值,若为True,则迭代Logistic映射8次,如果迭代值未在区间(0.2,0.8)之间则舍弃继续迭代,因为Logistic映射的统计分布在两端具有奇异性,直到得到8个迭代数据,运行量化函数(采用选取小数点后4、5、6位有效数字构成整数,对256取余),否则迭代正弦混沌映射8次运行量化函数(选取小数点后7、8、9位有效数字构成整数,对256取余)
(6) 将混沌密钥与明文位串进行异或运算,转(3)
yhf1114 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 18:30


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.