myStephen 2015-07-05 07:30 采纳率: 0%
浏览 1724

Java代码翻译为C#代码

 public static String decrypt(String data, String key) {

        if (key.length() < 16) {
            throw new RuntimeException("Invalid AES key length (must be 16 bytes)");
        } else if (key.length() > 16) {
            key = key.substring(0, 16);
        }
        try {
            // 十六进制转换为二进制
            byte[] decryptFrom = parseHexStr2Byte(data);
            Cipher cipher = Cipher.getInstance(AES_ALGORITHM);// 创建密码器
            cipher.init(Cipher.DECRYPT_MODE, genKey(key));// 初始化
            byte[] result = cipher.doFinal(decryptFrom);
            return new String(result,"utf-8"); // 加密
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

实在没分了,实在翻译不过来,翻译过来又是乱码,实在没办法了。帮帮忙!

  • 写回答

5条回答

  • 91program 博客专家认证 2015-07-05 07:33
    关注

    parseHexStr2Byte 和 Cipher 等,有对应语言版本的实现?

    Java 与 C# 下,DES 加密与解密的算法的问题,是否完全一样、或者说兼容还不确定吧。

    评论

报告相同问题?

悬赏问题

  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码