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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? client.java

?? 一個(gè)簡單的實(shí)現(xiàn)Kerberos驗(yàn)證的程序
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/**
 * 客戶端
 */
package src;

import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
import java.security.*;
import javax.crypto.spec.*;
import javax.crypto.*;
import javax.swing.*;

public class Client extends JFrame{
	//GUI
	private JTextField usernamefield;
	private JPasswordField passwordfield;
	private JTextArea textArea;
	private JTextField messagefield;
	private JPanel panel1,panel2;
	private JButton connectButton ;
	private JButton sendButton;

	//
	String IDc,ADc,password;
	String IDtgs,IDs;
	long TS1,TS2,TS3,TS4,TS5;
	long Lifetime1,Lifetime2;
	Ticket_tgs Tickettgs;
	Ticket_s Tickets;
	Authenticator_tgs at;
	Authenticator_s as;
	byte[] subkey1;
	boolean pass;
	
	//socket變量
	Socket clientASSocket,clientTGSSocket,clientServerSocket;
	int port;
	ObjectOutputStream outstream,outstream2,outstream3;
	ObjectInputStream instream,instream2,instream3;
	
	//Key變量
	PrivateKey clientprikey;

	//加密解密輔助類實(shí)例
	Encryption en;
	
	public Client() throws Exception{
		//GUI
		super("SSKBS客戶端");
		
		Container container = getContentPane();
		container.setLayout( new BorderLayout());
		
		panel1 = new JPanel();
		panel1.setLayout( new FlowLayout());
		container.add(panel1,BorderLayout.NORTH);
		
		JLabel usernameLabel = new JLabel("帳號:");
		panel1.add(usernameLabel);
		usernamefield = new JTextField(10);
		panel1.add(usernamefield);
		
		JLabel passwordLabel = new JLabel("密碼:");
		panel1.add(passwordLabel);
		passwordfield = new JPasswordField(10);
		panel1.add(passwordfield);		
		
		connectButton = new JButton("連接");
		panel1.add(connectButton);
		connectButton.addActionListener(
				new ActionListener(){
					public void actionPerformed (ActionEvent event)
					{
						try{	
							IDc = usernamefield.getText();
							authentication();
						}
						catch(Exception ex)
						{
							ex.printStackTrace();
						}
					}
				}
		);
		
		textArea = new JTextArea(10,20);
		textArea.setEditable(false);
		container.add( new JScrollPane(textArea),BorderLayout.CENTER);
		
		panel2 = new JPanel();
		panel2.setLayout( new FlowLayout());
		container.add(panel2,BorderLayout.SOUTH);
		
		messagefield = new JTextField(20);
		panel2.add(messagefield);
		
		sendButton = new JButton("發(fā)送");
		sendButton.addActionListener(
				new ActionListener(){
					public void actionPerformed (ActionEvent event)
					{
						try{	
							if(pass){
								talkToServer("[From IP:"+ADc+"]->" +messagefield.getText());
							}
							else{
								JOptionPane.showMessageDialog(null,"還未登錄驗(yàn)證,請先登錄驗(yàn)證后再發(fā)送消息!","", JOptionPane.ERROR_MESSAGE);
							}
						}
						catch(Exception ex)
						{
							ex.printStackTrace();
						}
					}
				}
		);
		panel2.add(sendButton);
		
		
		setSize(400, 300);
		setVisible(true);
		
		
		en = new Encryption();
		ADc = InetAddress.getLocalHost().toString();
		
	}
	
	/**
	 * 初始化client端的socket方法
	 * port:所要連接的服務(wù)器的端口:5000--AS
	 */
	public void initClientASSocket(int port)
	{	
		this.port = port;
		try {
			clientASSocket = new Socket(InetAddress.getLocalHost(), port);
			//clientASSocket = new Socket(InetAddress.getByName("10.130.202.251"), port);
			outstream = new ObjectOutputStream(clientASSocket.getOutputStream());
			instream = new ObjectInputStream(clientASSocket.getInputStream());
			outstream.flush();
			textArea.append("與AS通信的socket初始化完畢...\n");
			System.out.println("與AS通信的socket初始化完畢");
		} 
		catch (Exception e) {
			e.printStackTrace();
		}
	}
	/**
	 * 初始化client端的socket方法
	 * port:所要連接的服務(wù)器的端口:6000--TGS
	 */
	public void initClientTGSSocket(int port){
		this.port = port;
		try {
			System.out.println(ADc+"*****"+port);
			clientTGSSocket = new Socket(InetAddress.getLocalHost(), port);
			//clientTGSSocket = new Socket(InetAddress.getByName("10.130.202.251"), port);
			outstream2 = new ObjectOutputStream(clientTGSSocket.getOutputStream());
			instream2 = new ObjectInputStream(clientTGSSocket.getInputStream());
			outstream2.flush();
			System.out.println("tgs socket init ok");
			textArea.append("與TGS通信的socket初始化完畢...\n");
		} 
		catch (Exception e) {
			e.printStackTrace();
		}
	}
	/**
	 * 初始化client端的socket方法
	 * port:所要連接的服務(wù)器的端口:7000--Server
	 */
	public void initClientServerSocket(int port){
		this.port = port;
		try {
			clientServerSocket = new Socket(InetAddress.getLocalHost(), port);
			//clientServerSocket = new Socket(InetAddress.getByName("10.130.202.251"), port);
			outstream3 = new ObjectOutputStream(clientServerSocket.getOutputStream());
			instream3 = new ObjectInputStream(clientServerSocket.getInputStream());
			outstream3.flush();
			System.out.println("service socket init ok");
			textArea.append("與Service Server通信的socket初始化完畢...\n");
		} 
		catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 加密解密部分
	 * AES加密方法
	 * @param plainText	明文
	 * @param k 密鑰
	 * @return 密文
	 * @throws Exception
	 */
	public byte[] AESencrypt(byte[] plainText,Key k)throws Exception
	{	
		Cipher cipher=Cipher.getInstance("AES");
		cipher.init(Cipher.ENCRYPT_MODE,k);
		byte[] cipherText=cipher.doFinal(plainText);	
		return cipherText;	
	}
	
	/**
	 * 加密解密部分
	 * AES解密方法
	 * @param t	密文
	 * @param k 密鑰
	 * @return 明文
	 * @throws Exception
	 */
	public String AESdecrypt(byte[] t,Key k)throws Exception
	{
		Cipher cipher=Cipher.getInstance("AES");	
		cipher.init(Cipher.DECRYPT_MODE,k);
		byte[] newPlainText = cipher.doFinal(t);	
		return new String(newPlainText,"UTF8");		
	}
	
	/**
	 * 對明文進(jìn)行加密,這里都是用client的私鑰加密,所以采用RSA非對稱加密算法
	 * @param t	明文
	 * @param k client的私鑰
	 * @return 密文
	 * @throws Exception
	 */
	public byte[] decrypt(byte[] t,Key k)throws Exception
	{
		Cipher cipher=Cipher.getInstance("RSA/ECB/PKCS1Padding");
		cipher.init(Cipher.DECRYPT_MODE,k);
		byte[] newPlainText = cipher.doFinal(t);
		System.out.println("用client的私鑰解密完畢,client_privatekey:  "+new String(newPlainText,"UTF8"));
		textArea.append("用client的私鑰解密完畢,client_privatekey:"+new String(newPlainText)+"...\n");
		return newPlainText;
	}
	//讀取客戶端密鑰c_private.rsa
	public void getKeyFromFile()
	{
		try
		{
			System.out.println(System.getProperty("user.dir"));
			String file = "c_private.rsa";
			ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
			clientprikey = (PrivateKey)in.readObject();
			System.out.println(clientprikey);
			//textArea.append("用password解密完畢,已獲得當(dāng)前client的私鑰"+clientprikey+"...\n");
			in.close();
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		
	}
	
	/**
	 * 生成一個(gè)時(shí)間戳。
	 * @return
	 */
	public long getTimeStamp()
	{	
		long now = System.currentTimeMillis();
		return now;
	}
	
	
	/**
	 * 判斷當(dāng)前會(huì)話是否在有效期內(nèi)
	 * @param ts1
	 * @param ts2
	 * @param lifetime 有效期的長度
	 * @return true 有效 ;false 無效
	 */
	public boolean isInSession(long ts1,long ts2,long lifetime)
	{	
		if(ts1 + lifetime > ts2)
			return true;
		else return false;
	}
	
	/**
	 * 驗(yàn)證步驟
	 * 驗(yàn)證第一步,
	 * 向 Authenticator Server 認(rèn)證
	 * 如果用戶名未samantha則繼續(xù)認(rèn)證
	 * 如果不是則退出認(rèn)證
	 */
	
	public boolean Step1(){
		textArea.append("開始向Authenticator Server發(fā)送認(rèn)證請求...\n");
		try
		{
			/**
			 * (1)C->AS: IDc || ADc || TS1
			 */
			TS1 = getTimeStamp();
			C_AS c_as = new C_AS(IDc,ADc,TS1); 
			//Client->AS
			sendmessage(c_as,outstream);
			
			/**AS->Client
			 * (2)AS->C: 
			 * Tickettgs = Epub-tgs[Kpub-c || IDc || ADc || IDtgs || TS2 || Lifetime1] 
			 * Epub-c[IDtgs || TS2 || Lifttime1 || Tickettgs]
			 */
			while(true)
			{
				Object object = receivemessage(instream);
				//用戶名不合法
				if(object!=null&&object instanceof String)
				{

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久亚洲综合| 成人精品在线视频观看| 国产亚洲精品资源在线26u| 在线一区二区三区四区| 日本美女视频一区二区| 亚洲欧美区自拍先锋| www国产亚洲精品久久麻豆| 欧美色视频在线观看| 国产成人午夜视频| 蜜桃av一区二区三区电影| 亚洲色欲色欲www| 久久精品视频免费| 日韩精品一区二区在线观看| 色乱码一区二区三区88| 成人天堂资源www在线| 久久99这里只有精品| 青青青爽久久午夜综合久久午夜| 亚洲免费在线视频一区 二区| 久久久美女毛片| 日韩女同互慰一区二区| 欧美日韩一本到| 日本精品裸体写真集在线观看| 免费观看成人鲁鲁鲁鲁鲁视频| 在线看国产一区二区| 51精品秘密在线观看| 91污片在线观看| 国产精品亚洲一区二区三区妖精 | 久久精品欧美一区二区三区不卡| 欧美性色欧美a在线播放| 99久久精品国产毛片| 国产成a人亚洲精| 国产精品一区不卡| 国产一区二区三区四| 毛片av中文字幕一区二区| 日韩精品一卡二卡三卡四卡无卡| 激情文学综合丁香| 免费在线视频一区| 奇米888四色在线精品| 日本成人在线电影网| 日韩中文字幕一区二区三区| 三级久久三级久久| 丝袜美腿亚洲色图| 日韩极品在线观看| 蜜臀a∨国产成人精品| 奇米888四色在线精品| 麻豆成人久久精品二区三区红| 麻豆视频一区二区| 精品一区二区三区欧美| 国产盗摄一区二区| 成人精品gif动图一区| 99视频在线精品| 欧洲视频一区二区| 欧美一级欧美三级| 久久精品一区蜜桃臀影院| 国产精品久久看| 亚洲欧美日韩中文播放| 亚洲电影激情视频网站| 日日摸夜夜添夜夜添亚洲女人| 久久国产精品99精品国产| 国产成人免费视频| 一道本成人在线| 欧美伊人久久久久久久久影院| 69p69国产精品| 久久精品一区二区三区不卡| 亚洲人成网站影音先锋播放| 亚洲国产你懂的| 久久精品免费看| 成人av集中营| 欧美剧在线免费观看网站| 亚洲精品在线免费观看视频| 国产精品国产精品国产专区不蜜 | 亚洲成av人片观看| 激情深爱一区二区| 97国产精品videossex| 欧美日本一区二区在线观看| 国产精品亚洲а∨天堂免在线| 成人免费视频播放| 久久电影网站中文字幕| 免费在线观看视频一区| 精品久久免费看| 色婷婷国产精品| 波多野结衣中文字幕一区 | 中文乱码免费一区二区| 中文字幕一区二区三区蜜月| 香蕉加勒比综合久久| 国产黄色精品视频| 欧美视频一区二区在线观看| 欧美精品一区二区三| 玉米视频成人免费看| 精品系列免费在线观看| 91精品福利在线| 久久久国产精品午夜一区ai换脸| 亚洲国产wwwccc36天堂| 国产精品中文字幕日韩精品 | 亚洲综合一二三区| 美女爽到高潮91| 一区二区三区高清| 伊人婷婷欧美激情| 韩国成人在线视频| 91福利在线观看| 国产亚洲成av人在线观看导航 | 国产精品久久精品日日| 日本成人在线看| 欧洲激情一区二区| 欧美国产综合一区二区| 久久99在线观看| 欧美人成免费网站| 一区二区三区欧美视频| 成人午夜激情视频| 精品福利在线导航| 日日噜噜夜夜狠狠视频欧美人| 91网站最新网址| 国产精品福利在线播放| 国产成人小视频| 精品国产凹凸成av人导航| 日韩精品亚洲专区| 欧美亚洲动漫精品| 亚洲视频一区在线| kk眼镜猥琐国模调教系列一区二区| 精品对白一区国产伦| 美女一区二区视频| 风间由美性色一区二区三区| 高清beeg欧美| 欧美男人的天堂一二区| 亚洲精品中文字幕乱码三区| 91视频国产观看| 中文字幕一区二区三中文字幕| 成人午夜激情视频| 国产欧美日韩综合| 国产大陆a不卡| 亚洲人成小说网站色在线| 不卡大黄网站免费看| 日本一区二区三区国色天香 | 国产很黄免费观看久久| 久久影院午夜论| 国产一区二区三区视频在线播放| 欧美精品一区二区三区视频 | 欧美嫩在线观看| 午夜免费久久看| 欧美二区乱c少妇| 日韩av中文在线观看| 日韩视频免费观看高清在线视频| 日本aⅴ亚洲精品中文乱码| 欧美日韩免费电影| 免费黄网站欧美| 亚洲精品在线三区| 成人天堂资源www在线| 亚洲人成网站色在线观看| 欧美制服丝袜第一页| 天天操天天色综合| 精品国产电影一区二区| 成人免费av资源| 亚洲激情第一区| 制服丝袜亚洲播放| 国产专区欧美精品| 国产精品区一区二区三| 色婷婷久久一区二区三区麻豆| 亚洲午夜一区二区三区| 91精品国产日韩91久久久久久| 久久国内精品自在自线400部| 精品sm在线观看| 91丨九色丨尤物| 首页欧美精品中文字幕| 久久久久久亚洲综合影院红桃| 91在线国产观看| 亚洲va欧美va国产va天堂影院| 日韩一区二区三区av| 国产精品系列在线播放| 亚洲欧美视频在线观看视频| 5月丁香婷婷综合| 国v精品久久久网| 亚洲成人在线免费| 2欧美一区二区三区在线观看视频| caoporn国产一区二区| 天天影视色香欲综合网老头| 久久综合九色综合欧美亚洲| 91最新地址在线播放| 麻豆精品一区二区三区| 国产精品久久免费看| 欧美二区三区的天堂| 成人av网址在线观看| 日韩高清一区在线| 日韩毛片视频在线看| 日韩一区二区免费在线电影| 99re热视频这里只精品| 成人高清av在线| 日韩有码一区二区三区| 国产精品福利一区二区三区| 欧美一区二区精品在线| 成人国产免费视频| 久久99精品久久久久久| 最近中文字幕一区二区三区| 日韩精品一区在线观看| 欧美亚洲高清一区| 成人激情图片网| 美腿丝袜亚洲三区| 亚洲一区影音先锋| 中文字幕亚洲一区二区va在线| 日韩精品一区二区三区视频 | 国产精品麻豆视频|