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