• 大小:
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-17
  • 语言: Matlab
  • 标签: matlab  

资源简介

非常简单的MatLab加密程序原创-MatLab加密与解密.rar

资源截图

代码片段和文件信息

% LQF coding   
% alwayslqsl@163.com
% 目前不支持MultiSelect;基本上可以对任何文件进行加密,但是例如记事本的摘要啊,简介啊无法读取,可以压缩成一个压缩文件后加密。
% 另外本程序可能不支持较大文件的加密(上百兆?),我没有试过,有时间再改进吧!
% 时间:2010年6月26日
% 版本:v0.0
% [1] 0~127 没有fliplr; 128~255 有fliplr作用过;
% [2] 已有偏移量 1~255;
% [3] 50~249 =>X
% [3+(1:X)] 
% [X+4] 还剩多少?0~X(-1);

clear;clc;
[filename pathname] = uigetfile(‘*.*‘ ‘选择一个待处理的文件‘‘MultiSelect‘ ‘off‘);
%
if isequal(filename0)
   disp(‘用户取消了选择!‘);
else
   disp([‘用户已选择\\\‘ fullfile(pathname filename)]);
end

fid = fopen([pathname filename] ‘r‘);
str = fread(fid ‘uint8‘)‘;
fclose(fid);
myseed = floor(200*rand(1))+50;
addstr = zeros(1myseed+4);
addstr(end) = mod(length(str)myseed);
addstr(1) = floor(255*rand(1));
addstr(2) = ceil(255*rand(1));
addstr(3) = myseed;
myorder = randperm(myseed);
addstr(4:(end-1)) = myorder;


if addstr(1)>127
str = fliplr(str);
end


str = str + addstr(2);
myovernum = find(str>255);
str(myovernum) = str(myovernum) - 256;


preproc = floor(length(str)/myseed);
if preproc>0
    k = 0;
    for n1 = 1:preproc
        temp = str(k+myorder);
        str(k+(1:myseed)) = temp;
        k = k + myseed;
    end
end
allstr = [addstrstr];
mystr = ‘LQF@‘;
fid = fopen([pathnamemystr filename] ‘w‘);
fwrite(fidallstr ‘uint8‘);
fclose(fid);
disp(‘文件加密完毕!‘);


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1480  2010-06-26 23:17  LQFcode.m

     文件       1474  2010-06-26 23:21  LQFdecode.m

----------- ---------  ---------- -----  ----

                 2954                    2


评论

共有 条评论