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

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

?? rijndaeltest.java

?? 這個RIJNDAEL的算法是用來產(chǎn)生密文序列JAVA算法
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
		int len=0,k=0;
			for(int i=0;i<ch.length;i++)
			{
				//System.out.println((int)ch[i]);
				if(ch[i]==' ')
				len++;
			}
			int[] input=new int[len+1];
			
			for(int i=0;i<ch.length;i++)
			{
				int a=0,b=0;
				if((int)ch[i]>=97&&(int)ch[i]<=102)
				ch[i]=(char)((int)ch[i]-87);
				if((int)ch[i]>=48&&(int)ch[i]<=57)
				ch[i]=(char)((int)ch[i]-48);
				if(ch[i]==' ')
				{
					if(1==i)
						input[k]=ch[0];
					else
					{
					b=(int)ch[i-1];
					a=(int)ch[i-2];
					if(32!=a)
					input[k]=16*a+b;
					if(32==a)
					input[k]=b;
					}
					k++;
				}
			}
			if(ch[ch.length-1]!=' ')
			{
			if(ch[ch.length-2]!=' ')
			input[k]=16*ch[ch.length-2]+ch[ch.length-1];
			if(ch[ch.length-2]==' ')
			input[k]=(int)ch[ch.length-2];
		  }
		  return input;
	}
	
	int[] encipher(int[] input,int[][] w)
	{
		int Nr=0;
		switch(w.length)
		{
		case 44:
			Nr=10;
			break;
		case 52:
			Nr=12;
			break;
		case 60:
			Nr=14;
			break;
			default:
				break;
		}
		int[][] state=new int[4][4];
		for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=input[4*j+i];
	         }
		//print(state);
		for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=w[j][i];
	         }
		//print(state);
		 for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=input[4*j+i]^w[j][i]; 
	         }
         //print(state);
         for(int k=1;k<Nr;k++)
         {
        	 state=impl.subbytes(state);
            // print(state);
        	 state=impl.shiftrows(state);
        	//print(state);
        	 state=impl.mixcolumns(state );
        	//print(state);
        	 for(int i=0;i<4;i++)
		         for(int j=0;j<4;j++)
		         {
		        	 state[i][j]= state[i][j]^w[k*4+j][i];
		         }
        	//print(state);
         }
         
        state=impl.shiftrows(impl.subbytes(state));
         for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=state[i][j]^w[j+4*Nr][i]; 
	         }
        // print(state);
         int[] out=new int[16];
         for(int i=0;i<16;i++)
        	 out[i]=state[i%4][i/4];
         return out;
	
	}
	
	int invsubword(int num)
	{
		int[][] invbox=new int[16][16];
		int a=0xf0,b=0x0f;
		for(int i=0;i<16;i++)
			for(int j=0;j<16;j++)
			{
				
				invbox[(impl.sbox[i][j]&a)>>4][impl.sbox[i][j]&b]=(i<<4)+j;
				
			}
		return invbox[(num&a)>>4][num&b];
	}
	int[][] invsubbytes(int[][] temp)
	{
		int[][] num=new int[4][4];
		for(int i=0;i<4;i++)
			for(int j=0;j<4;j++)
				num[i][j]=invsubword(temp[i][j]);
		return num;	
	}
	int[][] invshiftrows(int[][] temp)
	{
		int a,b,c;
		a=temp[1][3];
		temp[1][3]=temp[1][2];
		temp[1][2]=temp[1][1];
		temp[1][1]=temp[1][0];
		temp[1][0]=a;
		
		b=temp[2][2];
		temp[2][2]=temp[2][0];
		temp[2][0]=b;
		b=temp[2][1];
		temp[2][1]=temp[2][3];
		temp[2][3]=b;
		
		c=temp[3][3];
		temp[3][3]=temp[3][0];
		temp[3][0]=temp[3][1];
		temp[3][1]=temp[3][2];
		temp[3][2]=c;
		
		return  temp;
	}
	int xtimes(int a,int n)
	{
		for(int i=0;i<n;i++)
			a=impl.xtime(a);
		return a;
	}
	int[][] invmixcolumns(int[][] temp)
	{
		int[][] num=new int[4][4];
		for(int i=0;i<4;i++)
		{
		  num[0][i]=(xtimes(temp[0][i],3)^xtimes(temp[0][i],2)^xtimes(temp[0][i],1))^
		            (xtimes(temp[1][i],3)^xtimes(temp[1][i],1)^xtimes(temp[1][i],0))^
		            (xtimes(temp[2][i],3)^xtimes(temp[2][i],2)^xtimes(temp[2][i],0))^
		            (xtimes(temp[3][i],3)^xtimes(temp[3][i],0));
		  num[1][i]=(xtimes(temp[1][i],3)^xtimes(temp[1][i],2)^xtimes(temp[1][i],1))^
                    (xtimes(temp[2][i],3)^xtimes(temp[2][i],1)^xtimes(temp[2][i],0))^
                    (xtimes(temp[3][i],3)^xtimes(temp[3][i],2)^xtimes(temp[3][i],0))^
                    (xtimes(temp[0][i],3)^xtimes(temp[0][i],0));
		  num[2][i]=(xtimes(temp[2][i],3)^xtimes(temp[2][i],2)^xtimes(temp[2][i],1))^
                    (xtimes(temp[3][i],3)^xtimes(temp[3][i],1)^xtimes(temp[3][i],0))^
                    (xtimes(temp[0][i],3)^xtimes(temp[0][i],2)^xtimes(temp[0][i],0))^
                    (xtimes(temp[1][i],3)^xtimes(temp[1][i],0));
		  num[3][i]=(xtimes(temp[3][i],3)^xtimes(temp[3][i],2)^xtimes(temp[3][i],1))^
                    (xtimes(temp[0][i],3)^xtimes(temp[0][i],1)^xtimes(temp[0][i],0))^
                    (xtimes(temp[1][i],3)^xtimes(temp[1][i],2)^xtimes(temp[1][i],0))^
                    (xtimes(temp[2][i],3)^xtimes(temp[2][i],0));
		}
		return num;
	}
	double power(int x,int y)
	{
		double num=1.0;
		for(int i=0;i<y;i++)
			num=num*x;
		return num;
	}
	int[] decipher(int[] input,int[][] w)
	{
		int Nr=0;
		switch(w.length)
		{
		case 44:
			Nr=10;
			break;
		case 52:
			Nr=12;
			break;
		case 60:
			Nr=14;
			break;
		default:
			break;
		}
		
		int[][] state=new int[4][4];
		for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=input[4*j+i];
	         }
		//print(state);
		for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=w[j+4*Nr][i];
	         }
		//print(state);
		 for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=input[4*j+i]^w[4*Nr+j][i]; 
	         }
         //print(state);
        for(int k=Nr-1;k>0;k--)
         {
        	 state=invshiftrows(state);
             //print(state);
        	 state=invsubbytes(state);
        	//print(state);
        	 
        	//print(state);
        	 for(int i=0;i<4;i++)
		         for(int j=0;j<4;j++)
		         {
		        	 state[i][j]= state[i][j]^w[k*4+j][i];
		         }
        	//print(state);
        	 state=invmixcolumns(state);
         }
         
        state=invsubbytes(invshiftrows(state));
         for(int i=0;i<4;i++)
	         for(int j=0;j<4;j++)
	         {
	        	 state[i][j]=state[i][j]^w[j][i]; 
	         }
         //print(state);
         int[] out=new int[16];
         for(int i=0;i<16;i++)
        	 out[i]=state[i%4][i/4];
         return out;
	
	}
}
class impl
{
	static int[][] sbox=
  	 {{0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5,0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76},
  	  {0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0,0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0},
  	  {0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc,0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15},
  	  {0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a,0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75},
  	  {0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0,0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84},
  	  {0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b,0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf},
  	  {0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85,0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8},
  	  {0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5,0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2},
  	  {0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17,0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73},
  	  {0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88,0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb},
  	  {0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c,0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79},
  	  {0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9,0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08},
  	  {0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6,0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a},
  	  {0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e,0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e},
  	  {0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94,0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf},
  	  {0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68,0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16}
  	 };
	
	static int SubWord(int num)
    {
   	 int a=0xf0,b=0x0f;	 
   	 return sbox[(num&a)>>4][num&b];
    }
	
	static int[][] subbytes(int[][] temp)
	{
		int[][] num=new int[4][4];
		for(int i=0;i<4;i++)
			for(int j=0;j<4;j++)
				num[i][j]=SubWord(temp[i][j]);
		return num;		
	}
	
	static int[][] shiftrows(int[][] temp)
	{
		//int[][] temp=new int[4][4];
		int a,b,c;
		a=temp[1][0];
		temp[1][0]=temp[1][1];
		temp[1][1]=temp[1][2];
		temp[1][2]=temp[1][3];
		temp[1][3]=a;
		b=temp[2][0];
		temp[2][0]=temp[2][2];
		temp[2][2]=b;
		b=temp[2][1];
		temp[2][1]=temp[2][3];
		temp[2][3]=b;
		
		c=temp[3][0];
		temp[3][0]=temp[3][3];
		temp[3][3]=temp[3][2];
		temp[3][2]=temp[3][1];
		temp[3][1]=c;
		
		return  temp;
	}
	static int[] rotword(int[] array)
	 {
		 int temp;
		 temp=array[0];
		 array[0]=array[1];
		 array[1]=array[2];
		 array[2]=array[3];
		 array[3]=temp;
		 return array;
	 }
	static int[][] mixcolumns(int[][] temp)
	{
		int[][] num=new int[4][4];
		for(int i=0;i<4;i++)
		{
		  num[0][i]=xtime(temp[0][i])^(temp[1][i]^xtime(temp[1][i])^temp[2][i]^temp[3][i]);
		  num[1][i]=xtime(temp[1][i])^(temp[2][i]^xtime(temp[2][i])^temp[0][i]^temp[3][i]);
		  num[2][i]=xtime(temp[2][i])^(temp[3][i]^xtime(temp[3][i])^temp[0][i]^temp[1][i]);
		  num[3][i]=xtime(temp[3][i])^(temp[0][i]^xtime(temp[0][i])^temp[2][i]^temp[1][i]);
		}
		return num;
	}
	static int xtime(int num)
	{
		if(num<128)
			return num*2;
		else
			return (num*2-256)^27;
	}
	
}
class keyexp
{
     static int[][] rcon={{0x01,0x00,0x00,0x00},
                   {0x02,0x00,0x00,0x00},
                   {0x04,0x00,0x00,0x00},
                   {0x08,0x00,0x00,0x00},
                   {0x10,0x00,0x00,0x00},
                   {0x20,0x00,0x00,0x00},
                   {0x40,0x00,0x00,0x00},
                   {0x80,0x00,0x00,0x00},
                   {0x1b,0x00,0x00,0x00},
                   {0x36,0x00,0x00,0x00}};
   static int[][] keysched(int[] key,int Nk)  
     {
	   int Nr=0;
	   switch(Nk)
	   {
	   case 4:Nr=10;
	   break;
	   case 6:Nr=12;
	   break;
	   case 8:Nr=14;
	   break;
	   default:
		   break;
	   }
	   int[][] w=new  int[4*(Nr+1)][4];
	   for(int i=0;i<Nk;i++)
        for(int j=0;j<4;j++)
 	   w[i][j]=key[4*i+j];

       for(int i=Nk;i<4*(Nr+1);i++)
    	{
    	     int[] temp=new int[4];
    	     for(int k=0;k<4;k++)
    	     {
    	       temp[k]=w[i-1][k];
    	     }
    	       if(0==i%Nk)
    			 {
    			    temp=impl.rotword(temp);
    			    for(int k=0;k<4;k++)
    			    {
    			    	temp[k]=impl.SubWord(temp[k]);
    			    	temp[k]=temp[k]^rcon[i/Nk-1][k];
    			    }   
    			 }
    	       else if(Nk>6&&4==i%Nk)
    	    	   for(int k=0;k<4;k++)
   			    {
   			    	temp[k]=impl.SubWord(temp[k]);
   			    }
    		 for(int k=0;k<4;k++)
    		 {
    			 w[i][k]=w[i-Nk][k]^temp[k];	
    		 }
    			
    	 }
     return w;
     }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩中文字幕区一区有砖一区 | 中文字幕第一区第二区| 一本久久a久久精品亚洲| 欧美性猛交xxxxxxxx| 色婷婷久久久亚洲一区二区三区 | 秋霞午夜鲁丝一区二区老狼| 国产传媒欧美日韩成人| 亚洲欧美一区二区三区孕妇| 国产a视频精品免费观看| 国产精品久久久久国产精品日日 | 婷婷六月综合网| 欧美一区三区二区| 国产在线精品一区在线观看麻豆| 91黄色免费观看| 免费成人在线播放| 国产精品久久福利| 欧美色图12p| 国产永久精品大片wwwapp| 国产免费观看久久| 色乱码一区二区三区88| 毛片一区二区三区| 国产精品情趣视频| 欧美日韩一二三| 国产成人综合在线| 亚洲国产精品一区二区久久| 精品国产乱码久久久久久蜜臀| 成人av免费观看| 性久久久久久久久| 欧美经典一区二区| 欧美精品亚洲一区二区在线播放| 韩日av一区二区| 18欧美乱大交hd1984| 91精品国产一区二区| 国产成人精品亚洲777人妖| 亚洲国产日产av| 国产欧美日韩视频在线观看| 欧美日本在线一区| 99久久国产综合精品麻豆| 日本免费在线视频不卡一不卡二 | 国产精品一区二区三区99| 国产精品久久久一本精品| 91精品欧美福利在线观看| 国产麻豆精品久久一二三| 亚洲国产精品久久艾草纯爱| 日韩欧美一区在线| 色哟哟一区二区在线观看| 日本欧美加勒比视频| 一区二区三区高清| 精品国产亚洲在线| 欧美日韩三级视频| 国产91精品精华液一区二区三区 | 成人一级黄色片| 一区二区三区四区在线播放| 亚洲成在人线免费| 色综合久久久久久久久| 久久伊人中文字幕| 日本中文字幕一区二区视频| 欧美性大战xxxxx久久久| 国产精品国产三级国产普通话99| 美腿丝袜亚洲综合| 久久蜜桃av一区二区天堂| 国产美女在线观看一区| 日韩午夜在线影院| 欧美片在线播放| 国产成人精品一区二| 国产在线精品免费av| 性久久久久久久久久久久| 久久影音资源网| 国产精品一区一区三区| 久久网这里都是精品| 成人免费高清在线观看| 亚洲人吸女人奶水| 精品久久久久久亚洲综合网| 久久99精品久久久久久久久久久久| 日韩一区二区在线播放| 国产一区二区三区香蕉| 欧美精品一级二级| 国内精品嫩模私拍在线| 国产欧美视频一区二区三区| 97精品久久久午夜一区二区三区| 亚洲精品免费看| 欧美电影一区二区| 国产精品一品二品| 成人国产精品免费| 亚洲国产美国国产综合一区二区| 成人av在线资源网站| 国产精品久99| 欧美一级生活片| 成人av手机在线观看| 在线成人av网站| 国产精品精品国产色婷婷| 亚洲视频在线一区| 一二三区精品视频| 亚洲欧美国产毛片在线| 亚洲一区二区成人在线观看| 亚洲免费观看高清完整版在线| 亚洲人成网站色在线观看| 中文字幕成人网| 欧美天堂亚洲电影院在线播放| 99免费精品在线| 99久久精品免费看国产免费软件| 天堂久久一区二区三区| 国产午夜精品一区二区三区四区 | 喷白浆一区二区| 亚洲欧洲日韩女同| 一区二区在线观看视频| 日韩午夜av一区| 日韩综合一区二区| 欧美日韩一本到| 久久久久久免费网| 黄色小说综合网站| 欧美岛国在线观看| 国内久久婷婷综合| 精品国产乱码久久| 午夜视频一区二区| 久久综合久久综合久久| 久久99久久久久| 国产日产欧美精品一区二区三区| 色综合 综合色| 午夜精品123| 91精品国产综合久久香蕉的特点| 欧美一区二区三区影视| 日韩精品在线一区二区| 国产一区二区三区免费在线观看| 欧美大片在线观看一区二区| 韩国精品主播一区二区在线观看| 日韩欧美亚洲国产精品字幕久久久| 另类成人小视频在线| 国产性做久久久久久| 欧美三级午夜理伦三级中视频| 亚洲一区在线观看免费| 538prom精品视频线放| 卡一卡二国产精品| 亚洲欧洲精品一区二区三区不卡| 色综合中文字幕| 国产精品综合二区| 亚洲精品综合在线| 欧美一区二区三区啪啪| 国产成a人亚洲精| 图片区小说区国产精品视频| 欧美日韩亚州综合| www.亚洲在线| 久久精品国产**网站演员| 亚洲精品国久久99热| 精品粉嫩aⅴ一区二区三区四区| 91视频国产观看| 成人av免费观看| 久久99精品久久只有精品| 一区二区三区国产精华| 国产欧美日韩在线视频| 日韩欧美高清一区| 在线视频一区二区三区| 大美女一区二区三区| 韩国v欧美v日本v亚洲v| 亚洲地区一二三色| 亚洲自拍偷拍网站| 久久久91精品国产一区二区精品| 欧美乱熟臀69xxxxxx| 色综合久久天天| 成人免费观看男女羞羞视频| 久久爱www久久做| 亚洲一卡二卡三卡四卡无卡久久| 亚洲黄色小视频| 国产精品国产三级国产普通话99 | 日本成人在线视频网站| 久久久久国产精品厨房| 欧美成人精品二区三区99精品| 亚洲高清不卡在线| 欧美巨大另类极品videosbest| 亚洲影视在线播放| 色综合久久久久综合体| 亚洲成人免费视频| 欧美一级免费大片| 成人av电影在线网| 免费高清在线一区| 国产一区二区精品久久91| 不卡的av在线播放| 国产拍欧美日韩视频二区| 激情图区综合网| 8x8x8国产精品| 日韩精品欧美精品| 91.com视频| 日本在线不卡视频一二三区| 欧美成人在线直播| 美女www一区二区| 日本一区二区三区视频视频| 国产一区二区三区免费| 中文字幕日韩av资源站| 不卡的电影网站| 亚洲大型综合色站| 欧美日韩卡一卡二| 狠狠色狠狠色综合日日91app| 精品噜噜噜噜久久久久久久久试看 | 日韩高清一区在线| 欧美精品一区二区三区四区 | www.亚洲精品| 亚洲男人电影天堂| 欧美一区二区视频免费观看| 精品一区二区三区在线观看国产| 中文av字幕一区|