java.security.NoSuchAlgorithmexception: RipeMD160 MessageDigest not available

在执行RipeMD160 时 debug 版本没事 ,apk release版本报java.security.NoSuchAlgorithmexception: RipeMD160 MessageDigest not available

/**
     * RipeMD160消息摘要
     * @param data 待处理的消息摘要数据
     * @return byte[] 消息摘要
     * */
    public static byte[] encodeRipeMD160(byte[] data) throws Exception{
        //加入BouncyCastleProvider的支持
        Security.addProvider(new BouncyCastleProvider());
        //初始化MessageDigest
        MessageDigest md=MessageDigest.getInstance("RipeMD160");
        //执行消息摘要
        return md.digest(data);
        
    }

java.security.NoSuchAlgorithmexception: RipeMD160 MessageDigest not available_第1张图片



起初以为是混淆去除混淆后还是报错,最后查java8 MessageDigest 里没有RipeMD160,所以报java.security.NoSuchAlgorithmexception: 但为什么Debug没事

最后修改RipeMD160方法解决


    private  byte[] encodeRipeMD160(byte[] data) throws Exception{
        RIPEMD160Digest d = new RIPEMD160Digest();
        d.update (data, 0, data.length);
        byte[] o = new byte[d.getDigestSize()];
        d.doFinal (o, 0);
       return o;
    }













你可能感兴趣的:(区块链)