Java Digest digest(String name, String source)

Here you can find the source of digest(String name, String source)

Description

digest

License

Apache License

Declaration

private static String digest(String name, String source) throws NoSuchAlgorithmException 

Method Source Code


//package com.java2s;
/*//from www. j  av  a 2  s.com
 * Copyright (c) 2016 yunmle.com(????????).
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 */

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class Main {
    public static final char[] DIGITS = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e',
            'f' };

    private static String digest(String name, String source) throws NoSuchAlgorithmException {
        if (source != null) {
            final MessageDigest md = MessageDigest.getInstance(name);
            md.update(source.getBytes());
            return toHexString(md.digest());
        }
        return null;
    }

    private static String digest(String name, byte[] bytes) throws NoSuchAlgorithmException {
        if (bytes != null) {
            final MessageDigest md = MessageDigest.getInstance(name);
            md.update(bytes);
            return toHexString(md.digest());
        }
        return null;
    }

    public static String toHexString(final byte[] bs) {
        final int len;
        if (bs != null && (len = bs.length) != 0) {
            final char[] cs = new char[len << 1];
            final char[] myDigits = DIGITS;
            byte b;
            for (int i = 0, j = 0; i < len; i++) {
                cs[j++] = myDigits[((b = bs[i]) >>> 4) & 0xF];
                cs[j++] = myDigits[b & 0xF];
            }
            return String.valueOf(cs);
        }
        return null;
    }
}

Related

  1. digest(String ha1, String ha2, String nonce)
  2. digest(String input, Charset charset)
  3. digest(String input, String algorithm, String encoding)
  4. digest(String key)
  5. digest(String message, byte[] salt)
  6. digest(String orgin, String algorithm)
  7. digest(String password)
  8. digest(String plain, String algorithm)
  9. digest(String planeText)