Mfp read plain (#704)
[proxmark3-svn] / client / emv / test / cryptotest.c
... / ...
CommitLineData
1//-----------------------------------------------------------------------------
2// Copyright (C) 2017 Merlok
3//
4// This code is licensed to you under the terms of the GNU GPL, version 2 or,
5// at your option, any later version. See the LICENSE.txt file for the text of
6// the license.
7//-----------------------------------------------------------------------------
8// Crypto algorithms testing
9//-----------------------------------------------------------------------------
10
11#include "cryptotest.h"
12#include "util.h"
13#include "ui.h"
14
15#include "bignum.h"
16#include "aes.h"
17#include "aes_cmac128.h"
18#include "des.h"
19#include "rsa.h"
20#include "sha1.h"
21
22#include "crypto_test.h"
23#include "sda_test.h"
24#include "dda_test.h"
25#include "cda_test.h"
26
27int ExecuteCryptoTests(bool verbose) {
28 int res;
29 bool TestFail = false;
30
31 res = mpi_self_test(verbose);
32 if (res) TestFail = true;
33
34 res = aes_self_test(verbose);
35 if (res) TestFail = true;
36
37 res = aes_cmac_self_test(verbose);
38 if (res) TestFail = true;
39
40 res = des_self_test(verbose);
41 if (res) TestFail = true;
42
43 res = sha1_self_test(verbose);
44 if (res) TestFail = true;
45
46 res = rsa_self_test(verbose);
47 if (res) TestFail = true;
48
49 res = exec_sda_test(verbose);
50 if (res) TestFail = true;
51
52 res = exec_dda_test(verbose);
53 if (res) TestFail = true;
54
55 res = exec_cda_test(verbose);
56 if (res) TestFail = true;
57
58 res = exec_crypto_test(verbose);
59 if (res) TestFail = true;
60
61 PrintAndLog("\n--------------------------");
62 if (TestFail)
63 PrintAndLog("Test(s) [ERROR].");
64 else
65 PrintAndLog("Tests [OK].");
66
67 return TestFail;
68}
69
Impressum, Datenschutz