⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rsa.java

📁 用java写的RSA加密解密程序
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
			jButton213.setEnabled(false);
			jButton213.addMouseListener(new java.awt.event.MouseAdapter() {
				public void mouseClicked(java.awt.event.MouseEvent e) {
					saveFile(6);
				}
			});
		}
		return jButton213;
	}


	/**
	 * This method initializes jButton222	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton222() {
		if (jButton222 == null) {
			jButton222 = new JButton();
			jButton222.setBounds(new Rectangle(534, 388, 70, 16));
			jButton222.setText("读取");
			jButton222.addMouseListener(new java.awt.event.MouseAdapter() {
				public void mouseClicked(java.awt.event.MouseEvent e) {
					loadFile(3);
					
				}
			});
		}
		return jButton222;
	}


	/**
	 * This method initializes jButton223	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton223() {
		if (jButton223 == null) {
			jButton223 = new JButton();
			jButton223.setBounds(new Rectangle(534, 474, 70, 16));
			jButton223.setText("读取");
			jButton223.addMouseListener(new java.awt.event.MouseAdapter() {
				public void mouseClicked(java.awt.event.MouseEvent e) {
					loadFile(6);
					
				}
			});
		}
		return jButton223;
	}


	/**
	 * This method initializes jButton224	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton224() {
		if (jButton224 == null) {
			jButton224 = new JButton();
			jButton224.setBounds(new Rectangle(534, 201, 70, 16));
			jButton224.setText("读取");
			jButton224.addMouseListener(new java.awt.event.MouseAdapter() {
				public void mouseClicked(java.awt.event.MouseEvent e) {
					loadFile(4);
					
					
				}
			});
		}
		return jButton224;
	}


	/**
	 * This method initializes jButton214	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton214() {
		if (jButton214 == null) {
			jButton214 = new JButton();
			jButton214.setBounds(new Rectangle(632, 201, 70, 16));
			jButton214.setText("\u4fdd\u5b58");
			jButton214.setEnabled(false);
			jButton214.addMouseListener(new java.awt.event.MouseAdapter() {
				public void mouseClicked(java.awt.event.MouseEvent e) {
					saveFile(4);
				}
			});
		}
		return jButton214;
	}


	/**
	 * This method initializes jRadioButton2	
	 * 	
	 * @return javax.swing.JRadioButton	
	 */
	private JRadioButton getJRadioButton2() {
		if (jRadioButton2 == null) {
			try {
				jRadioButton2 = new JRadioButton();
				jRadioButton2.setBounds(new Rectangle(358, -1, 21, 21));
				jRadioButton2.setToolTipText("无限制的模式");
				jRadioButton2.setSelected(true);
				jRadioButton2.addFocusListener(new java.awt.event.FocusAdapter() {
					public void focusGained(java.awt.event.FocusEvent e) {
						jRadioButton1.setSelected(false);
						jRadioButton.setSelected(false);
						jButton121.setEnabled(true);
						jButton12.setEnabled(true);
						jButton311.setEnabled(true);
						jButton31.setEnabled(true);
						jButton.setEnabled(true);
						jButton3.setEnabled(true);
						jButton224.setEnabled(true);
						jButton2.setEnabled(true);
						jButton24.setEnabled(true);
						jTextArea.setText("");
						jTextArea1.setText("");
						jTextArea4.setText("");
						
					}
				});
			} catch (java.lang.Throwable e) {
				// TODO: Something
			}
		}
		return jRadioButton2;
	}


	public static void main(String[] args) {
		
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				try {
					UIManager.setLookAndFeel(UIManager
							.getSystemLookAndFeelClassName());
				} catch (Exception e) {
					throw new RuntimeException(e);
				}
				Rsa thisClass = new Rsa();
				thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				thisClass.setVisible(true);
			}
		});
	}

	
	public Rsa() {
		super();
		initialize();
	}

	
	private void initialize() {
		this.setSize(800, 600);
		this.setResizable(false);
		this.setContentPane(getJContentPane());
		this.setTitle("RSA加密解密程序");
	}

	
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			jLabel6 = new JLabel();
			jLabel6.setBounds(new Rectangle(388, 2, 54, 15));
			jLabel6.setText("超级模式");
			jLabel5 = new JLabel();
			jLabel5.setBounds(new Rectangle(19, 344, 87, 22));
			jLabel5.setHorizontalAlignment(SwingConstants.CENTER);
			jLabel5.setText("块大小");
			jLabel23 = new JLabel();
			jLabel23.setBounds(new Rectangle(421, 476, 69, 15));
			jLabel23.setText("加密私钥");
			jLabel23.setHorizontalAlignment(SwingConstants.CENTER);
			jLabel22 = new JLabel();
			jLabel22.setBounds(new Rectangle(21, 474, 89, 15));
			jLabel22.setText("加密公钥");
			jLabel22.setHorizontalAlignment(SwingConstants.CENTER);
			jLabel4 = new JLabel();
			jLabel4.setBounds(new Rectangle(591, 14, 46, 18));
			jLabel4.setText("");
			jLabel311 = new JLabel();
			jLabel311.setBounds(new Rectangle(420, 199, 76, 20));
			jLabel311.setText("数字签名");
			jLabel31 = new JLabel();
			jLabel31.setBounds(new Rectangle(492, 40, 46, 15));
			jLabel31.setText("密文");
			jLabel3 = new JLabel();
			jLabel3.setBounds(new Rectangle(58, 42, 26, 15));
			jLabel3.setText("明文");
			jLabel21 = new JLabel();
			jLabel21.setBounds(new Rectangle(420, 388, 69, 15));
			jLabel21.setText("签名私钥");
			jLabel21.setHorizontalAlignment(SwingConstants.CENTER);
			jLabel2 = new JLabel();
			jLabel2.setBounds(new Rectangle(19, 390, 91, 15));
			jLabel2.setHorizontalAlignment(SwingConstants.CENTER);
			jLabel2.setText("签名公钥");
			jLabel1 = new JLabel();
			jLabel1.setBounds(new Rectangle(387, 38, 53, 15));
			jLabel1.setText("接收模式");
			jLabel = new JLabel();
			jLabel.setBounds(new Rectangle(388, 20, 51, 15));
			jLabel.setText("发送模式");
   			jContentPane = new JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(getJRadioButton(), null);
			jContentPane.add(getJRadioButton1(), null);
			jContentPane.add(jLabel, null);
			jContentPane.add(jLabel1, null);
			jContentPane.add(getJScrollPane(), null);
			jContentPane.add(getJScrollPane1(), null);
			jContentPane.add(getJButton1(), null);
			jContentPane.add(getJButton2(), null);
			jContentPane.add(getJScrollPane2(), null);
			jContentPane.add(getJScrollPane4(), null);
			jContentPane.add(getJScrollPane5(), null);
			jContentPane.add(getJScrollPane6(), null);
			jContentPane.add(getJButton(), null);
			jContentPane.add(getJButton3(), null);
			jContentPane.add(getJButton11(), null);
			jContentPane.add(getJButton21(), null);
			jContentPane.add(getJButton22(), null);
			jContentPane.add(getJButton12(), null);
			jContentPane.add(getJButton31(), null);
			jContentPane.add(getJScrollPane3(), null);
			jContentPane.add(jLabel2, null);
			jContentPane.add(jLabel21, null);
			jContentPane.add(jLabel3, null);
			jContentPane.add(jLabel31, null);
			jContentPane.add(jLabel311, null);
			jContentPane.add(getJButton121(), null);
			jContentPane.add(getJButton311(), null);
			jContentPane.add(jLabel4, null);
			jContentPane.add(getJButton24(), null);
			jContentPane.add(jLabel22, null);
			jContentPane.add(jLabel23, null);
			jContentPane.add(jLabel5, null);
			jContentPane.add(getJTextField(), null);
			jContentPane.add(getJButton221(), null);
			jContentPane.add(getJButton211(), null);
			jContentPane.add(getJButton212(), null);
			jContentPane.add(getJButton213(), null);
			jContentPane.add(getJButton222(), null);
			jContentPane.add(getJButton223(), null);
			jContentPane.add(getJButton224(), null);
			jContentPane.add(getJButton214(), null);
			jContentPane.add(getJRadioButton2(), null);
			jContentPane.add(jLabel6, null);
			
		}
		return jContentPane;
	}
	private JFileChooser getJFileChooser() {
		if (jFileChooser == null) {
			jFileChooser = new javax.swing.JFileChooser();
			jFileChooser.setMultiSelectionEnabled(false);
		}
		return jFileChooser;
	}
	private void loadFile(int button) {
		int state = getJFileChooser().showOpenDialog(this);
		String text="";
		if (state == JFileChooser.APPROVE_OPTION) {
			File f = getJFileChooser().getSelectedFile();
			try {
				BufferedReader br = new BufferedReader(new FileReader(f));
				ObjectInputStream in=new ObjectInputStream(new FileInputStream(f));

				String s=new String();
				s=br.readLine();
				while (s!=null){
					text+=(s+'\n');
					s=br.readLine();
				}
				if (button==0){
					jButton1.setEnabled(true);
					jTextArea.setText(text);
					if (jButton211.isEnabled()){
						jButton12.setEnabled(true);
					}
				}
				else	if (button==1){
					
					jTextArea1.setText(text);
					jButton11.setEnabled(true);
					
				}
				else		if (button==4){
					try {
						jTextArea4.setText(text);
						jButton214.setEnabled(true);
					} catch (Exception e) {
						
					}	
					if (jButton21.isEnabled()){
						jButton311.setEnabled(true);
					}
				}
				else		if (button==2){
					try {
						signpubkey=(PublicKey) in.readObject();
						jTextArea2.setText(signpubkey.toString());
						jButton21.setEnabled(true);
					} catch (Exception e) {
						
					}					
				}	
				else		if (button==3){
					try {
						signprikey=(PrivateKey) in.readObject();
						jTextArea3.setText(signprikey.toString());
						jButton212.setEnabled(true);
					} catch (Exception e) {
						
					}	
					if (!jTextArea4.getText().equals("")){
						jButton121.setEnabled(true);
					}
				}
				
				else		if (button==5){
					try {
						pubkey=(PublicKey) in.readObject();
						jTextArea5.setText(pubkey.toString());
						jButton211.setEnabled(true);
					} catch (Exception e) {
						
					}	
					if (!jTextArea.getText().equals("")){
						jButton12.setEnabled(true);
					}
				}
				else		if (button==6){
					try {
						prikey=(PrivateKey) in.readObject();
						jTextArea6.setText(prikey.toString());
						jButton213.setEnabled(true);
					} catch (Exception e) {
						
					}	
				}
				br.close();
				in.close();
		} catch (FileNotFoundException e1) {
				e1.printStackTrace();
			} catch (IOException e1) {
				e1.printStackTrace();
			}
		}
	}
	private void saveFile(int num) {
		
		int state = getJFileChooser().showSaveDialog(this);
		if (state == JFileChooser.APPROVE_OPTION) {
			File f = getJFileChooser().getSelectedFile();
			try {
				BufferedWriter bw = new BufferedWriter(new FileWriter(f));
				ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream(f));
				if (num==0){getJTextArea().write(bw);}
				else if (num==1){getJTextArea1().write(bw);}
				else if (num==4){getJTextArea4().write(bw);}
				
				else if (num==2){out.writeObject(signpubkey);}
				else if (num==3){out.writeObject(signprikey);}
				
				else if (num==5){out.writeObject(pubkey);}
				else if (num==6){out.writeObject(prikey);}
				
				bw.close();
				
			} catch (FileNotFoundException e1) {
				e1.printStackTrace();
			} catch (IOException e1) {
				e1.printStackTrace();
			}
		}
	}
	
	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -