Home / Android / Tutorial Android Hash Menggunakan MD5 dan SHA1

Tutorial Android Hash Menggunakan MD5 dan SHA1

Android tidak dilengkapi fungsi bawaan untuk melakukan hash berupa MD5 dan SHA1, namun berikut ini fungsi yang dapat digunakan untuk menghasilkan hash MD5 dan SHA1 :

private static String convertToHex(byte[] data) throws java.io.IOException 
	 {


	        StringBuffer sb = new StringBuffer();
	        String hex=null;

	        hex=Base64.encodeToString(data, 0, data.length, NO_OPTIONS);

	        sb.append(hex);

	        return sb.toString();
	    }


	public void computeSHAHash(String password)
	  {
		  MessageDigest mdSha1 = null;
	        try 
	        {
	          mdSha1 = MessageDigest.getInstance("SHA-1");
	        } catch (NoSuchAlgorithmException e1) {
	          Log.e("myapp", "Error initializing SHA1 message digest");
	        }
	        try {
				mdSha1.update(password.getBytes("ASCII"));
			} catch (UnsupportedEncodingException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
	        byte[] data = mdSha1.digest();
	        try {
				SHAHash=convertToHex(data);
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

			result.setText("SHA-1 hash generated is: " + " " + SHAHash);
	    }


	public void computeMD5Hash(String password)
	{

		try {
	        // Create MD5 Hash
	        MessageDigest digest = java.security.MessageDigest.getInstance("MD5");
	        digest.update(password.getBytes());
	        byte messageDigest[] = digest.digest();

	        StringBuffer MD5Hash = new StringBuffer();
	        for (int i = 0; i < messageDigest.length; i++)
	        {
	            String h = Integer.toHexString(0xFF & messageDigest[i]);
	            while (h.length() < 2)
	                h = "0" + h;
	            MD5Hash.append(h);
	        }

	     	result.setText("MD5 hash generated is: " + " " + MD5Hash);

	    	} 
			catch (NoSuchAlgorithmException e) 
	    	{
	        e.printStackTrace();
	    	}


	}

About alfach

Check Also

building-hybrid-apps-with-ember-28-638

Menjalankan Streaming Video/Audio Pada Cordova Untuk Android/iOS

Implementasi cordova pada pengembangan mobile memudahkan karena menggunakan HTML dan javascript sebagai dasarnya. Untuk menjalankan ...

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>