Optimed MD5 calculation to be blockwise as bytewise operation is slow