2017-12-13 15 views
1

私はデータ暗号化プロジェクトに取り組んでおり、メッセージダイジェストクラスの更新の使用方法を尋ねたかっただけです。 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

チェックを行くべきどこまで開始インデックスから指定の出発点は、配列のインデックス

offsetをハッシュ化されたことになっている配列されていますdocs https://docs.oracle.com/javase/7/docs/api/java/security/MessageDigest.html#update(byte[],%20int,%20int) – JohnnyAW

答えて

1

これは私がthisから得るものです、そして三つの引数が使用されているもの

this

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

指定されたオフセットから始まる指定されたバイト配列を使用してダイジェストを更新します。

input

lenはそれが

関連する問題