基本信息
源码名称:java软件注册模块(注册码以及序列号)
源码大小:0.66M
文件格式:.rar
开发语言:Java
更新时间:2020-07-02
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.math.BigInteger;
import java.security.interfaces.RSAPrivateKey;
import java.util.Properties;
import java.util.Set;
public class decrypt {
/**
* @param args
*/
public String Execdecrypt() {
// TODO 自动生成构造函数存根
String s="";
try{
//读取密文
//BufferedReader in=new BufferedReader(new InputStreamReader(new FileInputStream("RSAmi.dat")));
//String ctext=in.readLine();
Properties pro = new Properties();
try {
// 将信息包存在a.ini文件中
pro.store(new FileOutputStream("a.ini",true),null);
// 可以从a.ini中通过Properties.get方法读取配置信息
pro.load(new FileInputStream("a.ini"));
} catch (FileNotFoundException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
String ctext=String.valueOf(String.valueOf(pro.get("register")));
System.out.println(ctext);
BigInteger c=new BigInteger(ctext);
//获取私钥
FileInputStream f=new FileInputStream("RSAPrikey.dat");
ObjectInputStream b=new ObjectInputStream(f);
RSAPrivateKey prk=(RSAPrivateKey)b.readObject();
//得到公钥的两个参数
BigInteger d=prk.getPrivateExponent();
BigInteger n=prk.getModulus();
//System.out.println("解密的私钥的指数为:" d);
//System.out.println("解密私钥的模为:" n);
//解密处理
BigInteger m=c.modPow(d, n);
byte [] mt=m.toByteArray();
//System.out.println("解密后的明文为:");
for(int i=0;i<mt.length;i ){
//System.out.print((char)mt[i]);
s =(char)mt[i];
}
//}
}catch(Exception e){
e.printStackTrace();
}
return s;
}
public static void main(String[] args) {
System.out.println(new decrypt().Execdecrypt());
}
}
package com.encrypt;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.math.BigInteger;
import java.security.interfaces.RSAPrivateKey;
import java.util.Properties;
import java.util.Set;
public class decrypt {
/**
* @param args
*/
public String Execdecrypt() {
// TODO 自动生成构造函数存根
String s="";
try{
//读取密文
//BufferedReader in=new BufferedReader(new InputStreamReader(new FileInputStream("RSAmi.dat")));
//String ctext=in.readLine();
Properties pro = new Properties();
try {
// 将信息包存在a.ini文件中
pro.store(new FileOutputStream("a.ini",true),null);
// 可以从a.ini中通过Properties.get方法读取配置信息
pro.load(new FileInputStream("a.ini"));
} catch (FileNotFoundException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
String ctext=String.valueOf(String.valueOf(pro.get("register")));
System.out.println(ctext);
BigInteger c=new BigInteger(ctext);
//获取私钥
FileInputStream f=new FileInputStream("RSAPrikey.dat");
ObjectInputStream b=new ObjectInputStream(f);
RSAPrivateKey prk=(RSAPrivateKey)b.readObject();
//得到公钥的两个参数
BigInteger d=prk.getPrivateExponent();
BigInteger n=prk.getModulus();
//System.out.println("解密的私钥的指数为:" d);
//System.out.println("解密私钥的模为:" n);
//解密处理
BigInteger m=c.modPow(d, n);
byte [] mt=m.toByteArray();
//System.out.println("解密后的明文为:");
for(int i=0;i<mt.length;i ){
//System.out.print((char)mt[i]);
s =(char)mt[i];
}
//}
}catch(Exception e){
e.printStackTrace();
}
return s;
}
public static void main(String[] args) {
System.out.println(new decrypt().Execdecrypt());
}
}