• 大小: 3KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-08
  • 语言: Matlab
  • 标签: DES  matlab  加密  解密  

资源简介

用Matlab写的DES加密和解密程序,附有测试程序,已验证没有问题

资源截图

代码片段和文件信息

function [ output ] = DES( datainkeyinsel )
%DES algorithm: implement the encryption and decryption
%datain: the input data
%keyin:  the key used 
%sel: choose the mode  0--encryption   1---decryption
%=====方式选择=====
%EN_DE=0:加密     EN_DE=1:解密
EN_DE=sel;
%=====明文=====
m=datain;
%=====密钥=====
key=keyin;
%if length(key)<64
%    key=[key zeros(164-length(key))];
%end
%if length(key)>64
%    temp=key;
%    key=[];
%    key=temp(1:64);
%end
%=====初始置换表=====
table_init=[585042342618102605244362820124...
        625446383022146645648403224168...
        574941332517 91595143352719113...
            615345372921135635547393123157];
%=====终止置换表=====        
table_final=[408481656246432397471555236331... 
         386461454226230375451353216129... 
         364441252206028353431151195927... 
         3424210501858 2633141 949175725];
%=====扩展置换表=====        
table_expend=[32 1 2 3 4 5 4 5 6 7 8 9 8 9 1011... 
          12131213141516171617181920212021... 
              222324252425262728292829303132 1];  
%=====直接置换表=====          
table_direct=[167202129122817 1152326 5183110... 
          2824143227 3 9191330 62211 425];
%=====压缩置换1======          
table_redu1=[57494133251791585042342618...          
         10259514335271911360524436...
         635547393123157625446383022...
         1466153453729211352820124]; 
%=====压缩置换2======           
table_redu2=[14171124 1 5 32815 62110...
         231912 426 816 7272013 2...
         415231374755304051453348...
         444939563453464250362932];  
%=====移位(左移次数)=====
table_LS=[1122222212222221];
%=====S盒=====         
box_s(::1)=[1441312151183106125907 
          0157414213110612119538 
          4114813621115129731050 
          1512824917511314100613];
box_s(::2)=[1518146113497213120510 
          3134715281412011069115 
          0147111041315812693215 
          1381013154211671205149];
box_s(::3)=[1009146315511312711428 
          1370934610285141211151 
          1364981530111212510147 
          1101306987415143115212];
box_s(::4)=[7131430691012851112415 
          1381156150347212110149 
          1069012117131513145284 
              3150610113894511127214];
box_s(::5)=[2124171011685315130149 
          1411212471315015103986 
          4211110137815912563014 
          1181271

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        5395  2012-05-24 16:00  DES\DES.m
     文件         275  2012-05-24 16:06  DES\test_DES.m
     目录           0  2012-05-24 16:07  DES\

评论

共有 条评论