Как использовать метод обновления класса 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
указывает, как далеко от начального индекса он должен идти