中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java實現的RC4加密解密算法示例

發布時間:2020-10-22 01:58:52 來源:腳本之家 閱讀:559 作者:L_serein 欄目:編程語言

本文實例講述了java實現的RC4加密解密算法。分享給大家供大家參考,具體如下:

有一個項目,需要解析一個用戶提供的rc4加密后的文件,特意搜索整理了一個Java 版本的RC4加解密算法。

public static String HloveyRC4(String aInput,String aKey)
{
    int[] iS = new int[256];
    byte[] iK = new byte[256];
    for (int i=0;i<256;i++)
      iS[i]=i;
    int j = 1;
    for (short i= 0;i<256;i++)
    {
      iK[i]=(byte)aKey.charAt((i % aKey.length()));
    }
    j=0;
    for (int i=0;i<255;i++)
    {
      j=(j+iS[i]+iK[i]) % 256;
      int temp = iS[i];
      iS[i]=iS[j];
      iS[j]=temp;
    }
    int i=0;
    j=0;
    char[] iInputChar = aInput.toCharArray();
    char[] iOutputChar = new char[iInputChar.length];
    for(short x = 0;x<iInputChar.length;x++)
    {
      i = (i+1) % 256;
      j = (j+iS[i]) % 256;
      int temp = iS[i];
      iS[i]=iS[j];
      iS[j]=temp;
      int t = (iS[i]+(iS[j] % 256)) % 256;
      int iY = iS[t];
      char iCY = (char)iY;
      iOutputChar[x] =(char)( iInputChar[x] ^ iCY) ;
    }
    return new String(iOutputChar);
}

加密和解密都用這一個方法。也就是說參數String aInput 可以傳一個明文,也可以傳一個加密后的字符串,程序會自動的識別。然后執行加解密的響應操作。

使用例子如下:

public static void main(String[] args) {
  String inputStr = "做個好男人";
  String key = "abcdefg";
  String str = HloveyRC4(inputStr,key);
  //打印加密后的字符串
  System.out.println(str);
  //打印解密后的字符串
  System.out.println(HloveyRC4(str,key));
}

PS:關于加密解密感興趣的朋友還可以參考本站在線工具:

MD5在線加密工具:
http://tools.jb51.net/password/CreateMD5Password

迅雷、快車、旋風URL加密/解密工具:
http://tools.jb51.net/password/urlrethunder

在線散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt

在線MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

在線sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode

更多關于java相關內容感興趣的讀者可查看本站專題:《Java數學運算技巧總結》、《Java數據結構與算法教程》、《Java字符與字符串操作技巧總結》、《java日期與時間操作技巧匯總》、《Java操作DOM節點技巧總結》和《Java緩存操作技巧匯總》

希望本文所述對大家java程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

吉安县| 鄢陵县| 比如县| 常山县| 高唐县| 五莲县| 封丘县| 婺源县| 二连浩特市| 晋城| 建水县| 怀集县| 京山县| 中卫市| 旬阳县| 绩溪县| 革吉县| 公主岭市| 庆城县| 巨野县| 余庆县| 盐城市| 连州市| 靖边县| 泾阳县| 嘉兴市| 南通市| 乐清市| 长泰县| 常山县| 杭锦旗| 马公市| 雅安市| 瓦房店市| 任丘市| 陇川县| 剑河县| 桐城市| 镇原县| 苍南县| 富顺县|