OSDN Git Service

- add crypto-js library(for new hash access method).
[feedblog/feedblog.git] / js / crypto-js / components / pad-zeropadding.js
diff --git a/js/crypto-js/components/pad-zeropadding.js b/js/crypto-js/components/pad-zeropadding.js
new file mode 100644 (file)
index 0000000..e4b5acb
--- /dev/null
@@ -0,0 +1,31 @@
+/*
+CryptoJS v3.1.2
+code.google.com/p/crypto-js
+(c) 2009-2013 by Jeff Mott. All rights reserved.
+code.google.com/p/crypto-js/wiki/License
+*/
+/**\r
+ * Zero padding strategy.\r
+ */\r
+CryptoJS.pad.ZeroPadding = {\r
+    pad: function (data, blockSize) {\r
+        // Shortcut\r
+        var blockSizeBytes = blockSize * 4;\r
+\r
+        // Pad\r
+        data.clamp();\r
+        data.sigBytes += blockSizeBytes - ((data.sigBytes % blockSizeBytes) || blockSizeBytes);\r
+    },\r
+\r
+    unpad: function (data) {\r
+        // Shortcut\r
+        var dataWords = data.words;\r
+\r
+        // Unpad\r
+        var i = data.sigBytes - 1;\r
+        while (!((dataWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff)) {\r
+            i--;\r
+        }\r
+        data.sigBytes = i + 1;\r
+    }\r
+};\r