unit test scrypt wrapper
authorPhilipp Gesang <philipp.gesang@intra2net.com>
Tue, 28 Feb 2017 16:01:07 +0000 (17:01 +0100)
committerPhilipp Gesang <philipp.gesang@intra2net.com>
Tue, 28 Feb 2017 16:01:07 +0000 (17:01 +0100)
testing/test_crypto.py

index e0c02a0..d71c383 100644 (file)
@@ -256,6 +256,24 @@ class AESGCMTest (CryptoLayerTest):
             ok, _, _ = dec.done ()
 
 
+class ScryptTest (CryptoLayerTest):
+
+    nacl_len  = 16
+    nacl      = binascii.unhexlify(b"0011223344556677"
+                                   b"8899aabbccddeeff")
+
+    def test_scrypt_keygen (self):
+        nacl, k = crypto.scrypt_derive (TEST_PASSPHRASE, self.nacl)
+        assert len (k) == CRYPTO_KEY_SIZE
+        assert nacl == self.nacl
+
+    ## excessively slow, so disabled
+#   def test_scrypt_keygen_salt_random (self):
+#       _, salted_a = crypto.scrypt_derive (TEST_PASSPHRASE, None)
+#       _, salted_b = crypto.scrypt_derive (TEST_PASSPHRASE, None)
+#       assert salted_a != salted_b
+
+
 class HeaderTest (CryptoLayerTest):
 
     def test_crypto_fmt_hdr_make (self):