use php's hash() function for do_hash() helper
diff --git a/system/helpers/security_helper.php b/system/helpers/security_helper.php
index e05e947..16dfb0d 100644
--- a/system/helpers/security_helper.php
+++ b/system/helpers/security_helper.php
@@ -87,7 +87,7 @@
 {
 	function do_hash($str, $type = 'sha1')
 	{
-		return ($type === 'sha1') ? sha1($str) : md5($str);
+		return hash($type, $str);
 	}
 }
 
diff --git a/user_guide_src/source/changelog.rst b/user_guide_src/source/changelog.rst
index 2740264..45bd41b 100644
--- a/user_guide_src/source/changelog.rst
+++ b/user_guide_src/source/changelog.rst
@@ -47,6 +47,7 @@
    -  Added a work-around in force_download() for a bug Android <= 2.1, where the filename extension needs to be in uppercase.
    -  form_dropdown() will now also take an array for unity with other form helpers.
    -  set_realpath() can now also handle file paths as opposed to just directories.
+   -  do_hash() now uses PHP's native hash() function, supporting more algorithms.
 
 -  Database
 
diff --git a/user_guide_src/source/helpers/security_helper.rst b/user_guide_src/source/helpers/security_helper.rst
index 01018c6..b1bcf2b 100644
--- a/user_guide_src/source/helpers/security_helper.rst
+++ b/user_guide_src/source/helpers/security_helper.rst
@@ -34,8 +34,9 @@
 do_hash()
 =========
 
-Permits you to create SHA1 or MD5 one way hashes suitable for encrypting
-passwords. Will create SHA1 by default. Examples
+Permits you to create one way hashes suitable for encrypting
+passwords. Will create SHA1 by default. See `hash_algos() <http://php.net/function.hash_algos>`_
+for a full list of supported algorithms.
 
 ::
 
@@ -43,7 +44,7 @@
 	$str = do_hash($str, 'md5'); // MD5
 
 .. note:: This function was formerly named dohash(), which has been
-	deprecated in favor of `do_hash()`.
+	removed in favor of `do_hash()`.
 
 strip_image_tags()
 ==================