android - Python代码转为java代码?

 本多天舞 发布于 2022-10-27 02:16

下面是一段Python的加密代码 :

import md5
def encrypted_id(id):
    byte1 = bytearray('3go8&$8*3*3h0k(2)2')
    byte2 = bytearray(id)
    byte1_len = len(byte1)
    for i in xrange(len(byte2)):
        byte2[i] = byte2[i]^byte1[i%byte1_len]
    m = md5.new()
    m.update(byte2)
    result = m.digest().encode('base64')[:-1]
    result = result.replace('/', '_')
    result = result.replace('+', '-')
    return result

请问如何改写为java代码?
下面是我改写的java代码,但是返回的结果始终为空:

 public static String md5(String musicID) throws NoSuchAlgorithmException {
        System.out.print(musicID);
        String result;
        byte[] byte1, byte2;
        String word = "3go8&$8*3*3h0k(2)2";
        byte1 = word.getBytes();
        byte2 = musicID.getBytes();
        int byte2_len = byte2.length;
        int byte1_len=byte1.length;
        for (int i = 0; i < byte2_len; i++) {
            byte2[i] = (byte) (byte2[i] ^ byte1[i % byte1_len]);
        }
        MessageDigest md5 = MessageDigest.getInstance("MD5");
        md5.update(byte2);
        byte[] digest = md5.digest();
        result=new String(Base64.decodeBase64(digest));
        result = result.replace('/', '_');
        result = result.replace('+', '-');
        return result;
    }
1 个回答
  • python md5之后是base64 encode

    java md5之后是base64 decode

    2022-11-12 01:40 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有