File: Tests.hs

package info (click to toggle)
haskell-crypton 1.0.4-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 3,548 kB
  • sloc: haskell: 26,764; ansic: 22,294; makefile: 6
file content (118 lines) | stat: -rw-r--r-- 2,909 bytes parent folder | download
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