美文网首页
RSA加密算法

RSA加密算法

作者: 玥玥籽 | 来源:发表于2018-09-23 14:50 被阅读8次

RSA加密算法简史

  RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。

公钥与密钥的产生

假设Alice想要通过一个不可靠的媒体接收Bob的一条私人讯息。她可以用以下的方式来产生一个公钥和一个私钥

随意选择两个大的质数pqp不等于q,计算N=pq

根据欧拉函数,求得r = (p-1)(q-1)

选择一个小于 r 的整数 e,求得 e 关于模 r 的模反元素,命名为d。(模反元素存在,当且仅当e与r互质)

 p  q 的记录销毁。

(N,e)是公钥,(N,d)是私钥。Alice将她的公钥(N,e)传给Bob,而将她的私钥(N,d)藏起来。

/**

     *  加密、解密算法

     * @param key 公钥或密钥

     * @param message 数据

     * @return

     */  

public static long rsa(int baseNum, int key, long message){  

    if(baseNum < 1 || key < 1){  

        return 0L;

    }  

    //加密或者解密之后的数据  

    long rsaMessage = 0L;  

    //加密核心算法 

    rsaMessage = Math.round(Math.pow(message, key)) % baseNum;  

    return rsaMessage;

//加密后的数据  

long encodeMsg = rsa(baseNum, keyE, msg);  

//解密后的数据  

long decodeMsg = rsa(baseNum, keyD, encodeMsg); 

来自cnblog

相关文章

  • # RSA 公钥加密算法

    # RSA 公钥加密算法 # RSA 公钥加密算法

  • 非对称加密算法RSA 学习

    非对称加密算法RSA 学习 RSA加密算法是一种非对称加密算法。RSA是1977年由罗纳德·李维斯特(Ron Ri...

  • RSA加密算法详解

    什么是RSA算法? RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是197...

  • 6.1 密码学专题 - 非对称加密算法 - RSA 算法

    密码学专题 - 非对称加密算法 - RSA 算法 6.1 RSA 算法 第一个较完善的非对称加密算法 RSA,它既...

  • 2019-10-26

    今天做了rsa加密算法

  • iOS逆向与安全1.0 :RSA加密

    摘自百度百科-RSA: RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业 中RSA被...

  • RSA公私钥和签名、验签过程

    RSA加密算法介绍 RSA又叫非对称加密算法,这类加密算法有2个秘钥,你可以选择一个作为私钥(自己保存,重要),另...

  • RSA从原理到ctf解题(原理篇)

    简介: RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德...

  • 局1_RSA算法和SM2算法

    RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德·李维斯...

  • RSA 密钥的生成

    简介 RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德·...

网友评论

      本文标题:RSA加密算法

      本文链接:https://www.haomeiwen.com/subject/vatqoftx.html