1{-# LANGUAGE OverloadedStrings #-} 2module Main where 3 4import Imports 5 6import Crypto.System.CPU 7 8import qualified Number 9import qualified Number.F2m 10import qualified BCrypt 11import qualified BCryptPBKDF 12import qualified ECC 13import qualified ECC.Edwards25519 14import qualified ECDSA 15import qualified Hash 16import qualified Poly1305 17import qualified Salsa 18import qualified XSalsa 19import qualified ChaCha 20import qualified ChaChaPoly1305 21import qualified KAT_MiyaguchiPreneel 22import qualified KAT_CMAC 23import qualified KAT_HMAC 24import qualified KAT_KMAC 25import qualified KAT_HKDF 26import qualified KAT_Argon2 27import qualified KAT_PBKDF2 28import qualified KAT_Curve25519 29import qualified KAT_Curve448 30import qualified KAT_Ed25519 31import qualified KAT_Ed448 32import qualified KAT_OTP 33import qualified KAT_PubKey 34import qualified KAT_Scrypt 35-- symmetric cipher -------------------- 36import qualified KAT_AES 37import qualified KAT_AESGCMSIV 38import qualified KAT_Blowfish 39import qualified KAT_CAST5 40import qualified KAT_Camellia 41import qualified KAT_DES 42import qualified KAT_RC4 43import qualified KAT_TripleDES 44import qualified KAT_Twofish 45-- misc -------------------------------- 46import qualified KAT_AFIS 47import qualified Padding 48 49tests = testGroup "cryptonite" 50 [ testGroup "runtime" 51 [ testCaseInfo "CPU" (return $ show processorOptions) 52 ] 53 , Number.tests 54 , Number.F2m.tests 55 , Hash.tests 56 , Padding.tests 57 , testGroup "ConstructHash" 58 [ KAT_MiyaguchiPreneel.tests 59 ] 60 , testGroup "MAC" 61 [ Poly1305.tests 62 , KAT_CMAC.tests 63 , KAT_HMAC.tests 64 , KAT_KMAC.tests 65 ] 66 , KAT_Curve25519.tests 67 , KAT_Curve448.tests 68 , KAT_Ed25519.tests 69 , KAT_Ed448.tests 70 , KAT_PubKey.tests 71 , KAT_OTP.tests 72 , testGroup "KDF" 73 [ KAT_PBKDF2.tests 74 , KAT_Scrypt.tests 75 , BCrypt.tests 76 , BCryptPBKDF.tests 77 , KAT_HKDF.tests 78 , KAT_Argon2.tests 79 ] 80 , testGroup "block-cipher" 81 [ KAT_AES.tests 82 , KAT_AESGCMSIV.tests 83 , KAT_Blowfish.tests 84 , KAT_CAST5.tests 85 , KAT_Camellia.tests 86 , KAT_DES.tests 87 , KAT_TripleDES.tests 88 , KAT_Twofish.tests 89 ] 90 , testGroup "stream-cipher" 91 [ KAT_RC4.tests 92 , ChaCha.tests 93 , ChaChaPoly1305.tests 94 , Salsa.tests 95 , XSalsa.tests 96 ] 97 , KAT_AFIS.tests 98 , ECC.tests 99 , ECC.Edwards25519.tests 100 , ECDSA.tests 101 ] 102 103main = defaultMain tests 104