code: public static String toDigest(byte[] bytes, String algorithm) throws NoSuchAlgorithmException {
  		MessageDigest digest = MessageDigest.getInstance("MD5");
  		digest.update(bytes);
  		byte[] hash = digest.digest();
  
  		StringBuffer result = new StringBuffer();
  		for(int i = 0; i < hash.length; i++) {
  			String s = Integer.toHexString(hash[i]);
  			int length = s.length();
  			if(length >= 2) {
  				result.append(s.substring(length - 2, length));
  			} else {
  				result.append("0");
  				result.append(s);
  			}
  		}
  		return result.toString();
  	}
docs: Konwertuje tablicę bajtów na skrót zgodnie z algorytmem określonym przez
  parametr wywołania <code>algorithm</code>.
  
  @param bytes Tablica bajtów do konwersji.
  @param algorithm Algorytm wyznaczenia skrótu.
  
  @return Łańcuch reprezentujący skrót.
  @throws NoSuchAlgorithmException