Android examples for java.security:Hash
Computes the MD5 hash of the given data and returns it as an array of bytes.
/*//from w w w. jav a 2 s . c o m * Copyright 2012-2014 Amazon Technologies, Inc. * * Portions copyright 2006-2009 James Murty. Please see LICENSE.txt * for applicable license terms and NOTICE.txt for applicable notices. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://aws.amazon.com/apache2.0 * * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES * OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and * limitations under the License. */ //package com.java2s; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import android.util.Log; public class Main { private static final int SIXTEEN_K = 1 << 14; public static byte[] computeMD5Hash(InputStream is) throws IOException { BufferedInputStream bis = new BufferedInputStream(is); try { MessageDigest messageDigest = MessageDigest.getInstance("MD5"); byte[] buffer = new byte[SIXTEEN_K]; int bytesRead; while ((bytesRead = bis.read(buffer, 0, buffer.length)) != -1) { messageDigest.update(buffer, 0, bytesRead); } return messageDigest.digest(); } catch (NoSuchAlgorithmException e) { // should never get here throw new IllegalStateException(e); } finally { try { bis.close(); } catch (Exception e) { Log.e("ks3", "Unable to close input stream of hash candidate: " + e); } } } /** * Computes the MD5 hash of the given data and returns it as an array of * bytes. */ public static byte[] computeMD5Hash(byte[] input) { try { MessageDigest md = MessageDigest.getInstance("MD5"); return md.digest(input); } catch (NoSuchAlgorithmException e) { // should never get here throw new IllegalStateException(e); } } /** * Computes the MD5 of the given file. */ public static byte[] computeMD5Hash(File file) throws FileNotFoundException, IOException { return computeMD5Hash(new FileInputStream(file)); } }