亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? myframe.java

?? 計算機安全的實驗:加密
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
			signet = java.security.Signature.getInstance("DSA");
			signet.initSign(rk);// 初始一個Signature對象, 
			signet.update(message.getBytes());
			signed=signet.sign();
			//System.out.println(signed);//
			
			JFileChooser chooser = new JFileChooser();
			chooser.setCurrentDirectory(new File("."));
			chooser.setDialogTitle("save signature");
			int i = chooser.showSaveDialog(this);
			if (i == JFileChooser.APPROVE_OPTION) {
				ObjectOutputStream oos;
				try {
					oos = new ObjectOutputStream(
							new FileOutputStream(chooser.getSelectedFile()));
					oos.writeObject(signed);
					oos.flush();
					oos.close();
				} catch (FileNotFoundException e) {
					JOptionPane.showMessageDialog(this, e.getMessage());
				} catch (IOException e) {
					JOptionPane.showMessageDialog(this, e.getMessage());
				}
				
			}
		} catch (NoSuchAlgorithmException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (InvalidKeyException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (SignatureException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		}
		
	}

	private void getRK() {
		JFileChooser chooser = new JFileChooser();
		chooser.setCurrentDirectory(new File("."));
		chooser.setDialogTitle("get private key");
		int i = chooser.showOpenDialog(this);
		if (i == JFileChooser.APPROVE_OPTION) {
			File file = chooser.getSelectedFile();
			try {
				ObjectInputStream ois=new ObjectInputStream(new FileInputStream(file));
				rk=(PrivateKey)ois.readObject();
				ois.close();
			} catch (FileNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (IOException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (ClassNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			}
		}
	}

	private void getPK() {
		JFileChooser chooser = new JFileChooser();
		chooser.setCurrentDirectory(new File("."));
		chooser.setDialogTitle("get public key");
		int i = chooser.showOpenDialog(this);
		if (i == JFileChooser.APPROVE_OPTION) {
			File file = chooser.getSelectedFile();
			try {
				ObjectInputStream ois=new ObjectInputStream(new FileInputStream(file));
				pk=(PublicKey)ois.readObject();
				ois.close();
			} catch (FileNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (IOException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (ClassNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			}
		}
	}

	private void getKPair(String alg) {
		try {
			KeyPairGenerator kg = KeyPairGenerator.getInstance(alg);
			System.out.println("Generating key pair ...");
			kg.initialize(512);
			KeyPair keyPair = kg.genKeyPair();// 生成密鑰組
			pk = keyPair.getPublic();
			rk = keyPair.getPrivate();
			JFileChooser chooser = new JFileChooser();
			chooser.setCurrentDirectory(new File("."));
			chooser.setDialogTitle("save public key");
			int i = chooser.showSaveDialog(this);
			if (i == JFileChooser.APPROVE_OPTION) {
				ObjectOutputStream oos = new ObjectOutputStream(
						new FileOutputStream(chooser.getSelectedFile()));
				oos.writeObject(pk);
				oos.flush();
				oos.close();
			}
			chooser.setDialogTitle("save private key");
			i = chooser.showSaveDialog(this);
			if (i == JFileChooser.APPROVE_OPTION) {
				ObjectOutputStream oos = new ObjectOutputStream(
						new FileOutputStream(chooser.getSelectedFile()));
				oos.writeObject(rk);
				oos.close();
			}
		} catch (Exception e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		}

	}
	private String openFile(String label) {
		JFileChooser chooser = new JFileChooser();
		chooser.setCurrentDirectory(new File("."));
		chooser.setDialogTitle(label);
		int i = chooser.showOpenDialog(this);
		StringBuffer s = new StringBuffer();
		StringBuffer s1 = new StringBuffer();
		if (i == JFileChooser.APPROVE_OPTION) {
			File file = chooser.getSelectedFile();
			try {
				FileReader reader = new FileReader(file);
				Scanner scan = new Scanner(reader);
				while (scan.hasNextLine()) {
					String str = scan.nextLine();
					s.append(str);
					s1.append(str + "\n");
				}
				scan.close();
			} catch (FileNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
				return "";
			}
		}
		messageShow = s1.toString();
		return s.toString();
	}
}

class MyDESCipher extends JPanel implements ActionListener {
	JTextArea myInfoArea = new JTextArea();
	JButton getDESKey = new JButton("GetDESK");// 生成密鑰并保存到文件
	JButton openMessage = new JButton("OpenMessage");// 導入消息或已加密的信息
	JButton openKey = new JButton("OpenK");// 導入密鑰
	JButton encrypt = new JButton("Encrypt");// 對消息進行加密
	JButton decrypt = new JButton("Decrypt");// 對消息進行解密
	SecretKey deskey =null;
	String message=null;
	String messageShow=null;
	public MyDESCipher() {
		this.setLayout(new BorderLayout());
		this.add(new JScrollPane(myInfoArea), BorderLayout.CENTER);
		JPanel buttons = new JPanel(new FlowLayout());
		buttons.add(getDESKey);
		buttons.add(openMessage);
		buttons.add(openKey);
		buttons.add(encrypt);
		buttons.add(decrypt);
		getDESKey.addActionListener(this);
		openMessage.addActionListener(this);
		openKey.addActionListener(this);
		encrypt.addActionListener(this);
		decrypt.addActionListener(this);
		this.add(buttons, BorderLayout.SOUTH);
	}

	public void actionPerformed(ActionEvent e) {
		String command = e.getActionCommand();
		if (command.equals("GetDESK")) {
			getDESK();
		} else if (command.equals("OpenMessage")) {
			message=openFile("open message");
			myInfoArea.append(messageShow);
		} else if (command.equals("OpenK")) {
			openKey();
		} else if (command.equals("Encrypt")) {
			encrypt();
		}
		else if (command.equals("Decrypt")) {
			decrypt();
		}
	}

	private void decrypt() {
		byte[] cipherByte=null;
		byte[] clearByte=null;
		JFileChooser chooser = new JFileChooser();
		chooser.setCurrentDirectory(new File("."));
		chooser.setDialogTitle("get cipher");
		int i = chooser.showOpenDialog(this);
		if (i == JFileChooser.APPROVE_OPTION) {
			File file = chooser.getSelectedFile();
			try {
				ObjectInputStream ois=new ObjectInputStream(new FileInputStream(file));
				cipherByte=(byte[])ois.readObject();
				ois.close();
			} catch (FileNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (IOException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (ClassNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			}
		}
		Cipher c1;
		try {
			c1 = Cipher.getInstance("DES");
			c1.init(Cipher.DECRYPT_MODE,deskey);
			clearByte=c1.doFinal(cipherByte);
		} catch (NoSuchAlgorithmException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (NoSuchPaddingException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (InvalidKeyException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (IllegalBlockSizeException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (BadPaddingException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		}
		try {
			myInfoArea.append(new String(clearByte, "UTF8"));
		} catch (UnsupportedEncodingException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		}
	}

	private void encrypt() {
		Cipher c1;
		try {
			c1 = Cipher.getInstance("DES");
			c1.init(Cipher.ENCRYPT_MODE,deskey);
			byte[] cipherByte=c1.doFinal(message.getBytes("UTF8"));
			
			JFileChooser chooser = new JFileChooser();
			chooser.setCurrentDirectory(new File("."));
			chooser.setDialogTitle("save cipher");
			int i = chooser.showSaveDialog(this);
			if (i == JFileChooser.APPROVE_OPTION) {
				ObjectOutputStream oos;
				try {
					oos = new ObjectOutputStream(
							new FileOutputStream(chooser.getSelectedFile()));
					oos.writeObject(cipherByte);
					oos.flush();
					oos.close();
				} catch (FileNotFoundException e) {
					JOptionPane.showMessageDialog(this, e.getMessage());
				} catch (IOException e) {
					JOptionPane.showMessageDialog(this, e.getMessage());
				}
				
			}
		} catch (NoSuchAlgorithmException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (NoSuchPaddingException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (InvalidKeyException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (IllegalBlockSizeException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (BadPaddingException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		} catch (UnsupportedEncodingException e) {
			JOptionPane.showMessageDialog(this, e.getMessage());
		}
	}

	private void openKey() {
		JFileChooser chooser = new JFileChooser();
		chooser.setCurrentDirectory(new File("."));
		chooser.setDialogTitle("open des key");
		int i = chooser.showOpenDialog(this);
		if (i == JFileChooser.APPROVE_OPTION) {
			File file = chooser.getSelectedFile();
			try {
				ObjectInputStream ois=new ObjectInputStream(new FileInputStream(file));
				deskey=(SecretKey)ois.readObject();
				ois.close();
			} catch (FileNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (IOException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			} catch (ClassNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
			}
		}
	}

	private String openFile(String label) {
		JFileChooser chooser = new JFileChooser();
		chooser.setCurrentDirectory(new File("."));
		chooser.setDialogTitle(label);
		int i = chooser.showOpenDialog(this);
		StringBuffer s = new StringBuffer();
		StringBuffer s1 = new StringBuffer();
		if (i == JFileChooser.APPROVE_OPTION) {
			File file = chooser.getSelectedFile();
			try {
				FileReader reader = new FileReader(file);
				Scanner scan = new Scanner(reader);
				while (scan.hasNextLine()) {
					String str = scan.nextLine();
					s.append(str);
					s1.append(str + "\n");
				}
				scan.close();
			} catch (FileNotFoundException e) {
				JOptionPane.showMessageDialog(this, e.getMessage());
				return "";
			}
		}
		messageShow = s1.toString();
		return s.toString();
	}

	private void getDESK() {
		KeyGenerator keygen;
		try {
			keygen = KeyGenerator.getInstance("DES");
			deskey = keygen.generateKey();
			JFileChooser chooser = new JFileChooser();
			chooser.setDialogTitle("save des key");

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美电影一区二区| 不卡一区二区在线| 精品国产青草久久久久福利| 国产精品一区二区免费不卡 | 成人h精品动漫一区二区三区| 亚洲国产激情av| 欧美色大人视频| 国产老肥熟一区二区三区| 久久久久久久性| 欧洲一区二区三区免费视频| 久久成人久久鬼色| 亚洲另类在线视频| 最新日韩av在线| 精品奇米国产一区二区三区| av在线不卡网| 成人av中文字幕| 蜜臀91精品一区二区三区 | 91精品久久久久久久91蜜桃| 91亚洲精品久久久蜜桃网站 | av亚洲精华国产精华精| 91一区二区在线| 精品写真视频在线观看| 亚洲精品欧美激情| 欧美—级在线免费片| 3d动漫精品啪啪一区二区竹菊| 国内外精品视频| 国产精品综合网| 韩国欧美国产1区| 亚洲风情在线资源站| 亚洲精品自拍动漫在线| 日韩一区有码在线| 一区二区三区日韩精品| 一区二区在线看| 亚洲免费在线观看| 精品无码三级在线观看视频| 国产精品美女久久久久久久| 国产精品欧美久久久久无广告 | 伊人婷婷欧美激情| 麻豆精品久久精品色综合| caoporn国产精品| 91精品久久久久久久91蜜桃| 久久精品亚洲精品国产欧美kt∨ | 青青草伊人久久| 国产一区在线观看视频| 色综合天天综合在线视频| 欧美三级在线视频| 26uuu国产在线精品一区二区| 国产亚洲成年网址在线观看| 国产精品福利电影一区二区三区四区| 欧美激情综合在线| 韩国中文字幕2020精品| www久久精品| 久久精品av麻豆的观看方式| 911国产精品| 国产精品色一区二区三区| 日韩成人免费电影| 欧美日韩视频在线第一区| 欧美xingq一区二区| 亚洲成人在线观看视频| 99国产精品久久久久久久久久久| 欧美xxxx老人做受| 蜜桃av噜噜一区| 欧美电影免费观看完整版| 麻豆一区二区99久久久久| 日韩欧美亚洲国产另类| 亚洲bt欧美bt精品| 日韩写真欧美这视频| 奇米影视一区二区三区| 欧美日韩高清一区二区| 日韩精品一区第一页| 日韩一区二区三区四区 | 日韩电影在线观看网站| 91精彩视频在线| 亚洲一区二区三区四区中文字幕 | 成人99免费视频| 亚洲欧美日韩一区二区三区在线观看| 岛国精品一区二区| 一区二区三区在线视频播放| 欧美一卡二卡三卡| 国产成人精品免费一区二区| 国产精品久久久久桃色tv| 欧美日韩成人在线一区| 日韩av中文字幕一区二区三区| 欧美一区二区啪啪| av成人动漫在线观看| 午夜精品在线看| 国产欧美精品一区二区色综合| 北条麻妃一区二区三区| 日韩中文欧美在线| 综合色中文字幕| 欧美大片在线观看一区| 色屁屁一区二区| 国产91精品欧美| 免费一级欧美片在线观看| 日韩理论片中文av| 欧美激情一区二区| 精品欧美一区二区三区精品久久| 色婷婷亚洲综合| 成人免费毛片a| 国产精品主播直播| 国产在线精品免费| 裸体一区二区三区| 蜜臀精品久久久久久蜜臀| 亚洲第一会所有码转帖| 亚洲男人天堂av网| 亚洲精品成人悠悠色影视| 欧美激情在线免费观看| 久久久91精品国产一区二区三区| 欧美精品欧美精品系列| 欧美日韩一区久久| 337p亚洲精品色噜噜噜| 日韩小视频在线观看专区| 91精品婷婷国产综合久久| 日韩欧美资源站| 久久久久国产精品厨房| 国产精品久久久久久久久久免费看| 国产亚洲精品中文字幕| 亚洲欧洲一区二区在线播放| 亚洲图片激情小说| 五月天亚洲婷婷| 久久机这里只有精品| 国产69精品久久99不卡| 色成人在线视频| 日韩欧美国产午夜精品| 国产日韩精品一区二区浪潮av| 国产精品久久久久久久久免费丝袜 | 亚洲美女免费在线| 免费成人av在线| 国产99久久久国产精品| 在线看日本不卡| 久久久天堂av| 免费看日韩a级影片| 91丝袜美腿高跟国产极品老师 | 69久久99精品久久久久婷婷| 中文字幕一区二区三区不卡| 精品一区二区三区欧美| 91激情五月电影| 国产精品成人在线观看| 美女一区二区三区在线观看| 欧美在线视频日韩| 国产精品进线69影院| 国产成人精品影视| 精品国产乱码久久久久久久| ●精品国产综合乱码久久久久 | 一区二区三区色| 99综合影院在线| 国产日韩欧美精品一区| 国产一区二区按摩在线观看| 欧美一区二区三区的| 日精品一区二区三区| 69堂亚洲精品首页| 亚洲午夜一区二区| 欧美日本在线看| 日韩影视精彩在线| 精品蜜桃在线看| 国产精品乡下勾搭老头1| 久久久久久免费毛片精品| 精品亚洲国产成人av制服丝袜| 欧美一区二区三区公司| 久草精品在线观看| 国产三级三级三级精品8ⅰ区| 成人中文字幕合集| 亚洲男人天堂av网| 日韩一区二区三区在线视频| 经典三级在线一区| 亚洲欧美自拍偷拍| 欧美另类一区二区三区| 床上的激情91.| 亚洲成人精品影院| 久久免费午夜影院| 欧美人狂配大交3d怪物一区| 激情欧美一区二区| 亚洲一区二区视频在线观看| 欧美xingq一区二区| 在线亚洲免费视频| 国产成人亚洲精品狼色在线| 一区二区三区在线视频观看| 久久久久国产精品麻豆| 欧美日韩激情在线| 一本一道久久a久久精品综合蜜臀| 日韩成人精品在线观看| 自拍偷拍亚洲综合| 国产欧美综合在线观看第十页| 日韩视频一区在线观看| 欧美调教femdomvk| 色又黄又爽网站www久久| 国产成人精品一区二| 久久精品国产澳门| 麻豆成人av在线| 久久99精品久久久| 老司机一区二区| 久久国产生活片100| 精品制服美女久久| 久久国产人妖系列| 久久99精品国产麻豆婷婷洗澡| 午夜欧美一区二区三区在线播放| 亚洲成a人片在线不卡一二三区| 夜夜揉揉日日人人青青一国产精品 | 久久久www成人免费毛片麻豆| 在线成人小视频|