java Óë c# 3des ¼Ó½âÃÜ
java Óë c# 3des ¼Ó½âÃÜ
Ö÷Òª²îÒìÈçÏ£º
1¡¢ ¶ÔÓÚ´ý¼ÓÃܽâÃܵÄÊý¾Ý£¬¸÷×ÔµÄÌî³äģʽ²»Ò»Ñù
C#µÄģʽÓУºANSIX923¡¢ISO10126¡¢None¡¢PKCS7¡¢Zero£¬¶øJavaÓУºNoPadding¡¢PKCS5Padding¡¢SSL3Padding
2¡¢ ¸÷×ÔĬÈϵÄ3DESʵÏÖ£¬Ä£Ê½ºÍÌî³ä·½Ê½²»Ò»Ñù
C#µÄĬÈÏģʽΪCBC,ĬÈÏÌî³ä·½Ê½ÎªPKCS7; javaµÄĬÈÏģʽΪECB£¬Ä¬ÈÏÌî³ä·½Ê½ÎªPKCS5Padding
3¡¢ ¸÷×ÔµÄkeyµÄsize²»Ò»Ñù
C#ÖÐkeyµÄsizeΪ16ºÍ24¾ù¿É£»javaÖÐÒªÇókeyµÄsize±ØÐëΪ24£»¶ÔÓÚCBCģʽϵÄÏòÁ¿ivµÄsizeÁ½Õß¾ùÒªÇó±ØÐëΪ8
·¿´ÁË3DESµÄÔÀí£º
DESÖ÷Òª²ÉÓÃÌæ»»ºÍÒÆÎ»µÄ·½·¨,ÓÃ56λÃÜÔ¿¶Ô64λ¶þ½øÖÆÊý¾Ý¿é½øÐмÓÃÜ,ÿ´Î¼ÓÃܿɶÔ64λµÄÊäÈëÊý¾Ý½øÐÐ16ÂÖ±àÂë,
¾Ò»ÏµÁÐÌæ»»ºÍÒÆÎ»ºó,ÊäÈëµÄ64λת»»³É°²È«²»Í¬µÄ64µÄÊä³öÊý¾Ý
.
3DES:ÊÇÔÚDESµÄ»ù´¡ÉϲÉÓÃÈýÖØDES,¼´ÓÃÁ½¸ö56λµÄÃÜÔ¿K1,K2,·¢ËÍ·½ÓÃK1¼ÓÃÜ,K2½âÃÜ,ÔÙʹÓÃK1¼ÓÃÜ.½ÓÊÕ·½Ê¹ÓÃK1½âÃÜ,K2¼ÓÃÜ,ÔÙʹÓÃK1½âÃÜ,
ÆäЧ¹ûÏ൱ÓÚÃÜÔ¿³¤¶È¼Ó±¶.
ÓÚÊdz¢ÊÔÔÚjavaÖУ¬¶Ôkey½øÐв¹Î»£¬¼´ÓÃǰ8¸ö×Ö½Ú×÷Ϊbyte[24] ÖеÄbyte[16]~byte[23];·¢ÏÖÓëc#ÖмÓÃܵĽá¹ûÏàͬ£¡ÓÚÊǴ󵨼ÙÉèC#ÖпÉÄÜÊǼì²ékeyµÄsizeΪ16µÄʱºò
×Ô¶¯½«Ç°8¸ö×Ö½Ú×÷Ϊk3½øÐÐÁ˲¹Î»£¬¶øjavaûÓÐʵÏÖÕâÒ»µã£¨ÒòΪjavaµÄ3DESËã·¨ÖÐÇ¿ÖÆÒªÇókeyµÄsize±ØÐëΪ24£©¡£ÕâÑùµÄÇé¿öÏ£¬¿ÉÄܾÍÊÇ·¢ËÍ·½ÓÃk1¼ÓÃÜ¡¢k2½âÃÜ¡¢k3ÔÙ¼ÓÃÜ£»½ÓÊÜ·½k3½âÃÜ¡¢k2¼ÓÃÜ¡¢ÔÙk1½âÃÜÀ´ÊµÏÖ¡£
×îÖÕ¾¹ý±àÂëÑéÖ¤£¬È·ÈÏkey´óСΪ24ʱ£¬javaºÍc#µÄ¼ÓÃܽâÃܽá¹ûÏàÒ»Ö¡£
JavaÖÐʵÏÖʱ£¬Ö»Òª×¢Òâ¶Ô´óС²»×ã24µÄkey½øÐв¹Î»£¬ºÍ²ÉÓÃCBCģʽ£¬Ìî³äģʽΪPKCS5Padding¼´¿É¡£
public class CDES {
public static byte[] encrypt(String sKey, byte[] bIV, byte[] bPlainText, int nOffset, int nSize)
throws Exception {
byte[] bKey = buildKey(sKey);
byte[] bInput = buildInput(nSize, bPlainText, nOffset);
byte[] bResult = encrypt(bIV, bKey, bInput);
return bResult;
}
public static byte[] decrypt(String sKey, byte[] bIV, byte[] bCipherText)
throws Exception {
byte[] bKey = buildKey(sKey);
SecretKey securekey = buildSecretKey(bKey);
IvParameterSpec iv = new IvParameterSpec(bIV);
Ciph
Ïà¹ØÎĵµ£º
Oracle ´æ´¢¹ý³Ì·µ»Ø½á¹û¼¯Óà ref cursor ʵÏÖ¡£
ÊÔÑé²½ÖèÈçÏ£º
1. ½¨Á¢ ref cursor ÀàÐͺ͹ý³Ì
CREATE OR REPLACE PACKAGE types
AS
TYPE ref_cursor IS REF CURSOR;
END;
/
CREATE TABLE STOCK_PRICES(
RIC VARCHAR(6) PRIMARY KEY,
PRICE NUMBER(7 ......
Ò»£ºC# Á¬½ÓSQLÊý¾Ý¿â
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;
Server=myServerAddress;Database=myDataBase;User ID=myUse ......
¡¾ÕªÒª
JAVAÓïÑÔÊÇĿǰInternetÉÏ´óÐ͵ÄWEBÓ¦ÓóÌÐò¿ª·¢Ê±Ê¹ÓõÃ×îÈÈÃŵıà³ÌÓïÑÔ£¬±¾ÎÄÃèÊöÁËJAVAºÍJSP¼¼ÊõµÄÌØÕ÷ÒÔ¼°ÔÚ»¥ÁªÍøÉϵÄʹÓÃÇé¿ö£¬½éÉÜÕâÁ½ÖÖ¼¼ÊõµÄÖØÒª±à³Ì·½·¨ºÍÁ½ÕßÖ®¹ØµÄÁªÏµ£¬²¢Íê³ÉÒ»¸ö»ùÓÚÕâÖÖ¼¼ÊõµÄÍøÉÏÊéµêϵͳ¡£
¡¾¹Ø¼ü×ÖJAVA, JavaBeans, Servlet, JSP, ÍøÂç±à³Ì, µç×ÓÉÌÎñ, ÍøÉÏÊéµê
Abstract
A ......
Óöµ½¹ýÕâÑùÒ»¸öÇé¿ö£¬ÐèÒªÓÃjava¶Áȡһ¸ö200MµÄÎı¾¸ñʽÎļþ£¬¶øÇÒ»¹ÐèÒª¶ÔÎļþµÄÄÚÈÝ×ö½âÎö£¬½øÐзִʡ£Èç¹ûÓÃJVMµÄĬ
ÈÏÉèÖã¬ÀûÓÃScannerÀàÖ»ÄܶÁ³ö4M´óСÄÚÈÝ£¬ÓÚÊÇÎÒ¾ÍÔÚÍøÉÏËÑË÷£¬µ«ÊÇÍøÉÏûÓÐÕÒµ½Ò»ÆªÎÄÕÂÊÇÎÒËùÐèÒªµÄÄÚÈÝ¡£ÓÚÊÇÎÒÖ»ºÃ·thinking
in
java£¬·¢ÏÖÁËÒ»¸öjavaµÄnioÀïÓиöMappedByteBufferÀ࣬ËûµÄ×÷Ó ......
Ê×ÏÈÁ˽âÏÂËùνµÄjava nioÊǸöʲô¶«Î÷£¡
IOÊÇ¿¿×Ö·û»ò×Ö½Ú½øÐд«Ê䣬±È½ÏÂý£¡ ¶øNIOÊÇ¿¿¿é£¬ Ò²¾ÍÏ൱ÓÚÒ»¸öBuffer£¬ Ò»¿éÒ»¿é
µÄ´«Ê䣬 ËٶȽϿì
£¡ ͬʱ¼ÓÈëÁ˶àÏß³Ì
µÄ¿ØÖÆ£¬ Ò»¸öNIOÁ÷¿ÉÒÔͬʱ´«Êä¶à¸ö¿éµÈ£¬ Ò²¾ÍÊÇËùνµÄÒì²½´«Êä
£»
´«Í³
µÄ²¢·¢ÐÍ
·þÎñÆ÷Éè¼ÆÊÇÀûÓÃ×èÈûÐÍÍøÂçI/O
ÒÔ¶àÏ̵߳ÄÄ ......