RSA2怎么加解密我已经在我另外一篇文章有分享
这里为了方便我们调试程序,生成我们需要的加密加签的参数,这里特别再分享出我编写的一个简易小工具
样子很简陋,如下图:
使用方法,就是通过下拉选项框中的选项,里面放了不同的密钥,选择出不同组合
再把明文放进【明文】文本框中,点击【加密】【加签】【解签】等按钮
结果文本框就会输出结果
实际运用的话,你需要修改内部源码,注释都比较详细了,我们的测试人员都看得懂,你不可能不懂
这个程序我并没有过度封装,都是写在一个类里面,保证复制过去就能跑来用
代码中的密钥我已经做过无效处理,需要你去自己生产后替换上去
窗口程序 :复制下来就能用
具体使用说明
/**
* 使用方法说明
*
* 1. 将参数集合整理如下
*
*{
"timestamp":12345234234,
"version":"1.0.0",
"content":{"sellerId":"1700","verifyCode":"admin","verifyStatus":1,"verifyNote":"1"}
}
*
* 加签后得到
*
* 66ded249294a104dd5568dfcc33c7ebad4226849bb0accbd4f06d8cbf6ceda8b7004d1be45c41a54ff857699c6dd13b5064f112c03e4366b348293079807ddb6700a63f460a7137f9c032063d539d53f62730203c22a328368a636c88938da7b51b347977cf6849ae7d0f96b2ecc4330087a5cbc045c8d40a6b670afc801d48b19658db7bea4803046a1f49604d72e61416852c3cc366bcc27fd4977394dc45c2e67ac69a7b5b0dd16b61f629bac936124d61bf375a48f2b75bd94bd149041e7b1afb63023eecb854d290972a7d37ef7c2fb7e2197bbd1257fa4f55c19abe349b6c3f1d34a2630fafde13a50b5f83bf41753b2ea5403da63ac66634f790fe948
* 2.将加签后的字符串加入上边的参数集合
*
* 得到
*{
"timestamp":12345234234,
"version":"1.0.0",
"content":{"sellerId":"1700","verifyCode":"admin","verifyStatus":1,"verifyNote":"1"},
"sign":"66ded249294a104dd5568dfcc33c7ebad4226849bb0accbd4f06d8cbf6ceda8b7004d1be45c41a54ff857699c6dd13b5064f112c03e4366b348293079807ddb6700a63f460a7137f9c032063d539d53f62730203c22a328368a636c88938da7b51b347977cf6849ae7d0f96b2ecc4330087a5cbc045c8d40a6b670afc801d48b19658db7bea4803046a1f49604d72e61416852c3cc366bcc27fd4977394dc45c2e67ac69a7b5b0dd16b61f629bac936124d61bf375a48f2b75bd94bd149041e7b1afb63023eecb854d290972a7d37ef7c2fb7e2197bbd1257fa4f55c19abe349b6c3f1d34a2630fafde13a50b5f83bf41753b2ea5403da63ac66634f790fe948"
}
*再进行加密
*
* 得到
*
* VQ3TmBrsN4XQ5F2eLYxOKMroP4YrQQtUcKsnG1nL++7WTjwSAo1seJ9rw4lOJYE3ESdvXcD+roiwrxvMh6Be2giuxELXhDkyHxLqtwne/dusuzKCyo8QhxC9gbER4zS+6ARquBgZQso43LKjKyo1zhu3qrvHZ1dyTlaazuA5tM8a0tHKI085r1jUSlGw18ODoL931rbgpjT0a2vGErYL6xZ9ykt3MdgFsODMuD9qClqKUXKdhkdBxoSYH1sZad1/S8pb/BHBU4ZCUgYI9w8ayVm27+46bQ20vD9yJPChv38OEoU7ed2eXIapt3OJWoitubTcHpO/AySwzMJch0UMq3mUkrMDLAzhh36FfmvRIYYz5nHeOOVcjP+7tTFUbUMCAgk5oog383eY+OhaH+/ZIcgrdsyqHu6vYLezJS15UnyU1tUm+0lBIZuwUNJjLYQpCsE/vbtgo0kLwT7/cQArEme7/nCdk77sGkC0Bzg6zEV9ISXrz4MtGEXTDqD97t+58BviegVw6N2etXdY3R38PTYptmgwI8GoXml676r9hq+w5rnQhMmjQocZMX6GendoiWtHN1xqmSt+8CbgdQGNlYJOJhd997xxsGWhULhdIGTGH5TNnjoKI3wnvFIvFp4ZewkTqx6ExgbjwCvvpfl7xtbjudlpRknuy9lS5VfRo2U2tt6fLEfB/iFp67F5dBsk/j9n0WuXJx9teCoc5km/HcbuGGhiyoiLWSXB8DCfwsf6B+bI7Pp+b29EL5umPqBhpIVVh0ZY45YMTwJKd/Jo+ruaEut2yxdLCz75vufGfTL3fjloJUqAbcsuRa4Zka4PKLQZiVfzNay8c9l3ZGWzoGgXhN6iURrAS6hYP4J5dVWX+A4PbcwddFaXZfJ3SQwCSnMUmXdpAlCXYsKCOQZ2BmS4NVTZnoZ+IxvqHYpqNAYV/gcDcGGEgA7I0E/MpAwywc806Qm8Fk+bpzq4XY21jk0wdoyLxfjN2nlXRr4e/Pge7zs/sBvBbh/BjowWgpBJ
*
*
* 然后将最后得到的放入postman
*
* 如下
*
* appKey:17F96064551CCFDDE050007F0100760A
content:VBEv6uDAjhCi4F44z2LvXzfx7dnERNfN+5VNGPaVT70ou3H14cTiMOkw46sUcYrPUxTAEwV4oHiJtfELDRsd8h+MC2hglQFr4370Y9N2iN1azFzfoOmZlqKxwcFxYSGmI4JB1KsU3RJt/GfNDQwBSU4Q9SrZ42we0ZNS+hZHdxjVcMLLFOSXOoB+vyPiooAFas2jm+wDYg+BVLJeQOlnkKWYaRXFrWhqcuiQF2H8z0C0E5dRodOiexMrwB+DRqVMvbvEOd630rol2aHI4u7yfpD1vi02s/8SiWXXsiS2O3eXYX+t8WvE0VE/lX7uFk0ZIUd08Z0JQVEc4xZWVkYUpWlj1oruQ3eH0vg1TI5UyNVDl3SAJjDinRY4XitX8gjOwIeHWf3v5Lwqf6ea79JakvGQ62IYH6lwxbd/90+1gjP4TOKNmCK4jjw2ZforFb9mRjJwABn6uyxbIspuHwBDYD2+vCPKOj3DLy2nNAHUKXRIpM5pxHZjdNtcHASbtNVr9Lrnwtn6v8CmLehL69NutiT46k2R/X4rIzeZbjClqAzzYMghB+YjScc14NW6NQth8OgbHs77vo1Wi0Pz6xIMT+qHoqGXZQnOUUr0mkNkDBYtj4ubmo0e5LZcPskBKf80rkANvZHiOHME7MEchjm42o6KRBqjYvzouKhASdu7iG9m7V7dm9acrY6jBnZDATVBjSfKJDoXhQ7wGUEeI5kMuhvxmhnRKESyvRr3NUAsw9RuRN5aYxUlGWYwCmonTvIyk37Hob7Z8Pg4uDX1szNMLBneG609z4m6QFtd3mbrFw8fKaKKZ1Kgmfu5gmTWZUaBstWf7uoAzMGuPa+ASVrwti1JNh6zSlw2pjm2jRFXxaAioD8NLwQmIrARHLb64DphE7+1EAxzhmn6OXLEPiV5wrGQiBuXadPzh5wSxf3ai/4wtsjjWka0MULDdmV9JkV6eMnG7oHib5zf8xsY+SW0wfZCUzq78MrIYwDo9WlAAHcbsKWg/paf3tDG/8V6kUDp
*注意
* appkey是对应你加签加密配套的密钥
*
*
* 结束
*
*
*
*
*/
/**
* Created by 李金泉 on 2016/5/13.
*/
public class RSA2UtilFrame extends JFrame {
final RSA2Util rsa2Util = new RSA2Util();
/**
* 创建一个容器用于存放 标签和密码框
*/
JPanel jPanel = new JPanel();
/***创建一个label对象*/
JLabel jl1 = new JLabel("签名私钥");
JLabel jl2 = new JLabel("解签公钥");
JLabel jl3 = new JLabel("加密公钥");
JLabel jl4 = new JLabel("解密私钥");
final JTextField signprivateKeyField = new JTextField(75);
final JTextField signPubKeyField = new JTextField(75);
final JTextField encryptPubKeyField = new JTextField(75);
final JTextField decryptPrivateKeyField = new JTextField(75);
JLabel textLab = new JLabel(" 明文");
JLabel resultTextLab = new JLabel(" 结果 ");
final JTextArea text = new JTextArea(20, 75);
final JTextArea resultText = new JTextArea(20, 75);
JButton signBtn = new JButton("加签");
JButton signBtn2 = new JButton("解签");
JButton encryptBtn = new JButton("加密");
JButton decryptBtn = new JButton("解密");
SimpleListener simpleListener = new SimpleListener();
class SimpleListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
String text1 = text.getText();
if (text1.equals("") || text1 == null) {
JOptionPane.showConfirmDialog(null, "明文内容不能为空", "提示", JOptionPane.WARNING_MESSAGE);
return;
}
Map<String, Object> stringObjectMap=null;
if(e.getSource()!=decryptBtn) {
stringObjectMap= string2Json(text1);
}
if (e.getSource() == signBtn) { // 加签
if (stringObjectMap.containsKey("sign")) {
stringObjectMap.remove("sign");
}
String signprivateKey = signprivateKeyField.getText();
System.out.println("加签私钥==>"+signprivateKey);
String resultStr = rsa2Util.signByMap(signprivateKey, stringObjectMap);
resultText.setText(resultStr);
} else if (e.getSource() == signBtn2) {// 验签
String sign = "";
if (stringObjectMap.containsKey("sign")) {
sign = (String) stringObjectMap.get("sign");
stringObjectMap.remove("sign");
}
if (!sign.equals("")) {
String signPubKey = signPubKeyField.getText();
System.out.println("验签公钥==>"+signPubKey);
boolean b = rsa2Util.verifySignByMap(signPubKey, stringObjectMap, sign);
resultText.setText(String.valueOf(b));
}
}else if(e.getSource()==encryptBtn){// 加密
String encryptPubKey = encryptPubKeyField.getText();
System.out.println("加密公钥==>"+encryptPubKey);
String s = rsa2Util.sectionEncrypt(text1, encryptPubKey);
resultText.setText(s);
}else if(e.getSource()==decryptBtn){ // 解密
String decryptPrivateKey = decryptPrivateKeyField.getText();
System.out.println("解密私钥==>"+decryptPrivateKey);
try {
String s = rsa2Util.sectionDecrypt(text1, decryptPrivateKey);
resultText.setText(s);
} catch (Exception e1) {
e1.printStackTrace();
}
}
}
}
/**
* 测试方法 * @param args
*/
public static void main(String[] args) { // 初始化窗体
RSA2UtilFrame testFrame = new RSA2UtilFrame();
}
public RSA2UtilFrame() {
final JComboBox comboBox1 = new JComboBox();
/***加签私钥 顺序为 A B C*/
String[] signPrivateSelect = {"A签名私钥", "B签名私钥", "C签名私钥","D签名私钥"};
// 将解签公钥标签放入容器
jPanel.add(jl1);
// 添加选项值
comboBox1.setModel(new DefaultComboBoxModel(signPrivateSelect));
comboBox1.setBounds(15, 15, 100, 25);
jPanel.add(comboBox1);
jPanel.add(signprivateKeyField);
signprivateKeyField.setText(getsignPrivateKey("A签名私钥"));
final JComboBox comboBox2 = new JComboBox();
/***解签公钥 顺序为 A B C*/
String[] signPubSelect = {"A验签公钥", "B验签公钥", "C验签公钥","D验签公钥"};
// 将解签公钥标签放入容器
jPanel.add(jl2);
// 添加选项值
comboBox2.setModel(new DefaultComboBoxModel(signPubSelect));
comboBox2.setBounds(15, 15, 100, 25);
jPanel.add(comboBox2);
jPanel.add(signPubKeyField);
signPubKeyField.setText(getsignPubKey("A验签公钥"));
final JComboBox comboBox3 = new JComboBox();
/***加密公钥 顺序为 A B C*/
String[] encryptPubSelect = {"A加密公钥", "B加密公钥", "C加密公钥","D加密公钥"};
// 将解签公钥标签放入容器
jPanel.add(jl3);
// 添加选项值
comboBox3.setModel(new DefaultComboBoxModel(encryptPubSelect));
comboBox3.setBounds(15, 15, 25, 100);
jPanel.add(comboBox3);
jPanel.add(encryptPubKeyField);
encryptPubKeyField.setText(getEncryptPubKey("A加密公钥"));
final JComboBox comboBox4 = new JComboBox();
/***加密公钥 顺序为 A B C*/
String[] decryptPubSelect = {"A解密私钥", "B解密私钥", "C解密私钥","D解密私钥"};
// 将解签公钥标签放入容器
jPanel.add(jl4);
// 添加选项值
comboBox4.setModel(new DefaultComboBoxModel(decryptPubSelect));
comboBox4.setBounds(15, 15, 25, 100);
jPanel.add(comboBox4);
jPanel.add(decryptPrivateKeyField);
decryptPrivateKeyField.setText(getDecryptprivateKey("A解密私钥"));
// 将容器放入 frame中
// 设置窗体标题
this.setTitle("A 加密加签工具");
// 设置窗体大小
this.setSize(880, 1000);
text.setLineWrap(true);
resultText.setLineWrap(true);
jPanel.add(textLab);
jPanel.add(text);
signBtn.addActionListener(simpleListener);
signBtn2.addActionListener(simpleListener);
encryptBtn.addActionListener(simpleListener);
decryptBtn.addActionListener(simpleListener);
jPanel.add(signBtn);
jPanel.add(signBtn2);
jPanel.add(encryptBtn);
jPanel.add(decryptBtn);
jPanel.add(resultTextLab);
jPanel.add(resultText);
this.add(jPanel);
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
this.setResizable(false);
this.setVisible(true);
this.setLocationRelativeTo(null);
/***下拉列表获取加签私钥*/
comboBox1.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
signprivateKeyField.setText(getsignPrivateKey(comboBox1.getSelectedItem().toString()));
}
}
});
/***下拉列表获取解签公钥**/
comboBox2.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
signPubKeyField.setText(getsignPubKey(comboBox2.getSelectedItem().toString()));
}
}
});
/***下拉列表获取加密公钥**/
comboBox3.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
encryptPubKeyField.setText(getEncryptPubKey(comboBox3.getSelectedItem().toString()));
}
}
});
/***下拉列表获取加密公钥**/
comboBox4.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
decryptPrivateKeyField.setText(getDecryptprivateKey(comboBox4.getSelectedItem().toString()));
}
}
});
/**数据解签**/
signBtn2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String text1 = text.getText();
}
});
}
public String getsignPrivateKey(String s) {
Map<String, String> signPrivateMap = new HashMap();
signPrivateMap.put("A签名私钥", "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgDW/hLDm8YdxVcXeQOAokvDuoEo3GKhFsKMeAiuD79SGuzFcRX5W4hISgsgAKoB7o1b3B5dbvMIFpemKsReZQfBvAoGBALeu1cQRAX4rVbYFKE4AZFoK/6NOOelXyaOdI5JfSPGvb1OtSWXnKDUUJw9CTm0zcLuvRWXhuqEfdwi0wO1H4g2U3jmb/RetnZOlj7HN/OikN9pyWLbu4dWQORnNRgwoQRRkUghFjQX1qZk/1aieWtK8+iKtcd63utacBUYYVVJY");
signPrivateMap.put("B签名私钥", "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCIqntLHFFbWQDOfrcg00NZbwapMJCfwZcaVXd93zoUHvEqwWAD7H6JuAs5roDOsakjlyCX00eS2fDSbm2OmUZuZDyCSmMgCS85bKC2FyBqEj4zStcOhkcWQmz8m3U8ufzVDkB+3BoBVVhfICMznJPZCBbUpQ9vm7EdA11qB5msDKtHf88RGvKnHfhyXUlo6hJIjtIe7OBMnJVgA3rQfINP6vxZmIuApQ1PgVd1zIfQvbDwdAoGASWsormCx0zK642x33Car9T3lQRE2h4XusI8zdByazjYF6sGHhIzW+oIszFSocNS6zv/Mz5lYQL67T+UDcPCcScUBVpgWH0Xr6M3dIZM30+WPWPrOSxWVPPZpigSbyRCsSe5n3j5PX/H2qwlaMX0aNrk+2JLmJZBSL1C5ISUJPvQ=");
signPrivateMap.put("C签名私钥", "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoZxgAkbu5JB7xZmUWE+cO5AYc9WW/bSz7bucieydSRcVfnqcN0/DQny06OancWz7whiws+ycx4n3uAnNSZllcVcufvwKBgH4Ut6YeYGSoDAeeVDYGrQJnB6+3HtSnwLVKFBaKLX1NrdKVj9eVUH9tYsVXraArObhw4TkJJFla38qX2v4zczYO1jaNX1dmhodaT2eSqRRdEBArU2rCyahey98aKK8jv18zUYS2eZ8+84fUonOMaSwaftMWiNT89duX6HPcGgNk");
signPrivateMap.put("D签名私钥", "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAo7BkpL1zdSnlmeY1J/AThWlEBot0ffD2L6CEK+FZbJ1Q1F3QHh3XOwietIrfw28K84J1e6YYWjvdLrUoCSLFF79WxAoGATOLHuIAHi3bxf+6RDUhx/BhbSE5ONlxVmytsFbDN2zYHFvEYlYtFKy1g71Whx5NCzC/27vBEdJ80rkpOaX4Lv2UkHH25cNTpZ4+LLytKSxJLWPqZ0hR66L47lShgFpVHJDvSC5I1mUh6y4onvIaCVnVym2XS1Ma3X3/Fge0btk4=");
if (s.equals("A签名私钥")) {
s = signPrivateMap.get("A签名私钥");
} else if (s.equals("B签名私钥")) {
s = signPrivateMap.get("B签名私钥");
} else if (s.equals("C签名私钥")) {
s = signPrivateMap.get("C签名私钥");
}else if(s.equals("D签名私钥")){
s = signPrivateMap.get("D签名私钥");
}
return s;
}
/**
* 通过传入的KEY值获取验签公钥
*
* @param s
* @return
*/
public String getsignPubKey(String s) {
Map<String, String> signPubMap = new HashMap();
signPubMap.put("A验签公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwPyCCImdyrsQo06VeZGi1USqAc5D1h4KDjgUCi1eID5KM7zAXVM27MRzjvn0FjsixxByNXq2JQNl4PvjR0tFTxswr9KDz7FFbAMl2zAN7BggN3nD+je3EYkxubNO1mDbmzPBJv+VjMqeql0yQbTOUl9dVilSQzaMW0fiBbhDFoOlhDBaBkUI+bRuDArU72rpNVYt/NhRg7M0VBwxVWLYjCP145u5XY7N8qTlIV0rGOrDQsJkpN/f3yn+YWV/nkX+m/uHwJj927bGfm9rMnqMV1UpVmj1Z+g/2+BFLYtNGJrMN0el0l8jf/TON4NpzpnZAl3SkkKnnVxn6vw4uKPhYQIDAQAB");
signPubMap.put("B验签公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiKp7SxxRW1kAzn63INNDWW8GqTCQn8GXGlV3fd86FB7xKsFgA+x+ibgLOa6AzrGpI5cgl9NHktnw0m5tjplGbmQ8gkpjIAkvOWygthcgahI+M0rXDoZHFkJs/Jt1PLn81Q5Aft52/YK5XChbkYFf2VUo2uBZRIg/1xCXrmdzOwfSqPBkXumSZzHf9t5YSs9OhuvOkeFHvC1JEH2q4znSZk5Q/ltstAEFbIb0k1wURJVPR8AsyZ2CHhiNGe/qBXVLNNSqeYeraFkfLyg/GxWXZvJ443qrlXiNol0LmbDyXAzl+vG3V0UtEoqeKqJWwjCu3Au5rDIDZMeABVcPc7hFaQIDAQAB");
signPubMap.put("C验签公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2OC3nXuyTQ3ZPrDUPjKv6VklfqEVnUmP2wm1aZoyPeT6XLnGMKW5Xkneb65UOnRHjX05NbBaTWSX9td3ZyheLnyz6wbfP06nzR6YnNBm7eM5sBB7Vfe+OQFZT4VJabZtpCFDPOfJlhtslItVYLpQx46qWRJrygmLxjQDUvti89YU7rcyGrInk4MdlkX/5XlihMxcHAv5nOLWFekd0fBHCGDoA/zFFJWynARiR544dQnP79waonLCgAM+o9aAL8CJQa0mEDFzFvAoA3E0GRVfW/zDsOX7payJhbKFszOvPJZfk1qsUbBbn0SDfmFN5J59Sh4QYdBn8+FcnZbSRcm5owIDAQAB");
signPubMap.put("D验签公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjEZIs7QMPble/9RVoM2y7+xKDomdn4DfOBpnveVHXifiD+49fpnPasRcBd8gZPyCBJjjqe74x25WhOEuIBGZHfVp5slo42RosUvB8XT2jbhkz3pg3HFFndznQr5S9E0XivxJ6Ggea9jqZZmU01aQrIFjdRHEBCmm2zup0X6YIrPqIoUFSQPEHMKQR8g5P9eZFCFlytV2yXakftC6BqUzy4J5vG1aFZj9BWhWDDHb9vzLnc7FoOCgGZgEI7zkjQWn5sJurs7+OlhKjKZC6ZlQt4Fz6FsEoaTEDEfMZJT8go+JRoOZHajfZ7MGJcoIt/FmByMMUOQIjQx9D71ffdGDaQIDAQAB");
if (s.equals("A验签公钥")) {
s = signPubMap.get("A验签公钥");
} else if (s.equals("C验签公钥")) {
s = signPubMap.get("C验签公钥");
} else if (s.equals("B验签公钥")) {
s = signPubMap.get("B验签公钥");
}else if(s.equals("D验签公钥")){
s = signPubMap.get("D验签公钥");
}
return s;
}
public String getEncryptPubKey(String s) {
Map<String, String> EncryptPubMap = new HashMap();
EncryptPubMap.put("A加密公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAj33UJGuD9DMzHK62gSaFlcPcEjgQg2g2+XZIM1IF6bqM7Cm1r8+8o9JPWFcNAOFCCwHg0hFwovJV8dUPoU7om9IWAiptZ0HqpqPENjE1tOuMGUqOG6cpBHQiW8xFxfVdb747Zq0sB4lIDJD8Y2ZskGSPDjh3cfwX00IOs53KadKJVuKUkh/crRfWMu2M45iij3dq9R3s0X99YO+0jN+4+4pEEFCNCDLmka6lIe1HTaHVHLbAHKq0GWjbJ2NrXpgx1gwjXVPXSLMPcUeI9IQE4ExhnA7osXLdwcR0NIVCdxTNdYwOL6flObijgBPSm7MmZhbuGOqTHanUtikWu+oBNwIDAQAB");
EncryptPubMap.put("B加密公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiKp7SxxRW1kAzn63INNDWW8GqTCQn8GXGlV3fd86FB7xKsFgA+x+ibgLOa6AzrGpI5cgl9NHktnw0m5tjplGbmQ8gkpjIAkvOWygthcgahI+M0rXDoZHFkJs/Jt1PLn81Q5Aft52/YK5XChbkYFf2VUo2uBZRIg/1xCXrmdzOwfSqPBkXumSZzHf9t5YSs9OhuvOkeFHvC1JEH2q4znSZk5Q/ltstAEFbIb0k1wURJVPR8AsyZ2CHhiNGe/qBXVLNNSqeYeraFkfLyg/GxWXZvJ443qrlXiNol0LmbDyXAzl+vG3V0UtEoqeKqJWwjCu3Au5rDIDZMeABVcPc7hFaQIDAQAB");
EncryptPubMap.put("C加密公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgLJLJSLK+t7UyOFkFf7cqtH0qmO9lKmgAJ9hB2XDBvzRTfwEtwAuR/SqCFVjWj+R1X3mvYEvUe39sCxsWHf0NGLqGUiF7EDAKOPOMrp1NEjFVh8gOyOSuu8P/BUqAoea1zCndFeJB6yFLSggYC0SawxiV2aWO/zKK0oS8sl4d76RY1XbRWU1Pz+Cn3y/2VuBwTNhc7ZnGanBBVwrvyTDNQowTnnEirieRdo8Riv9WrZ/ktyOPiHO4IkdmHASRMEd2u18/H/MxkIK84yF/YCdxbyGTjDZ6qkhye9KQ2IHEa+kq6mksK2ewdG2sLV860LVDJhvee/+laDOQS2mFlaQWQIDAQAB");
EncryptPubMap.put("D加密公钥", "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjEZIs7QMPble/9RVoM2y7+xKDomdn4DfOBpnveVHXifiD+49fpnPasRcBd8gZPyCBJjjqe74x25WhOEuIBGZHfVp5slo42RosUvB8XT2jbhkz3pg3HFFndznQr5S9E0XivxJ6Ggea9jqZZmU01aQrIFjdRHEBCmm2zup0X6YIrPqIoUFSQPEHMKQR8g5P9eZFCFlytV2yXakftC6BqUzy4J5vG1aFZj9BWhWDDHb9vzLnc7FoOCgGZgEI7zkjQWn5sJurs7+OlhKjKZC6ZlQt4Fz6FsEoaTEDEfMZJT8go+JRoOZHajfZ7MGJcoIt/FmByMMUOQIjQx9D71ffdGDaQIDAQAB");
if (s.equals("A加密公钥")) {
s = EncryptPubMap.get("A加密公钥");
} else if (s.equals("B加密公钥")) {
s = EncryptPubMap.get("B加密公钥");
} else if (s.equals("C加密公钥")) {
s = EncryptPubMap.get("C加密公钥");
}else if(s.equals("D加密公钥")){
s=EncryptPubMap.get("D加密公钥");
}
return s;
}
public String getDecryptprivateKey(String s) {
Map<String, String> decryptPrivateMap = new HashMap();
decryptPrivateMap.put("A解密私钥", "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBkAb4NbQKBgQCnKfHXyul/+4UV+de6uCptdU6AaYlA/YLFy5F0yp6PrebNsyAsPfv/r2oUckw55g6KPSLRCR3+tPKTt6Oa9BS05yZioEbeuDzec5tc7g19Mh9A982dIGQ3mR6YrEzRwnZHzoD9IfNT3mmZXsv2x0Jexe8j6HdEM5H3S0fcuxRWswKBgAhOMh+fJWV30XP8Qid2ZJUVhY73u0jxiuCXY+GtxEU0e28+a9DVq0SGa5gzuE9SMExZMfrQbgIBd80kc0DZW5IBNwfcvoVBBmf5xmKjvAB2oCkU5neDJ4Oaglxuk+onn96t39AoGAIxedG44PYrysfaaLcTlEPuJHbpG5LJmLoHZRvNDkZIk/UKNv95mzk0OB43TzJ5xyJPccngFp+JSH8Ba3E8p1plx4JHA9MHhA3vop/WJEFqo1AXCEC55HK5zLXYWeQtKt/fkN/xXnfQ3N4VKTQuUlu7uVrlYY44pn9CArn9zuMh0CgYB0sOSYi/22KoeK7sg1XeMV1tCRZZwE4bKM7PJHc4i5AhT+0PJKmFupIv7rxuIg0Fco+hoDq35ajo9rWsBoawDipkOYK/tseuDaf3ZAwtouEoOD5SmWMA7VxDpXdEg1jEOw4Sk/pZ3BIgM8jl8UtRTOpvBvAcrlnCFjdw49XniRgQ==");
decryptPrivateMap.put("B解密私钥", "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCIqntLHFFbWQDOfrcg00NZbwapMJCfwZcaVXd93zoUHvEqwWAD7H6JuAs5roDOsakjlyCX00eS2fDSbm2OmUZuZDyCSmMgCS85bKC2FyBqEj4zStcOhkcWQmz8m3U8ufzVDkB+3nb9grlcKFuRgV/ZV11qB5msDKtHf88RGvKnHfhyXUlo6hJIjtIe7OBMnJVgA3rQfINP6vxZmIuApQ1PgVd1zIfQvbDwdAoGASWsormCx0zK642x33Car9T3lQRE2h4XusI8zdByazjYF6sGHhIzW+oIszFSocNS6zv/Mz5lYQL67T+UDcPCcScUBVpgWH0Xr6M3dIZM30+WPWPrOSxWVPPZpigSbyRCsSe5n3j5PX/H2qwlaMX0aNrk+2JLmJZBSL1C5ISUJPvQ=");
decryptPrivateMap.put("C解密私钥", "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCAskslIsr63tTI4WQV/tyq0fSqY72UqaAAn2EHZcMG/NFN/AS3AC5H9KoIVWNaP5HVfea9gS9R7f2wLGxYd/Q0YuoZSIXsQMAo484yunU0SMVWHyA7I5K67w/8FSoCh5rXMKd0V4kHrIUtKCBgLRJrw8I1wq0wog9zk3KyeSBkygfHMF8En1GVyWwb3ZFp6ZDHI/bHhA1AoGAEMIloVQr3jrqyOP9Mq7mmlT880zFqwPnAVFeIOVzZXbvEyMDW3TgV/iF72vd9EKiGzsybjwpCWIRvuFkcn0c/MiagiGQWbG2b7IDvy478gJ+iJiZm1+RsLh4qaCQAOL4uwuqWMu38UhF1DH1oPhJzytqe1QQXkbABi7EtMoXVu0CgYEAjEjfbyux7rO2gz/dlQ1GwSDPRbD8AKaF21Mhv4pE2zTVKndEYKQdp74tI+JWjthVoFxgMnf3fnv8s//Bjsc8T9naJIiO2wzpavDzoJF13+AzugNqr+Doo0pbDhZXF5wOMqPN56NzSrbTKla0qM66NvrsD6l1uZrxUfxg+orsqXs=");
decryptPrivateMap.put("D解密私钥", "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwgwOTcMDncHoUIzBkpL1zdSnlmeY1J/AThWlEBot0ffD2L6CEK+FZbJ1Q1F3QHh3XOwietIrfw28K84J1e6YYWjvdLrUoCSLFF79WxAoGATOLHuIAHi3bxf+6RDUhx/BhbSE5ONlxVmytsFbDN2zYHFvEYlYtFKy1g71Whx5NCzC/27vBEdJ80rkpOaX4Lv2UkHH25cNTpZ4+LLytKSxJLWPqZ0hR66L47lShgFpVHJDvSC5I1mUh6y4onvIaCVnVym2XS1Ma3X3/Fge0btk4=");
if (s.equals("A解密私钥")) {
s = decryptPrivateMap.get("A解密私钥");
} else if (s.equals("B解密私钥")) {
s = decryptPrivateMap.get("B解密私钥");
} else if (s.equals("C解密私钥")) {
s = decryptPrivateMap.get("C解密私钥");
}else if(s.equals("D解密私钥")){
s= decryptPrivateMap.get("D解密私钥");
}
return s;
}
public Map<String, Object> string2Json(String s) {
Map parse = null;
try {
parse = (Map) JSON.parse(s);
} catch (Exception e) {
int i = JOptionPane.showConfirmDialog(null, "你的明文不是规范的JSON格式数据","提示",JOptionPane.CLOSED_OPTION);
return null;
}
return parse;
}
}