Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

RabbitÁ÷ÃÜÂëµÄJavaʵÏÖ

1. RabbitÁ÷ÃÜÂ루Rabbit Stream Cipher£©¼ò½é
      RabbitÁ÷ÃÜÂëÊÇÓÉCryptico¹«Ë¾£¨http://www.cryptico.com£©Éè¼ÆµÄ£¬ÃÜÔ¿³¤¶È128룬
×î´ó¼ÓÃÜÏûÏ¢³¤¶ÈΪ264 Bytes£¬¼´16 TB£¬ÈôÏûÏ¢³¬¹ý¸Ã³¤¶È£¬ÔòÐèÒª¸ü»»ÃÜÔ¿¶ÔʣϵÄÏûÏ¢½øÐд¦Àí¡£ËüÊÇĿǰ°²È«ÐԽϸߣ¬¼Ó/½âÃÜËٶȱȽϸßЧµÄÁ÷ÃÜÂëÖ®Ò»£¬ÔÚ¸÷ÖÖ´¦ÀíÆ÷ƽ̨É϶¼Óв»·²µÄ±íÏÖ¡£
      Ïêϸ×ÊÁÏ£º
            1.http://www.cryptico.com/Files/filer/rabbit_fse.pdf
            2.http://www.ietf.org/rfc/rfc4503.txt
      ±¾ÎÄʵÏÖÁ˸ÃËã·¨µÄjavaÓïÑÔʵÏÖ£¬½ö¹©²Î¿¼¡£
2.  ʵÏÖÔ´Âë
  /**
* The Java Implementation of Rabbit Stream Cipher
* @author cnbragon
* @email cnbragon_dot_163_dot_com
* @date 2009/09/25
* @note Not implemented IV scheme
* @Reference:
* 1.http://www.cryptico.com/Files/filer/rabbit_fse.pdf
* 2.http://www.ietf.org/rfc/rfc4503.txt
*/
class Rabbit
{
private int[] x = new int[8];
private int[] c = new int[8];
private int carry;
public void Rabbit()
{
for(int i = 0; i < 8; i++)
{
x[i] = c[i] = 0;
}
carry = 0;
}
private int g_func(int x)
{
int a = x & 0xffff;
int b = x >>> 16;

int h =( ( ( ( a * a ) >>> 17 ) + ( a * b ) ) >>> 15 ) + b * b;
int l = x * x;

return h ^ l;
}
/**
* @declaration ±È½ÏÁ½¸öÓзûºÅÕûÊýµÄÊ®Áù½øÖƵĴóС£¬¼´×÷ΪÎÞ·ûºÅÕûÊý½øÐбȽÏ
* @param x
* @param y
* @return Èô(unsigned x) < (unsigned y)£¬Ôò·µ»Ø1£¬·ñÔò·µ»Ø0
*/
private int compare(int x, int y)
{
long a = x;
long b = y;
a &= 0x00000000ffffffffl;
b &= 0x00000000ffffffffl;

return (a < b) ? 1 : 0;
}
private int rotL(int x, int y)


Ïà¹ØÎĵµ£º

java¶ÁÐ´ËøÊµÏÖ»úÖÆ

package thread.lock;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
/**
 * @file_name ReadAndWriteLockDemo.java
 * @description ¶ÁÐ ......

Java ¶ÔÏóµÄ´æ´¢Î»ÖÃ

ժѡ×Ô¡¶Java±à³Ì˼Ïë¡·
1£® ¼Ä´æÆ÷£¨register£©¡£ÕâÊÇ×î¿ìµÄ´æ´¢Çø£¬ÒòΪËüλÓÚ²»Í¬ÓÚÆäËû´æ´¢ÇøµÄµØ·½——´¦ÀíÆ÷ÄÚ²¿¡£µ«ÊǼĴæÆ÷µÄÊýÁ¿¼«ÆäÓÐÏÞ£¬ËùÒԼĴæÆ÷ÓɱàÒëÆ÷¸ù¾ÝÐèÇó½øÐзÖÅä¡£Äã²»ÄÜÖ±½Ó¿ØÖÆ£¬Ò²²»ÄÜÔÚ³ÌÐòÖиоõµ½¼Ä´æÆ÷´æÔÚµÄÈκμ£Ïó¡£
2£®¶ÑÕ»£¨stack£©¡£Î»ÓÚͨÓÃRAM£¨random-access memory£¬ ......

Ïë½áʶÔÚѧϰJAVAµÄÅóÓÑ

   ÎÒÏÖÔÚÒѾ­´óËÄÁË£¬Ñ§µÄÊÇÈí¼þרҵ£¬ÎÒ±ØÐë³ÐÈÏÎÒÃÇѧУµÄÈí¼þרҵºÜ²»ºÃ£¬ËùÒԴ󲿷ÖÒª¿¿×Ô¼º¡£
   ÒÔǰ´ÓÀ´Ã»Ð´¹ý²©¿Í£¬Õâ´ÎÔÚÕâÀ↑²©¾ÍÊÇÏëͨ¹ýcsdn½áʶ¸ü¶àµÄѧϰJAVAµÄÅóÓÑ£¬ÎÒÉîÖª×Ô¼ºµÄJAVA¹¦µ×Éõdz£¬ËùÒÔÖ»ÓÐ×Î×β»¾ëµÄϰ£¬ºÍ²»ÑáÆä·³µÄ·¢ÎʲÅÄÜʹ×Ô¼ºÇ¿´ó¡£
   ×î½üÎÒÒ²´ÓÍøÉ ......

javaÑ§Ï°ÍøÖ·

1.JavaÑ§Ï°ÍøÕ¾:
JavaÖÐÎÄÊÀ½çÂÛ̳        http://www.chinajavaworld.com/index.jspa
JavaÊÀ¼ÍÍø              http://www.java2000.net/
Java ÖÐÎÄÕ¾            http://www.java-cn.com/
JavaѧϰÊÒ      ......

JavaÖÐHashMapʹÓÃ×Ô¶¨ÒåKeyÀà

×Ô¶¨ÒåµÄKeyÀàÐèÒªÖØÔØequals, hashCodeº¯Êý¡£¡£ 
package com.albert.test;
import java.util.Vector;
import java.util.HashMap;
/**
* @author tough_guy
*
*/
//¶ÔÓÚ×Ô¶¨ÒåµÄkey£¬ ÐèÒªÖØÔØhashCodeº¯ÊýºÍequalsº¯Êý
class IPSegment
{
long ip_s;
long ip_e;
int p;
IPSegment Reset(long f ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ