JAVA swing实现的RSA2窗口小工具

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;
    }
}










 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
bhaaAThangemMkaz2tQhq3/f7dZ7 Vj29WeGHjuupj/AhYqymjAuokhYi X1T/fG+q1yR22PdcEP39dxU3ovEo lLLzwIZlQr9oJYwUf5eG4x5e1bMP nfIaIl8reszQPHFNbrxBjCVrBEXL TyBLehxzUpVI672t3LjX8q4ytCRC ezcoZQfMAc0DulJzNREbwlcf0Rco N0zW3ojBUxGsplBBZZPrD7/bPhkM rjtS8Bxym+HeV1TJDTXuiL8QLg== ====================================== fSbC9xxy7ga57DOrLz9mMqYSFx8S OIWiOBI61uJ562GINVTVNBDaGBIl Cuni0a1iUAF88I6zrHzH9Wzcv4h+ h3wTGgOX8mYgN0jEEOmzI1DLx0DJ 8t94hUJ5O0I99Ts6iqvHhw24jYfI h++JG/BzVLnaSDbNdqH9iYbXZ2Pc eFZAZe6hzPQ9DREtkEvg7rAul/Fw ZptCP1WFfKkfgviwY8i67NucJe2L UTZFKoX5MGSuP9GGJnouQg/P1SII 3PCKXGoUv0hBoTiMLXBlJWpaNg== ============================================= 0W01VaFQPp/XRYgXjOFSUY7hZ5Cc W9f35KH4bym2jmhYygsHyNsr47Hs 7OBjd7QH+ALAKqZdDAh/AfG3V/8Q his64uZEhglY8B8yu5PvN49tOO05 XG7Qyz3skOK3An9Zoc/xSA1fLGeq PioqBj/khHWF1LK0lBi00LOLFXzs oQtoMi1Ol+Ehxz8URH3kQqN09raw iM7DrTxZe1oVoOjTPDerwPOLULI1 6EnbdBu92YSk0tYQw0BmVss2G6ak GjaDrPWrDWP3uip0OOX4UXNggQ== =============================================== H4nLHG3xsjy5l4QMEsSpaYAyggPp 9OdFDMG0Y1XM7VqTyg+GAAm8V/eP 9zuAwQ5/9tA8GQeOlavXxIDkMsY7 I4UAy4LmhUU2vLtEkgjtMhSd3nFT OGe2bOmGvoMCPts/1eQx5YFMet9K AjkZPI1BR8/fm7Mb0bQOPeJQyilC T1/4k4MfqnQkub06+ADZ7pg3WdkC jneqAVvKPaM2Kf55cGDsLmo3Xxck ZHpzPKJDISjEQ+qFadS8Z9Ao0HHK 31JWyvw0Qr/9d0Ku10+W6DrhZw== ================================================= DZaNXFw2rfRrF3xlukPGGiilkurQ r7vKuSPCUEdAoRWRJmjnADY0Ink3 Nr9qD3CM5+v9PYJ4uf/b9jShtlYH KV16XPA+On7CjH8zqxywbz2ci85i f0va/I0DOvGhpsww1jAJCJWC4A+z ZjTMzA0+SEQcKyHzOUe89eA+c/Gq FZBmitn5u602wlMj2KtvMSN8EgSc wDVxI+FSi0U/b89fRaUMJRbUadm0 uZHKMPdlaykMQPwZFN8G561OFCU/ rbFQlatd0JFPnLKxjNsjva04LQ== =============================================== hFeWdc8oboH/QwzaaLhrH6CgRo6g nBXqa0bjHJdEYTIzMdqnkEBvygf+ xJeO2zRqajhnH+S1wZWeNUwXLwZm KvS8LCvwCf1WBqzsRMuDOTQnac5d RGf80G986szBG8kzkhKjC4Bx3uLy NomiYSHrGBoDacd5wPCqFMoTsaMC CjVMabK/JyQyAeuULOf8lW0WiXTo TKH7k1yGW6plaQKWGIqBZuYlYk5H tFm8hdKXaxbeiiREFl7ni1G9lP7j 1Gdf/cmb+fq2sKrSgZyLEjQLFA== =============================================== Y2CjWsyI23Fa0G1pban8ep83zQAI 7mERztK7a3ZufX0LWeAe/y50DURN kOOlakZ0dgkoipf/6KsNEEm2aptm L3/dXG1jKphojzSwNsS4PHY4qGKA 9vHBEAsDLlwGrLFfmdtKOCrgNG6V ab7clt+yRFuxctwefegNu02YdlGC wEKI2MP9QcMXl/aFLkFsz3mBFn1t YZtjYFswD+7zJ6KETy1cRK0TG/UK /6GoBQtjLIeCjNBbrEWvOm6XunsO jCaOhBeccOe3lIUCbJEwSFKAGA== ============================================= 3AFJhTfHVl0MBUFC1NEgO34cyEqR saJhnLE8X1K0OU5wU630QIlLyAiu pMGYcSoTEanqEaBvKiXFfMvqbTM+ X87dmWn6bicol0G9APDw1GKO4A4g Zyc8z47uRSNgqD9moJGFIdZZ+l1b +/PCg5MKBBhDhc6VDBKJ3hdVTu6L sW3+fY+9awZvyMMrXNu3STU0z0TX kHVOuMI+XqKeywPGEClGO/U5vgN7 DbL2xQm0Czm89V3fPnY+03gVOkP2 dvBKP4EqwgCXuxJVDEbC8T0bPQ== ============================================= SoydMqMl+/Gpf41SeCYSamtq3urK wqREsSLloXTdR1DoEd6sFEtxWH+0 w/nC12MfI+TzlhOuvit3bqOzUSrq XTPipT1EA1YfelWllo3inkHWZ8Bd IG4b/GCULr4ufAKEtZnyXVHeUPoo /HCkWPViDUwQUbQqZhcu7baPDnAo fGQlW5++dTXq3yIZTxNs8tpffgEk 5oemtUyJhXaAEas6KQKw/vEFLPho 48B3tuL31SNvluTSp3O3y8qZvSEV h3GE09Cp7E4SWKkv6rB9VG8Vcg== =============================================== Xzlv+2HZXpuIUhAUGVYmjhw6ncp9 b7qlOIwQa4BiPlhJl61ma2fUW1s4 BvNSzx0WgiHGB86X6VZ1ix3bXZop eq4MxQFHKtaLj60Y6jduOX8Id9Is oBIKLLkuRijSbZJpBxIqHLrz+2C/ nym1n8XbWYagYJ1z4OqNxjkrCGfW LoSPC9jAtivGSk3T5lDsUzh6MEqF bSd6Bjce5tqDgX9AV0DM3icFg3dF /u9XXp+72DOCT9FStV01UwID6L/O zzokhH37OQL8irSbjE1FdGW+TQ== ========================================== BJNZHBPeVX4GKH3AbulBcezga945 qNEKaHM8PpixioQLO0rZ57tUUQ7l jkWF/5Vh6pWVSJTmNhM54CkFDq3a M6EVzfPJT00+YS66mmQe4FI85zaj cvyNyiaKqBh8XjwxXhFs6oHjYJJ4 MAWRTTvOVXDH29E7J30UQkz4qFWD 0445Aj0clJCfu4WAmGq7TmAWF8H2 g+k5VUTx8aBnRS/WVMG3iyryv+3h W2S4LjfsnF1Zsaf4D4N9p5Uqr2rI Lvhaj80tbxjTja+MLVhNr4GURQ== ================================================= Lv/+h44wqgNXFicAJPjLZFqwpCoF mnn2JvfPTtQ9kEX51XdLNImcH6Pe bKp1KUMMGaUWSA5/NRMqqmoVaJQm Fh3B9G2jCyVfYeag+EFRCI/ByCpx Jg+yvnE4i9NUS1mKuBXD/QR5uEBk OsiAzv8DgQORN/sbIkjUKX7vwvzG 6QEaDIPaWzKqPV7RIctjkUt4+5Av r5oBre/6Mg1Q1GIhBftZkD1UtPm3 /3oDrT3o+2SlPNwElOcmypfkMHkk jAVK5+vfb8lOPKou3lmzUPZPKw== ============================================== zPH5/yKwB7akS0BMDoMsIRoIA0dN rE5EB8qSLhyCiwp+oZVZOYm7fH/o z7odFfCIGuTPHwUOB7r2u6AT1v0a i0vSNJXevY/dv/EY2hCClIhxTohs GUE0VLLV3vZJ0+AalJPuXfP3v513 PQgPG0jLLMHoYm2gC0eZU4TCQx0B r4JJo5Ne0CH9wGfwiPdkIul0NhHU uQGP78v0FIsTBbQvDuing6q3msxX GQ+GeVUmshiefNvZ8MzB86ug0PaL hgtayc9N3lwGEf23C2S/MZW6bQ== ================================================== pF+PyM1Vz5eTwApjWBBOC8UtZmOV 0xsmgjgvdTLVMXc8pLbhdsDkvMyI sgBv8WZuftr4FdKRxQVXVr+j5MAi ai3I9jJ4msA80i5ITzj+UykFuXeJ M8AB68iTiN80FjoKA1o2aJcjzc1J ffxHJCavDvlFG7KnfbuM9VjLHIbQ 9lkXTIQX20o6qYOPmPpOG7JqeVLe H4XZLbTjzJp81h5YY9dVISCKbf01 1Wl6vlh3L1Q1IFSnIfaQpTZwixHw bJZE8tuy2STl7G17uiqjuvcmdg==

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值