获取随机字母

背景:在JAVAC 通信时,需要对传送的数据进行加密,在采用 RC4 加密时, key 要随机生成,每次都使用不同的 sessionkey

实现方式:

/**

 * 获取随机字母

 */

private   char  getRandomCharacter() {  

         //  TODO  Auto-generated method stub  

         switch  (( int )(Math. random ()*2)) {  

         case  0:  

             return  ( char )(Math. random ()*26+ 'A' );  

  

         case  1:  

             return  ( char )(Math. random ()*26+ 'a' );  

        }  

         return  0;  

    }  

/**

 * 获取16位的随机sessionKey 即rc4的key

 * 

 *  @return  sessionKey

 */

private   byte [] getSessionKey(){

byte [] sessionKey =  new   byte [16];

StringBuffer sBuffer= new  StringBuffer( "" );  

         for  ( int  i = 0; i < 16; i++) {  

         char  randomCharacter = getRandomCharacter(); 

            sBuffer.append(randomCharacter);  

        }

        System. arraycopy (sBuffer.toString().getBytes(), 0, sessionKey, 0, sBuffer.toString().getBytes(). length );

         return  sessionKey;

}

 

注意: System. arraycopy (源,源位置,目标,目标位置,源长度 )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值