UNPKG

sku-pg

Version:

Skulpt is a Javascript implementation of Python 2.x. Python that runs in your browser!

64 lines (54 loc) 1.65 kB
<!DOCTYPE html> <html> <!-- Copyright 2010 The Closure Library Authors. All Rights Reserved. Use of this source code is governed by the Apache License, Version 2.0. See the COPYING file for details. --> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Closure Unit Tests - goog.crypt.arc4</title> <script src="../base.js"></script> <script> goog.require('goog.array'); goog.require('goog.crypt.Arc4'); goog.require('goog.testing.jsunit'); </script> </head> <body> <script> function testEncryptionDecryption() { var key = [0x25, 0x26, 0x27, 0x28]; var startArray = [0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67]; var byteArray = [0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67]; var arc4 = new goog.crypt.Arc4(); arc4.setKey(key); arc4.crypt(byteArray); assertArrayEquals(byteArray, [0x51, 0xBB, 0xDD, 0x95, 0x9B, 0x42, 0x34]); // The same key and crypt call should unencrypt the data back to its original // state arc4 = new goog.crypt.Arc4(); arc4.setKey(key); arc4.crypt(byteArray); assertArrayEquals(byteArray, startArray); } function testDiscard() { var key = [0x25, 0x26, 0x27, 0x28]; var data = [0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67]; var arc4 = new goog.crypt.Arc4(); arc4.setKey(key); arc4.discard(256); var withDiscard = goog.array.clone(data); arc4.crypt(withDiscard); // First encrypting a dummy array should give the same result as // discarding. arc4 = new goog.crypt.Arc4(); arc4.setKey(key); var withCrypt = goog.array.clone(data); arc4.crypt(new Array(256)); arc4.crypt(withCrypt); assertArrayEquals(withDiscard, withCrypt); } </script> </body> </html>