java转python代码_android - Python代码转为java代码?

问 题

下面是一段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;

}

解决方案

python md5之后是base64 encode

java md5之后是base64 decode

wx.jpg

扫一扫关注IT屋

微信公众号搜索 “ IT屋 ” ,选择关注与百万开发者在一起

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值