求大神用java实现RC4的加密,解密功能,高分悬赏.

JavaScript013

求大神用java实现RC4的加密,解密功能,高分悬赏.,第1张

import javax.crypto.Cipher

import javax.crypto.spec.SecretKeySpec

import javax.xml.bind.DatatypeConverter

public class Test {

public static void main(String[] args) throws Exception{

Cipher cipher=Cipher.getInstance("RC4")

String pwd="123456"

String ptext="Hello World 你好"

SecretKeySpec key=new SecretKeySpec(pwd.getBytes("UTF-8"), "RC4")

cipher.init(Cipher.ENCRYPT_MODE, key)

byte[] cdata =cipher.update(ptext.getBytes("UTF-8"))

//解密

cipher.init(Cipher.DECRYPT_MODE, key)

byte[] ddata =cipher.update(cdata)

System.out.println("密码: "+pwd)

System.out.println("明文: "+ptext)

System.out.println("密文: "+DatatypeConverter.printHexBinary(cdata))

System.out.println("解密文: "+new String(ddata,"UTF-8"))

}

} 密码: 123456

明文: Hello World 你好

密文: 489D120B4B1342F30D5B46961D83E12B4875

解密文: Hello World 你好

RC4已经不太安全,只能用于一般加密,不能用于金融等紧要场合。

uniapp如何加密解密rc4步骤:

1、第一步是生成S盒

2、初始排列S然后用T产生S的初始置换.从S到S255,对每个Si,根据由Ti确定的方案,将Si置换为S中的另一字节

3、产生密钥流矢量S一旦完成初始化,输人密钥就不再被使用。

4、最后进行异或运算data与key按位异或操作