您的位置:首页 > 移动开发 > Android开发

Android 下的java.security和windows下的不一样?

2010-01-28 14:42 453 查看
    前端时间要把一个signjar的类移到android中,来给apk文件签名,这样就可以在android系统中生成apk文件。windows下的JDK中的signjar的类使用的是sun.security包,而android提供的加密相关的包是bouncycastle,加密相关的知识短时间内学不了,最快的办法还是把桌面环境下sun.security里面的包移植到android中使用。

    改完能跑,但是算出来的数据总是不对。开始以为是sun.security里面的一些算法在android里面有问题,就一直跟下去记log信息,跟了几天后赫然发现是java.security.MessageDigest类对一段数据进行SHA1加密的结果和windows环境下不一致。于是去网上找了SHA1的算法,替换掉MessageDigest来计算,得到的结果和windows环境下一致,并最终可以正确执行signjar。

    也许是android里面的security包要配合自己的bouncycastle才能正确使用?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐