Как использовать метод обновления класса Message Digest

Я работаю над проектом шифрования данных и просто хотел спросить, как использовать метод 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 байта данных.

1 ответ

Это то, что я получаю от этого, и это

для чего используются три аргумента?

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

Обновляет дайджест, используя указанный массив байтов, начиная с указанного смещения.

input массив, который должен быть хеширован

offset это индекс массива, который является отправной точкой

len указывает, как далеко от начального индекса он должен идти

Другие вопросы по тегам