91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java怎么用RSA加密方式實現數據加密解密

發布時間:2021-08-20 22:31:25 來源:億速云 閱讀:128 作者:chen 欄目:編程語言

這篇文章主要講解了“java怎么用RSA加密方式實現數據加密解密”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“java怎么用RSA加密方式實現數據加密解密”吧!

RSA的應用

RSA是一種非對稱加密算法。現在,很多登陸表單的密碼的都采用RSA加密,例如京東中的登陸使用公鑰對密碼進行加密

java使用RSA加密方式實現數據加密解密,需要首先產生私鑰和公鑰

測試代碼

public static void main(String args[]) {  try {    RSADemo rsa=new RSADemo();    rsa.generateKey();    byte[] data=rsa.encrypt("luanpeng".getBytes());    byte[] data1=rsa.decrypt(data);    String str=new String(data1);    System.out.println(str);  } catch (Exception e) {    System.out.println(e.toString());  }}

RSA工具類的實現

package com.lp.app.safe;import java.security.*;import java.security.interfaces.*;import java.math.*;public class RSADemo {  public RSADemo() {  }  PublicKey pbkey;  PrivateKey prkey;  public void generateKey() {    try {      KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");      kpg.initialize(1024);      KeyPair kp = kpg.genKeyPair();      pbkey = kp.getPublic();      prkey = kp.getPrivate();    } catch (Exception e) {    }  }  //加密,需要公鑰  public byte[] encrypt(byte[] ptext) throws Exception {    // 獲取公鑰及參數e,n    RSAPublicKey pbk = (RSAPublicKey)pbkey;    BigInteger e = pbk.getPublicExponent();    BigInteger n = pbk.getModulus();    // 獲取明文m    BigInteger m = new BigInteger(ptext);    // 計算密文c    BigInteger c = m.modPow(e, n);    return c.toByteArray();  }  //使用私鑰進行解密  public byte[] decrypt(byte[] ctext) throws Exception {    // 讀取密文    BigInteger c = new BigInteger(ctext);    // 讀取私鑰    RSAPrivateKey prk = (RSAPrivateKey)prkey;    BigInteger d = prk.getPrivateExponent();    // 獲取私鑰參數及解密    BigInteger n = prk.getModulus();    BigInteger m = c.modPow(d, n);    // 顯示解密結果    byte[] mt = m.toByteArray();    return mt;  }}

感謝各位的閱讀,以上就是“java怎么用RSA加密方式實現數據加密解密”的內容了,經過本文的學習后,相信大家對java怎么用RSA加密方式實現數據加密解密這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿鲁科尔沁旗| 宝鸡市| 岑巩县| 常山县| 梅河口市| 迁安市| 玉林市| 崇明县| 永昌县| 平昌县| 宁国市| 宽城| 蒙城县| 射洪县| 屏东市| 绩溪县| 麻城市| 三门峡市| 绥德县| 天峻县| 南和县| 固阳县| 岱山县| 灌南县| 仪征市| 临漳县| 刚察县| 贞丰县| 虎林市| 静宁县| 长丰县| 辛集市| 郑州市| 石家庄市| 宜君县| 马鞍山市| 台南县| 微山县| 神木县| 保亭| 浦东新区|