sha256 (v67)

Revision 67 of this benchmark created on


Preparation HTML

<script src="http://code.jquery.com/jquery-2.1.3.min.js"></script>
<script src="https://rawgit.com/alexweber/jquery.sha256/master/jquery.sha256.min.js"></script>
<script src="http://crypto.stanford.edu/sjcl/sjcl.js"></script>
<script src="https://dchest.github.io/tweetnacl-js/nacl-fast.min.js"></script>
<script src="http://vibornoff.com/asmcrypto.js"></script>
<script src="http://caligatio.github.io/jsSHA/sha.js"></script>
<script src="http://www.webtoolkit.info/djs/webtoolkit.sha256.js"></script>
<script src="http://www.movable-type.co.uk/scripts/utf8.js"></script>
<script src="http://www.movable-type.co.uk/scripts/sha256.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/sha256.js"></script>
<script src="https://rawgit.com/emn178/js-sha256/master/src/sha256.js"></script>
<script>
js_sha256 = sha256;
sha256 = null;
</script>
<script src="https://rawgit.com/h2non/jshashes/master/hashes.min.js"></script>
<script>
Hashes_SHA256 =  new Hashes.SHA256;

var HEX_CHARS = '0123456789abcdef'.split('');
function toHexString(bytes) {
  var str = '';
  for(var i = 0;i < bytes.length;++i) {
    str += HEX_CHARS[bytes[i] >> 4] + HEX_CHARS[bytes[i] & 0x0F];
  }
  return str;
}
</script>

Setup

var str = 'The quick brown fox jumps over the lazy dog.';
    var str2 = 'Около 863 года братья Константин (Кирилл) Философ и Мефодий из Солуни (Салоники) по приказу византийского императора Михаила III упорядочили письменность для старославянского языка и использовали новую азбуку для перевода на славянский язык греческих религиозных текстов[2]:44. Долгое время дискуссионным оставался вопрос, была ли это кириллица (и в таком случае глаголицу считают тайнописью, появившейся после запрещения кириллицы) или глаголица — азбуки, различающиеся почти исключительно начертанием. В настоящее время в науке преобладает точка зрения, согласно которой глаголица первична, а кириллица вторична (в кириллице глаголические буквы заменены на известные греческие). Глаголица длительное время в несколько изменённом виде употреблялась у хорватов (до XVII в). Появление кириллицы, основывающейся на греческом уставном (торжественном) письме — унциале[2]:45, связывают с деятельностью болгарской школы книжников (после Кирилла и Мефодия). В частности, в житии св. Климента Охридского прямо пишется о создании им славянской письменности уже после Кирилла и Мефодия. Благодаря предыдущей деятельности братьев азбука получила широкое распространение в южнославянских землях, что привело в 885 году к запрещению её использования в церковной службе римским папой, боровшимся с результатами миссии Константина-Кирилла и Мефодия.';
    var str3 = '訊息摘要演算法第五版(英語:Message-Digest Algorithm 5,縮寫為MD5)';

Test runner

Ready to run.

Testing in
TestOps/sec
CryptoJS
CryptoJS.SHA256(str).toString();
CryptoJS.SHA256(str2).toString();
CryptoJS.SHA256(str3).toString();
ready
webtoolkit
SHA256(str);
SHA256(str2);
SHA256(str3);
ready
movable-type.co.uk
Sha256.hash(str);
Sha256.hash(str2);
Sha256.hash(str3);
ready
js-sha256
js_sha256(str);
js_sha256(str2);
js_sha256(str3);
ready
jsHashes
Hashes_SHA256.hex(str);
Hashes_SHA256.hex(str2);
Hashes_SHA256.hex(str3);
ready
asmCrypto
asmCrypto.SHA256.hex(nacl.util.decodeUTF8(str));
asmCrypto.SHA256.hex(nacl.util.decodeUTF8(str2));
asmCrypto.SHA256.hex(nacl.util.decodeUTF8(str3));
ready
jsSHA
new jsSHA(str, "TEXT").getHash("SHA-256", "HEX");
new jsSHA(str2, "TEXT").getHash("SHA-256", "HEX");
new jsSHA(str3, "TEXT").getHash("SHA-256", "HEX");
ready
SJCL
sjcl.codec.hex.fromBits(sjcl.hash.sha256.hash(str));
sjcl.codec.hex.fromBits(sjcl.hash.sha256.hash(str2));
sjcl.codec.hex.fromBits(sjcl.hash.sha256.hash(str3));
ready
jquery sha256
jQuery.sha256(str);
jQuery.sha256(str2);
jQuery.sha256(str3);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.