¼ÌÐø Âþ̸Java¼ÓÃܼ¼Êõ£¨Ò»£©
HMAC
HMAC£¨Hash Message Authentication Code£¬É¢ÁÐÏûÏ¢¼ø±ðÂ룬»ùÓÚÃÜÔ¿µÄHashËã·¨µÄÈÏÖ¤ÐÒé¡£ÏûÏ¢¼ø±ðÂëʵÏÖ¼ø±ðµÄÔÀíÊÇ£¬Óù«¿ªº¯ÊýºÍÃÜÔ¿²úÉúÒ»¸ö¹Ì¶¨³¤¶ÈµÄÖµ×÷ΪÈÏÖ¤±êʶ£¬ÓÃÕâ¸ö±êʶ¼ø±ðÏûÏ¢µÄÍêÕûÐÔ¡£Ê¹ÓÃÒ»¸öÃÜÔ¿Éú³ÉÒ»¸ö¹Ì¶¨´óСµÄСÊý¾Ý¿é£¬¼´MAC£¬²¢½«Æä¼ÓÈëµ½ÏûÏ¢ÖУ¬È»ºó´«Êä¡£½ÓÊÕ·½ÀûÓÃÓë·¢ËÍ·½¹²ÏíµÄÃÜÔ¿½øÐмø±ðÈÏÖ¤µÈ¡£
ͨ¹ýjava´úÂëʵÏÖÈçÏ£º
/** *//**
* ³õʼ»¯HMACÃÜÔ¿ http://www.guihua.org http://www.feng123.com
*
* @return
* @throws Exception
*/
public static String initMacKey() throws Exception {
KeyGenerator keyGenerator = KeyGenerator.getInstance(KEY_MAC);
SecretKey secretKey = keyGenerator.generateKey();
return encryptBASE64(secretKey.getEncoded());
}
/** *//**
* HMAC¼ÓÃÜ
*
* @param data
* @param key
* @return
* @throws Exception
*/
public static byte[] encryptHMAC(byte[] data, String key) throws Exception {
SecretKey secretKey = new SecretKeySpec(decryptBASE64(key), KEY_MAC);
Mac mac = Mac.getInstance(secretKey.getAlgorithm());
mac.init(secretKey);
return mac.doFinal(data);
}
¸ø
Ïà¹ØÎĵµ£º
×î½ü¶ÁÍê<Java²¢·¢±à³Ìʵ¼ù>,ÎÞÒÉÕâÊÇÒ»±¾ºÃÊé,ËüʹµÃÎÒ¶ÔÏß³Ì,Ëø,ÒÔ¼°Óë²¢·¢Ïà¹ØµÄ
һЩ֪ʶÌåϵ¸ü¼ÓÍ걸,Ïл°²»¶à˵,ÏÂÃæÎÒϵͳÊáÀíÁËÏÂÀïÃæµÄһЩÀíÂÛÒªµã,ÏàÐÅʵ¼ùÉÏ
Ãæ,´ó¼Ò»ò¶à»òÉÙ¶¼»áÓÐÌå»á,ÄÇôÓÃÀíÂÛµÄ֪ʶµã½«Êµ¼ùÌå»áÁýÂçÆðÀ´,½«»áÐγɸü¼ÓÀιÌ
ºÍÍ걸µÄ֪ʶÌåϵ,ÖÁÉÙÎÒÕâôÈÏΪ,дÕâһƪ±Ê¼ÇÒ²ÊÇÓÃÒÔ ......
¶àÏ̻߳·¾³ÖУ¬±È½ÏÕÆÎÕµÄÊÂÇéÖ®Ò»¾ÍÊÇÈçºÎ·µ»ØÏ̵߳ÄÐÅÏ¢¡£ÒòΪrunºÍstart·½·¨²¢²»·µ»ØÈκÎÖµ¡£
¼ÙÉèÏÖÔÚÓÐÁ½¸öỊ̈߳¬Ö÷Ï̺߳ÍÒ»¸ö×ÓỊ̈߳¬×ÓÏ̶߳ÁÎļþ£¬Ö÷Ïß³ÌÐèÒª¶ÔÎļþµÄ½á¹û½øÐвÙ×÷£¬µ±È»£¬×î¼òµ¥µÄ·½·¨¾ÍÊǶÁÎļþºÍ´¦Àí¶Á³öµÄÎļþÈ«²¿¶¼ÔÚÖ÷Ïß³ÌÖнø
ÐС£
......
×î½ü¿´µ½ÂÛ̳ÀïÓиöÌû×ÓÔÚÌÖÂ۽ӿںͳéÏóÀàµÄÇø±ðºÍ×÷Óã¬ÕâÆäʵҲÊǺܶàÃæÊÔ¹Ùϲ»¶ÎʵÄÎÊÌ⣬ÕâÀïÎÒ¾Í˵˵ÎÒµÄ×ܽᣬ˳±ã˵˵ÄÚ²¿ÀàµÄ×÷Ó㬵±ÊǸø¸ÕÈëÃÅ£¬»òÕßÏëѧϰjavaµÄͬѧÃÇÄܸüºÃµÄÀí½âËüÃǵÄÓ÷¨¡£
1.½Ó¿Ú(interface)£¬½Ó¿Ú±»ÓÃÀ´½¨Á¢ÀàÓëÀàÖ®¼ä¹ØÁªµÄ±ê×¼¡£
Java code
public interface ITest{
public ......
¼ÓÃܽâÃÜ£¬Ôø¾ÊÇÎÒÒ»¸ö±ÏÒµÉè¼ÆµÄÖØÒª×é¼þ¡£ÔÚ¹¤×÷Á˶àÄêÒÔºó»ØÏ뵱ʱÄǸö¼ÓÃÜ¡¢½âÃÜËã·¨£¬ÊµÔÚÊÇÌ«µ¥´¿ÁË¡£
ÑÔ¹éÕý´«£¬ÕâÀïÎÒÃÇÖ÷ÒªÃèÊöJavaÒѾʵÏÖµÄһЩ¼ÓÃܽâÃÜËã·¨£¬×îºó½éÉÜÊý×ÖÖ¤Êé¡£
Èç»ù±¾µÄµ¥Ïò¼ÓÃÜËã·¨£º
¡ñ BASE64 ÑϸñµØËµ£¬ÊôÓÚ±àÂë¸ñÊ ......