如何使用Message Digest Class的更新方法

时间:2017-12-13 14:46:13

标签: java md5 chunking message-digest text-chunking

我正在处理数据加密项目,只是想问一下如何使用消息摘要类的更新方法。 在MD5实现的代码片段中,这是写的。

import java.security.MessageDigest;
import java.util.*;

class MD5{
    public static void main(String[]args){
        Scanner cin=new Scanner(System.in);
        String s=cin.nextLine();
        try{
            MessageDigest md=MessageDigest.getInstance("MD5");
            byte[] dataBytes=s.getBytes(); 
            md.update(dataBytes,0,0);
            byte[] digest=md.digest();
            for(byte b:digest)System.out.printf("%02x",b);
        }catch(Exception e){}
    }
}

我对这一行感到困惑

md.update(dataBytes,0,0);

这三个参数用于什么?而如何只散列一定数量的数据说192个字节的数据。

1 个答案:

答案 0 :(得分:1)

这是我从thisthis

获得的
  

这三个参数用于什么?

update(byte[] input, int offset, int len)

使用指定的字节数组更新摘要,从指定的偏移量开始。

input是应该被散列的数组

offset是数组的索引,它是起点

len指定距离起始索引的距离