JAVA,RSA密钥生成

如图

在这里插入图片描述

import java.math.BigInteger;
import java.util.Random;

public class ShengChengSuShu {
  public static void main(String[] Zing) {
	 Main(16,10);
  }
  /**
   * 输入第一个数字表示素数的位数
   * 输入的第二个数字表述显示几组
   * 
   * @param wei
   * @param n
   */
  public static void Main(int wei,int n) {
	  for(int i = 0;i < n;i ++) {
		  function(wei);
	  }
  }
  public static void function(int wei) {
	     String a = ShengChengBinarySuShu(wei);
		 String b = ShengChengBinarySuShu(wei);
		 String c = ShengChengBinaryChengJi(a,b);
  }
  public static String ShengChengBinarySuShu(int wei) {
	  BigInteger a ;
	  Random rnd = new Random();
	  a = BigInteger.probablePrime(wei, rnd);
	  String b = a.toString();
	  String binary = new BigInteger(b,10).toString(2);
	 // System.out.println(a);
	  System.out.println(binary);
	  return binary;
  }
  public static String ShengChengBinaryChengJi(String a ,String b) {
	  String a1 = new BigInteger(a,2).toString(10);
	  String b1 = new BigInteger(b,2).toString(10);
	  BigInteger a11 = new BigInteger(a1);
	  BigInteger b11 = new BigInteger(b1);
	  BigInteger c = a11.multiply(b11);
	  String ending = c.toString();
	  String binary = new BigInteger(ending,10).toString(2);
	//  System.out.println(ending);
	  System.out.println(binary);
	  return binary;
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值