真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java怎么用RSA加密方式實(shí)現(xiàn)數(shù)據(jù)加密解密-創(chuàng)新互聯(lián)

這篇文章主要講解了“java怎么用RSA加密方式實(shí)現(xiàn)數(shù)據(jù)加密解密”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“java怎么用RSA加密方式實(shí)現(xiàn)數(shù)據(jù)加密解密”吧!

我們提供的服務(wù)有:網(wǎng)站設(shè)計(jì)制作、網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、桑植ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的桑植網(wǎng)站制作公司

RSA的應(yīng)用

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

java使用RSA加密方式實(shí)現(xiàn)數(shù)據(jù)加密解密,需要首先產(chǎn)生私鑰和公鑰

測(cè)試代碼

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工具類的實(shí)現(xiàn)

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 {    // 獲取公鑰及參數(shù)e,n    RSAPublicKey pbk = (RSAPublicKey)pbkey;    BigInteger e = pbk.getPublicExponent();    BigInteger n = pbk.getModulus();    // 獲取明文m    BigInteger m = new BigInteger(ptext);    // 計(jì)算密文c    BigInteger c = m.modPow(e, n);    return c.toByteArray();  }  //使用私鑰進(jìn)行解密  public byte[] decrypt(byte[] ctext) throws Exception {    // 讀取密文    BigInteger c = new BigInteger(ctext);    // 讀取私鑰    RSAPrivateKey prk = (RSAPrivateKey)prkey;    BigInteger d = prk.getPrivateExponent();    // 獲取私鑰參數(shù)及解密    BigInteger n = prk.getModulus();    BigInteger m = c.modPow(d, n);    // 顯示解密結(jié)果    byte[] mt = m.toByteArray();    return mt;  }}

感謝各位的閱讀,以上就是“java怎么用RSA加密方式實(shí)現(xiàn)數(shù)據(jù)加密解密”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)java怎么用RSA加密方式實(shí)現(xiàn)數(shù)據(jù)加密解密這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!


新聞名稱:java怎么用RSA加密方式實(shí)現(xiàn)數(shù)據(jù)加密解密-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://weahome.cn/article/dicchi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部