java - 如何使用消息摘要类的update方法

标签 java md5 chunking message-digest text-chunking

我正在做一个数据加密项目,只是想问一下如何使用消息摘要类的方法update。 在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 字节的数据)进行哈希处理。

最佳答案

这是我从 this 得到的,和 this

what are the three arguments are used for?

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

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

input 是应该被散列的数组

offset 是数组的索引,是起点

len 指定距离起始索引多远

关于java - 如何使用消息摘要类的update方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47795808/

相关文章:

java - 在 Java 中读取 HTTP 消息

java - 使用 Maven 在内部使用 native 库构建 Android 项目

reactjs - 无法让 webpack require.ensure 分块方法与 react 路由器一起使用并生成单独的捆绑文件

Python:使用 Spacy 等对名词短语(例如介词)进行分块

逐 block 读取文件时Python不返回所有数据

java - 应用程序启动时存储库不会初始化

JavaScript MD5 哈希与 Java Applet MD5 哈希?

java - 从摘要或校验和中检测目录(java 8)中已更改的文件

delphi - 在 Delphi 中获取 PDF MD5 哈希值

java - 将数据库类型映射到具体的 Java 类