⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rsa_digital_signature.m

📁 RSA 数字签名 matlab实现 是密码学中一个重要的签名算法
💻 M
字号:
function [out,sig]=RSA_digital_signature(n,m)
B=5;
[flag,p,q]=factors_resolve(n,B) ;
if flag==0
    display('n不能分解成两个素数的乘积');
    out=0;sig=0;
else
    phi_n=(p-1)*(q-1);
    
    e=2;%求e
    while e<phi_n-1
      if gcd(e,phi_n)~=1  
          e=e+1;
      else
          break;
      end
    end
    
    d=1;%求d
    while(1)
        if mod(d*e,phi_n)~=1
            d=d+1;
        else
            break;
        end
    end
    
   sig=big_mod(m,d,n);%签名变换,获得签名
   m1=big_mod(sig,e,n);%签名验证
   if m1==m
       display('sig为消息m的有效签名签名无效');
       out=1;
   else 
       display('sig对消息m的签名无效');
       out=0;
   end
   
end
     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -