JSFiddle - React, Tailwind, and code Playground

HTML

<body>
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/md5.js"></script>
<form action="upload.php" method="post" enctype="multipart/form-data">
    Select image to upload:
    <input type="file" name="videoupload" id="videoupload">
	<input type="text" name="hashValue" id="hashValue">
    <input type="submit" value="Upload Image" name="submit">
</form>

JavaScript

// Reference: https://code.google.com/p/crypto-js/#MD5
		function handleFileSelect(evt) 
		{	
			var files = evt.target.files; // FileList object
			
			// Loop through the FileList and render image files as thumbnails.
			for (var i = 0, f; f = files[i]; i++) 
			{
				var reader = new FileReader();
	
				// Closure to capture the file information.
				reader.onload = (function(theFile) 
				{
					return function(e) 
					{
						var span = document.createElement('span');
						var test = e.target.result;
                                                
						//var hash = hex_md5(test);
						var hash = CryptoJS.MD5(test);
						var elem = document.getElementById("hashValue");
						elem.value = hash;
					};
					
				})(f);

				// Read in the image file as a data URL.
				reader.readAsBinaryString(f);

			}
		}

		document.getElementById('videoupload').addEventListener('change', handleFileSelect, false);