我正在写一个UDP程序来发送byte []给主机,我需要发送一个加密文本(RC4)到主机,由此主机解密并获得明文但我遇到了一些问题,我在哪里转换char [] to byte []发送到主机,主机将首先将其转换为字符串然后获取字节来解密字节。
String data = new String(RC4().toString().getBytes()); // Simulate host recieve bytes then i convert to string to convert to char[] for decryption.
char[] tester = data.toCharArray();
System.out.println("EN:"+RC4());// Display [C@6d06d69c
System.out.println(tester); // Display [C@6d06d69c
System.out.println(RC4D(tester)); // Display some gibberish.
System.out.println(RC4D(RC4())); // Display the correct plain text
RC4()加密函数和RC4D()解密函数都返回char [],我硬编码msg以加密RC4()
我不明白为什么两者都显示相同的加密文本但是当我解密测试时,结果与RC4()不同。