xref: /aosp_15_r20/external/tink/cc/testvectors/BUILD.bazel (revision e7b1675dde1b92d52ec075b0a92829627f2c52a5)
1*e7b1675dSTing-Kang Chang"""Defines a set of genrules to copy test vectors from Wycheproof.
2*e7b1675dSTing-Kang Chang
3*e7b1675dSTing-Kang ChangThis is needed to assist the transition to using Bazel Modules, in that Bazel
4*e7b1675dSTing-Kang ChangModules packages use a different folder naming for dependencies compared to
5*e7b1675dSTing-Kang ChangWORKSPACE-based packages.
6*e7b1675dSTing-Kang Chang"""
7*e7b1675dSTing-Kang Chang
8*e7b1675dSTing-Kang Changpackage(default_visibility = ["//:__subpackages__"])
9*e7b1675dSTing-Kang Chang
10*e7b1675dSTing-Kang Changlicenses(["notice"])
11*e7b1675dSTing-Kang Chang
12*e7b1675dSTing-Kang Changgenrule(
13*e7b1675dSTing-Kang Chang    name = "aes_cmac",
14*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:aes_cmac"],
15*e7b1675dSTing-Kang Chang    outs = ["aes_cmac_test.json"],
16*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
17*e7b1675dSTing-Kang Chang    testonly = 1,
18*e7b1675dSTing-Kang Chang)
19*e7b1675dSTing-Kang Chang
20*e7b1675dSTing-Kang Changgenrule(
21*e7b1675dSTing-Kang Chang    name = "aes_gcm",
22*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:aes_gcm"],
23*e7b1675dSTing-Kang Chang    outs = ["aes_gcm_test.json"],
24*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
25*e7b1675dSTing-Kang Chang    testonly = 1,
26*e7b1675dSTing-Kang Chang)
27*e7b1675dSTing-Kang Chang
28*e7b1675dSTing-Kang Changgenrule(
29*e7b1675dSTing-Kang Chang    name = "aes_gcm_siv",
30*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:aes_gcm_siv"],
31*e7b1675dSTing-Kang Chang    outs = ["aes_gcm_siv_test.json"],
32*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
33*e7b1675dSTing-Kang Chang    testonly = 1,
34*e7b1675dSTing-Kang Chang)
35*e7b1675dSTing-Kang Chang
36*e7b1675dSTing-Kang Changgenrule(
37*e7b1675dSTing-Kang Chang    name = "aes_eax",
38*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:aes_eax"],
39*e7b1675dSTing-Kang Chang    outs = ["aes_eax_test.json"],
40*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
41*e7b1675dSTing-Kang Chang    testonly = 1,
42*e7b1675dSTing-Kang Chang)
43*e7b1675dSTing-Kang Chang
44*e7b1675dSTing-Kang Changgenrule(
45*e7b1675dSTing-Kang Chang    name = "aes_siv_cmac",
46*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:aes_siv_cmac"],
47*e7b1675dSTing-Kang Chang    outs = [
48*e7b1675dSTing-Kang Chang        "aead_aes_siv_cmac_test.json",
49*e7b1675dSTing-Kang Chang        "aes_siv_cmac_test.json",
50*e7b1675dSTing-Kang Chang    ],
51*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
52*e7b1675dSTing-Kang Chang    testonly = 1,
53*e7b1675dSTing-Kang Chang)
54*e7b1675dSTing-Kang Chang
55*e7b1675dSTing-Kang Changgenrule(
56*e7b1675dSTing-Kang Chang    name = "chacha20_poly1305",
57*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:chacha20_poly1305"],
58*e7b1675dSTing-Kang Chang    outs = [
59*e7b1675dSTing-Kang Chang        "chacha20_poly1305_test.json",
60*e7b1675dSTing-Kang Chang        "xchacha20_poly1305_test.json",
61*e7b1675dSTing-Kang Chang    ],
62*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
63*e7b1675dSTing-Kang Chang    testonly = 1,
64*e7b1675dSTing-Kang Chang)
65*e7b1675dSTing-Kang Chang
66*e7b1675dSTing-Kang Changgenrule(
67*e7b1675dSTing-Kang Chang    name = "hmac",
68*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:hmac"],
69*e7b1675dSTing-Kang Chang    outs = [
70*e7b1675dSTing-Kang Chang        "hmac_sha1_test.json",
71*e7b1675dSTing-Kang Chang        "hmac_sha224_test.json",
72*e7b1675dSTing-Kang Chang        "hmac_sha256_test.json",
73*e7b1675dSTing-Kang Chang        "hmac_sha384_test.json",
74*e7b1675dSTing-Kang Chang        "hmac_sha3_224_test.json",
75*e7b1675dSTing-Kang Chang        "hmac_sha3_256_test.json",
76*e7b1675dSTing-Kang Chang        "hmac_sha3_384_test.json",
77*e7b1675dSTing-Kang Chang        "hmac_sha3_512_test.json",
78*e7b1675dSTing-Kang Chang        "hmac_sha512_test.json",
79*e7b1675dSTing-Kang Chang    ],
80*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
81*e7b1675dSTing-Kang Chang    testonly = 1,
82*e7b1675dSTing-Kang Chang)
83*e7b1675dSTing-Kang Chang
84*e7b1675dSTing-Kang Changgenrule(
85*e7b1675dSTing-Kang Chang    name = "rsa_pss",
86*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:rsa_pss"],
87*e7b1675dSTing-Kang Chang    outs = [
88*e7b1675dSTing-Kang Chang        "rsa_pss_2048_sha1_mgf1_20_test.json",
89*e7b1675dSTing-Kang Chang        "rsa_pss_2048_sha256_mgf1_0_test.json",
90*e7b1675dSTing-Kang Chang        "rsa_pss_2048_sha256_mgf1_32_test.json",
91*e7b1675dSTing-Kang Chang        "rsa_pss_3072_sha256_mgf1_32_test.json",
92*e7b1675dSTing-Kang Chang        "rsa_pss_4096_sha256_mgf1_32_test.json",
93*e7b1675dSTing-Kang Chang        "rsa_pss_4096_sha512_mgf1_32_test.json",
94*e7b1675dSTing-Kang Chang        "rsa_pss_misc_test.json",
95*e7b1675dSTing-Kang Chang    ],
96*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
97*e7b1675dSTing-Kang Chang    testonly = 1,
98*e7b1675dSTing-Kang Chang)
99*e7b1675dSTing-Kang Chang
100*e7b1675dSTing-Kang Changgenrule(
101*e7b1675dSTing-Kang Chang    name = "rsa_signature",
102*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:rsa_signature"],
103*e7b1675dSTing-Kang Chang    outs = [
104*e7b1675dSTing-Kang Chang        # Signature verification
105*e7b1675dSTing-Kang Chang        "rsa_signature_2048_sha224_test.json",
106*e7b1675dSTing-Kang Chang        "rsa_signature_2048_sha256_test.json",
107*e7b1675dSTing-Kang Chang        "rsa_signature_2048_sha512_test.json",
108*e7b1675dSTing-Kang Chang        "rsa_signature_3072_sha256_test.json",
109*e7b1675dSTing-Kang Chang        "rsa_signature_3072_sha384_test.json",
110*e7b1675dSTing-Kang Chang        "rsa_signature_3072_sha512_test.json",
111*e7b1675dSTing-Kang Chang        "rsa_signature_4096_sha384_test.json",
112*e7b1675dSTing-Kang Chang        "rsa_signature_4096_sha512_test.json",
113*e7b1675dSTing-Kang Chang        "rsa_signature_2048_sha3_224_test.json",
114*e7b1675dSTing-Kang Chang        "rsa_signature_2048_sha3_256_test.json",
115*e7b1675dSTing-Kang Chang        "rsa_signature_2048_sha3_384_test.json",
116*e7b1675dSTing-Kang Chang        "rsa_signature_2048_sha3_512_test.json",
117*e7b1675dSTing-Kang Chang        "rsa_signature_3072_sha3_256_test.json",
118*e7b1675dSTing-Kang Chang        "rsa_signature_3072_sha3_384_test.json",
119*e7b1675dSTing-Kang Chang        "rsa_signature_3072_sha3_512_test.json",
120*e7b1675dSTing-Kang Chang        "rsa_signature_test.json",
121*e7b1675dSTing-Kang Chang        # Signature generation
122*e7b1675dSTing-Kang Chang        "rsa_sig_gen_misc_test.json",
123*e7b1675dSTing-Kang Chang    ],
124*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
125*e7b1675dSTing-Kang Chang    testonly = 1,
126*e7b1675dSTing-Kang Chang)
127*e7b1675dSTing-Kang Chang
128*e7b1675dSTing-Kang Changgenrule(
129*e7b1675dSTing-Kang Chang    name = "ecdsa_webcrypto",
130*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:ecdsa_webcrypto"],
131*e7b1675dSTing-Kang Chang    outs = ["ecdsa_webcrypto_test.json"],
132*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
133*e7b1675dSTing-Kang Chang    testonly = 1,
134*e7b1675dSTing-Kang Chang)
135*e7b1675dSTing-Kang Chang
136*e7b1675dSTing-Kang Changgenrule(
137*e7b1675dSTing-Kang Chang    name = "ecdsa",
138*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:ecdsa"],
139*e7b1675dSTing-Kang Chang    outs = [
140*e7b1675dSTing-Kang Chang        "ecdsa_brainpoolP224r1_sha224_test.json",
141*e7b1675dSTing-Kang Chang        "ecdsa_brainpoolP256r1_sha256_test.json",
142*e7b1675dSTing-Kang Chang        "ecdsa_brainpoolP320r1_sha384_test.json",
143*e7b1675dSTing-Kang Chang        "ecdsa_brainpoolP384r1_sha384_test.json",
144*e7b1675dSTing-Kang Chang        "ecdsa_brainpoolP512r1_sha512_test.json",
145*e7b1675dSTing-Kang Chang        "ecdsa_secp224r1_sha224_test.json",
146*e7b1675dSTing-Kang Chang        "ecdsa_secp224r1_sha256_test.json",
147*e7b1675dSTing-Kang Chang        "ecdsa_secp224r1_sha3_224_test.json",
148*e7b1675dSTing-Kang Chang        "ecdsa_secp224r1_sha3_256_test.json",
149*e7b1675dSTing-Kang Chang        "ecdsa_secp224r1_sha3_512_test.json",
150*e7b1675dSTing-Kang Chang        "ecdsa_secp224r1_sha512_test.json",
151*e7b1675dSTing-Kang Chang        "ecdsa_secp256k1_sha256_test.json",
152*e7b1675dSTing-Kang Chang        "ecdsa_secp256k1_sha3_256_test.json",
153*e7b1675dSTing-Kang Chang        "ecdsa_secp256k1_sha3_512_test.json",
154*e7b1675dSTing-Kang Chang        "ecdsa_secp256k1_sha512_test.json",
155*e7b1675dSTing-Kang Chang        "ecdsa_secp256r1_sha256_test.json",
156*e7b1675dSTing-Kang Chang        "ecdsa_secp256r1_sha3_256_test.json",
157*e7b1675dSTing-Kang Chang        "ecdsa_secp256r1_sha3_512_test.json",
158*e7b1675dSTing-Kang Chang        "ecdsa_secp256r1_sha512_test.json",
159*e7b1675dSTing-Kang Chang        "ecdsa_secp384r1_sha384_test.json",
160*e7b1675dSTing-Kang Chang        "ecdsa_secp384r1_sha3_384_test.json",
161*e7b1675dSTing-Kang Chang        "ecdsa_secp384r1_sha3_512_test.json",
162*e7b1675dSTing-Kang Chang        "ecdsa_secp384r1_sha512_test.json",
163*e7b1675dSTing-Kang Chang        "ecdsa_secp521r1_sha3_512_test.json",
164*e7b1675dSTing-Kang Chang        "ecdsa_secp521r1_sha512_test.json",
165*e7b1675dSTing-Kang Chang        "ecdsa_test.json",  # deprecated: use the files above
166*e7b1675dSTing-Kang Chang    ],
167*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
168*e7b1675dSTing-Kang Chang    testonly = 1,
169*e7b1675dSTing-Kang Chang)
170*e7b1675dSTing-Kang Chang
171*e7b1675dSTing-Kang Changgenrule(
172*e7b1675dSTing-Kang Chang    name = "eddsa",
173*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:eddsa"],
174*e7b1675dSTing-Kang Chang    outs = [
175*e7b1675dSTing-Kang Chang        "ed448_test.json",
176*e7b1675dSTing-Kang Chang        "eddsa_test.json",
177*e7b1675dSTing-Kang Chang    ],
178*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
179*e7b1675dSTing-Kang Chang    testonly = 1,
180*e7b1675dSTing-Kang Chang)
181*e7b1675dSTing-Kang Chang
182*e7b1675dSTing-Kang Changgenrule(
183*e7b1675dSTing-Kang Chang    name = "ecdh",
184*e7b1675dSTing-Kang Chang    srcs = ["@wycheproof//testvectors:ecdh"],
185*e7b1675dSTing-Kang Chang    outs = [
186*e7b1675dSTing-Kang Chang        "ecdh_brainpoolP224r1_test.json",
187*e7b1675dSTing-Kang Chang        "ecdh_brainpoolP256r1_test.json",
188*e7b1675dSTing-Kang Chang        "ecdh_brainpoolP320r1_test.json",
189*e7b1675dSTing-Kang Chang        "ecdh_brainpoolP384r1_test.json",
190*e7b1675dSTing-Kang Chang        "ecdh_brainpoolP512r1_test.json",
191*e7b1675dSTing-Kang Chang        "ecdh_secp224r1_test.json",
192*e7b1675dSTing-Kang Chang        "ecdh_secp256k1_test.json",
193*e7b1675dSTing-Kang Chang        "ecdh_secp256r1_test.json",
194*e7b1675dSTing-Kang Chang        "ecdh_secp384r1_test.json",
195*e7b1675dSTing-Kang Chang        "ecdh_secp521r1_test.json",
196*e7b1675dSTing-Kang Chang        "ecdh_test.json",  # deprecated use the files above
197*e7b1675dSTing-Kang Chang    ],
198*e7b1675dSTing-Kang Chang    cmd = "cp $(SRCS) $(@D)/",
199*e7b1675dSTing-Kang Chang    testonly = 1,
200*e7b1675dSTing-Kang Chang)
201