]>
Commit | Line | Data |
---|---|---|
5ccada09 SL |
1 | # |
2 | # Copyright 2001-2020 The OpenSSL Project Authors. All Rights Reserved. | |
3 | # | |
4 | # Licensed under the Apache License 2.0 (the "License"). You may not use | |
5 | # this file except in compliance with the License. You can obtain a copy | |
6 | # in the file LICENSE in the source distribution or at | |
7 | # https://www.openssl.org/source/license.html | |
8 | ||
9 | # Tests start with one of these keywords | |
10 | # Cipher Decrypt Derive Digest Encoding KDF MAC PBE | |
11 | # PrivPubKeyPair Sign Verify VerifyRecover | |
12 | # and continue until a blank line. Lines starting with a pound sign are ignored. | |
13 | # The keyword Availablein must appear before the test name if needed. | |
14 | ||
15 | # Public key algorithm tests | |
16 | ||
17 | # Private keys used for PKEY operations. | |
18 | ||
19 | # EC P-256 key | |
20 | ||
21 | PrivateKey=P-256 | |
22 | -----BEGIN PRIVATE KEY----- | |
23 | MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgiocvtiiTxNH/xbnw | |
24 | +RdYBp+DUuCPoFpJ+NuSbLVyhyWhRANCAAQsFQ9CnOcPIWwlLPXgYs4fY5zV0WXH | |
25 | +JQkBywnGX14szuSDpXNtmTpkNzwz+oNlOKo5q+dDlgFbmUxBJJbn+bJ | |
26 | -----END PRIVATE KEY----- | |
27 | ||
28 | # EC public key for above | |
29 | ||
30 | PublicKey=P-256-PUBLIC | |
31 | -----BEGIN PUBLIC KEY----- | |
32 | MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELBUPQpznDyFsJSz14GLOH2Oc1dFl | |
33 | x/iUJAcsJxl9eLM7kg6VzbZk6ZDc8M/qDZTiqOavnQ5YBW5lMQSSW5/myQ== | |
34 | -----END PUBLIC KEY----- | |
35 | ||
36 | PrivPubKeyPair = P-256:P-256-PUBLIC | |
37 | ||
38 | Title = ECDSA tests | |
39 | ||
40 | Verify = P-256 | |
41 | Ctrl = digest:SHA1 | |
42 | Input = "0123456789ABCDEF1234" | |
43 | Output = 3045022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec8 | |
44 | ||
45 | # Digest too long | |
46 | Verify = P-256 | |
47 | Ctrl = digest:SHA1 | |
48 | Input = "0123456789ABCDEF12345" | |
49 | Output = 3045022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec8 | |
50 | Result = VERIFY_ERROR | |
51 | ||
52 | # Digest too short | |
53 | Verify = P-256 | |
54 | Ctrl = digest:SHA1 | |
55 | Input = "0123456789ABCDEF123" | |
56 | Output = 3045022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec8 | |
57 | Result = VERIFY_ERROR | |
58 | ||
59 | # Digest invalid | |
60 | Verify = P-256 | |
61 | Ctrl = digest:SHA1 | |
62 | Input = "0123456789ABCDEF1235" | |
63 | Output = 3045022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec8 | |
64 | Result = VERIFY_ERROR | |
65 | ||
66 | # Invalid signature | |
67 | Verify = P-256 | |
68 | Ctrl = digest:SHA1 | |
69 | Input = "0123456789ABCDEF1234" | |
70 | Output = 3045022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec7 | |
71 | Result = VERIFY_ERROR | |
72 | ||
73 | # Garbage after signature | |
74 | Availablein = default | |
75 | Verify = P-256 | |
76 | Ctrl = digest:SHA1 | |
77 | Input = "0123456789ABCDEF1234" | |
78 | Output = 3045022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec800 | |
79 | Result = VERIFY_ERROR | |
80 | ||
81 | # BER signature | |
82 | Verify = P-256 | |
83 | Ctrl = digest:SHA1 | |
84 | Input = "0123456789ABCDEF1234" | |
85 | Output = 3080022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec80000 | |
86 | Result = VERIFY_ERROR | |
87 | ||
88 | Verify = P-256-PUBLIC | |
89 | Ctrl = digest:SHA1 | |
90 | Input = "0123456789ABCDEF1234" | |
91 | Output = 3045022100b1d1cb1a577035bccdd5a86c6148c2cc7c633cd42b7234139b593076d041e15202201898cdd52b41ca502098184b409cf83a21bc945006746e3b7cea52234e043ec8 | |
92 | ||
93 | ||
94 | Title = DigestSign and DigestVerify | |
95 | ||
96 | DigestVerify = SHA256 | |
97 | Key = P-256-PUBLIC | |
98 | Input = "Hello World" | |
99 | Output = 3046022100e7515177ec3817b77a4a94066ab3070817b7aa9d44a8a09f040da250116e8972022100ba59b0f631258e59a9026be5d84f60685f4cf22b9165a0c2736d5c21c8ec1862 | |
100 | ||
101 | # Invalid digest | |
102 | DigestVerify = MD5 | |
103 | Key = P-256-PUBLIC | |
104 | Result = DIGESTVERIFYINIT_ERROR | |
105 | ||
106 | # Oneshot tests | |
107 | OneShotDigestVerify = SHA256 | |
108 | Key = P-256-PUBLIC | |
109 | Input = "Hello World" | |
110 | Output = 3046022100e7515177ec3817b77a4a94066ab3070817b7aa9d44a8a09f040da250116e8972022100ba59b0f631258e59a9026be5d84f60685f4cf22b9165a0c2736d5c21c8ec1862 |