中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Java生成非對稱型加密的公鑰和私鑰

2018-07-20    來源:open-open

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

非對稱型加密非常適合多個客戶端和服務(wù)器之間的秘密通訊,客戶端使用同一個公鑰將明文加密,而這個公鑰不能逆向的解密,密文發(fā)送到服務(wù)器后有服務(wù)器 端用私鑰解密,這樣就做到了明文的加密傳送。非對稱型加密也有它先天的缺點,加密、解密速度慢制約了它的發(fā)揮,如果你有大量的文字需要加密傳送,建議你通 過非對稱型加密來把對稱型‘密鑰’分發(fā)到客戶端,及時更新對稱型‘密鑰’。

KeyRSA.java

import java.io.*;
import java.security.*;
import javax.crypto.*;
import javax.crypto.spec.*;

/**
 * RSA非對稱型加密的公鑰和私鑰
 * @author 五斗米 <如轉(zhuǎn)載請保留作者和出處>
 * @blog http://blog.csdn.net/mq612
 */

public class KeyRSA {
  private KeyPairGenerator kpg = null;
  private KeyPair kp = null;
  private PublicKey public_key = null;
  private PrivateKey private_key = null;
  private FileOutputStream public_file_out = null;
  private ObjectOutputStream public_object_out = null;
  private FileOutputStream private_file_out = null;
  private ObjectOutputStream private_object_out = null;

  /**
   * 構(gòu)造函數(shù)
   * @param in 指定密匙長度(取值范圍:512~2048)
   * @throws NoSuchAlgorithmException 異常
   */
  public KeyRSA(int in, String address) throws NoSuchAlgorithmException,
      FileNotFoundException, IOException {
    kpg = KeyPairGenerator.getInstance("RSA"); //創(chuàng)建‘密匙對’生成器
    kpg.initialize(in); //指定密匙長度(取值范圍:512~2048)
    kp = kpg.genKeyPair(); //生成‘密匙對’,其中包含著一個公匙和一個私匙的信息
    public_key = kp.getPublic(); //獲得公匙
    private_key = kp.getPrivate(); //獲得私匙
    //保存公匙
    public_file_out = new FileOutputStream(address + "/public_key.dat");
    public_object_out = new ObjectOutputStream(public_file_out);
    public_object_out.writeObject(public_key);
    //保存私匙
    private_file_out = new FileOutputStream(address + "/private_key.dat");
    private_object_out = new ObjectOutputStream(private_file_out);
    private_object_out.writeObject(private_key);
  }

  public static void main(String[] args) {
    try {
      new KeyRSA(1024, "c:/key_rsa");
    }
    catch (IOException ex) {
    }
    catch (NoSuchAlgorithmException ex) {
    }
  }

}

標簽: 服務(wù)器

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇: 在spring中使用quartz的一個小例子

下一篇:java快速排序算法實現(xiàn)