xref: /aosp_15_r20/external/tink/cc/hybrid/BUILD.bazel (revision e7b1675dde1b92d52ec075b0a92829627f2c52a5)
1*e7b1675dSTing-Kang Changpackage(default_visibility = ["//:__subpackages__"])
2*e7b1675dSTing-Kang Chang
3*e7b1675dSTing-Kang Changlicenses(["notice"])
4*e7b1675dSTing-Kang Chang
5*e7b1675dSTing-Kang Changcc_library(
6*e7b1675dSTing-Kang Chang    name = "hybrid_config",
7*e7b1675dSTing-Kang Chang    srcs = ["hybrid_config.cc"],
8*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_config.h"],
9*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
10*e7b1675dSTing-Kang Chang    visibility = ["//visibility:public"],
11*e7b1675dSTing-Kang Chang    deps = [
12*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_private_key_manager",
13*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_public_key_manager",
14*e7b1675dSTing-Kang Chang        ":hybrid_decrypt_wrapper",
15*e7b1675dSTing-Kang Chang        ":hybrid_encrypt_wrapper",
16*e7b1675dSTing-Kang Chang        "//:registry",
17*e7b1675dSTing-Kang Chang        "//aead:aead_config",
18*e7b1675dSTing-Kang Chang        "//config:config_util",
19*e7b1675dSTing-Kang Chang        "//config:tink_fips",
20*e7b1675dSTing-Kang Chang        "//proto:config_cc_proto",
21*e7b1675dSTing-Kang Chang        "//util:status",
22*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/base:core_headers",
23*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
24*e7b1675dSTing-Kang Chang    ],
25*e7b1675dSTing-Kang Chang)
26*e7b1675dSTing-Kang Chang
27*e7b1675dSTing-Kang Changcc_library(
28*e7b1675dSTing-Kang Chang    name = "hpke_config",
29*e7b1675dSTing-Kang Chang    srcs = ["hpke_config.cc"],
30*e7b1675dSTing-Kang Chang    hdrs = ["hpke_config.h"],
31*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
32*e7b1675dSTing-Kang Chang    tags = ["requires_boringcrypto_update"],
33*e7b1675dSTing-Kang Chang    visibility = ["//visibility:public"],
34*e7b1675dSTing-Kang Chang    deps = [
35*e7b1675dSTing-Kang Chang        ":hybrid_decrypt_wrapper",
36*e7b1675dSTing-Kang Chang        ":hybrid_encrypt_wrapper",
37*e7b1675dSTing-Kang Chang        "//:registry",
38*e7b1675dSTing-Kang Chang        "//aead:aead_config",
39*e7b1675dSTing-Kang Chang        "//config:tink_fips",
40*e7b1675dSTing-Kang Chang        "//hybrid/internal:hpke_private_key_manager",
41*e7b1675dSTing-Kang Chang        "//hybrid/internal:hpke_public_key_manager",
42*e7b1675dSTing-Kang Chang        "//util:status",
43*e7b1675dSTing-Kang Chang    ],
44*e7b1675dSTing-Kang Chang)
45*e7b1675dSTing-Kang Chang
46*e7b1675dSTing-Kang Changcc_library(
47*e7b1675dSTing-Kang Chang    name = "hybrid_decrypt_wrapper",
48*e7b1675dSTing-Kang Chang    srcs = ["hybrid_decrypt_wrapper.cc"],
49*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_decrypt_wrapper.h"],
50*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
51*e7b1675dSTing-Kang Chang    visibility = ["//visibility:public"],
52*e7b1675dSTing-Kang Chang    deps = [
53*e7b1675dSTing-Kang Chang        "//:crypto_format",
54*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
55*e7b1675dSTing-Kang Chang        "//:primitive_set",
56*e7b1675dSTing-Kang Chang        "//:primitive_wrapper",
57*e7b1675dSTing-Kang Chang        "//internal:monitoring_util",
58*e7b1675dSTing-Kang Chang        "//internal:registry_impl",
59*e7b1675dSTing-Kang Chang        "//internal:util",
60*e7b1675dSTing-Kang Chang        "//monitoring",
61*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
62*e7b1675dSTing-Kang Chang        "//util:status",
63*e7b1675dSTing-Kang Chang        "//util:statusor",
64*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
65*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
66*e7b1675dSTing-Kang Chang    ],
67*e7b1675dSTing-Kang Chang)
68*e7b1675dSTing-Kang Chang
69*e7b1675dSTing-Kang Changcc_library(
70*e7b1675dSTing-Kang Chang    name = "hybrid_encrypt_wrapper",
71*e7b1675dSTing-Kang Chang    srcs = ["hybrid_encrypt_wrapper.cc"],
72*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_encrypt_wrapper.h"],
73*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
74*e7b1675dSTing-Kang Chang    visibility = ["//visibility:public"],
75*e7b1675dSTing-Kang Chang    deps = [
76*e7b1675dSTing-Kang Chang        "//:crypto_format",
77*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
78*e7b1675dSTing-Kang Chang        "//:primitive_set",
79*e7b1675dSTing-Kang Chang        "//:primitive_wrapper",
80*e7b1675dSTing-Kang Chang        "//internal:monitoring_util",
81*e7b1675dSTing-Kang Chang        "//internal:registry_impl",
82*e7b1675dSTing-Kang Chang        "//internal:util",
83*e7b1675dSTing-Kang Chang        "//monitoring",
84*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
85*e7b1675dSTing-Kang Chang        "//util:status",
86*e7b1675dSTing-Kang Chang        "//util:statusor",
87*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
88*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
89*e7b1675dSTing-Kang Chang    ],
90*e7b1675dSTing-Kang Chang)
91*e7b1675dSTing-Kang Chang
92*e7b1675dSTing-Kang Changcc_library(
93*e7b1675dSTing-Kang Chang    name = "hybrid_decrypt_factory",
94*e7b1675dSTing-Kang Chang    srcs = ["hybrid_decrypt_factory.cc"],
95*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_decrypt_factory.h"],
96*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
97*e7b1675dSTing-Kang Chang    deps = [
98*e7b1675dSTing-Kang Chang        ":hybrid_decrypt_wrapper",
99*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
100*e7b1675dSTing-Kang Chang        "//:key_manager",
101*e7b1675dSTing-Kang Chang        "//:keyset_handle",
102*e7b1675dSTing-Kang Chang        "//:registry",
103*e7b1675dSTing-Kang Chang        "//util:status",
104*e7b1675dSTing-Kang Chang        "//util:statusor",
105*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/base:core_headers",
106*e7b1675dSTing-Kang Chang    ],
107*e7b1675dSTing-Kang Chang)
108*e7b1675dSTing-Kang Chang
109*e7b1675dSTing-Kang Changcc_library(
110*e7b1675dSTing-Kang Chang    name = "hybrid_encrypt_factory",
111*e7b1675dSTing-Kang Chang    srcs = ["hybrid_encrypt_factory.cc"],
112*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_encrypt_factory.h"],
113*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
114*e7b1675dSTing-Kang Chang    deps = [
115*e7b1675dSTing-Kang Chang        ":hybrid_encrypt_wrapper",
116*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
117*e7b1675dSTing-Kang Chang        "//:key_manager",
118*e7b1675dSTing-Kang Chang        "//:keyset_handle",
119*e7b1675dSTing-Kang Chang        "//:registry",
120*e7b1675dSTing-Kang Chang        "//util:status",
121*e7b1675dSTing-Kang Chang        "//util:statusor",
122*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/base:core_headers",
123*e7b1675dSTing-Kang Chang    ],
124*e7b1675dSTing-Kang Chang)
125*e7b1675dSTing-Kang Chang
126*e7b1675dSTing-Kang Changcc_library(
127*e7b1675dSTing-Kang Chang    name = "hybrid_key_templates",
128*e7b1675dSTing-Kang Chang    srcs = ["hybrid_key_templates.cc"],
129*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_key_templates.h"],
130*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
131*e7b1675dSTing-Kang Chang    visibility = ["//visibility:public"],
132*e7b1675dSTing-Kang Chang    deps = [
133*e7b1675dSTing-Kang Chang        "//aead:aead_key_templates",
134*e7b1675dSTing-Kang Chang        "//daead:deterministic_aead_key_templates",
135*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
136*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
137*e7b1675dSTing-Kang Chang        "//proto:hpke_cc_proto",
138*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
139*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
140*e7b1675dSTing-Kang Chang    ],
141*e7b1675dSTing-Kang Chang)
142*e7b1675dSTing-Kang Chang
143*e7b1675dSTing-Kang Changcc_library(
144*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_dem_helper",
145*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_dem_helper.cc"],
146*e7b1675dSTing-Kang Chang    hdrs = ["ecies_aead_hkdf_dem_helper.h"],
147*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
148*e7b1675dSTing-Kang Chang    visibility = ["//visibility:private"],
149*e7b1675dSTing-Kang Chang    deps = [
150*e7b1675dSTing-Kang Chang        "//:aead",
151*e7b1675dSTing-Kang Chang        "//:deterministic_aead",
152*e7b1675dSTing-Kang Chang        "//aead:aes_ctr_hmac_aead_key_manager",
153*e7b1675dSTing-Kang Chang        "//daead/subtle:aead_or_daead",
154*e7b1675dSTing-Kang Chang        "//proto:aes_ctr_cc_proto",
155*e7b1675dSTing-Kang Chang        "//proto:aes_ctr_hmac_aead_cc_proto",
156*e7b1675dSTing-Kang Chang        "//proto:aes_gcm_cc_proto",
157*e7b1675dSTing-Kang Chang        "//proto:aes_siv_cc_proto",
158*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
159*e7b1675dSTing-Kang Chang        "//proto:hmac_cc_proto",
160*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
161*e7b1675dSTing-Kang Chang        "//proto:xchacha20_poly1305_cc_proto",
162*e7b1675dSTing-Kang Chang        "//subtle:aes_gcm_boringssl",
163*e7b1675dSTing-Kang Chang        "//subtle:aes_siv_boringssl",
164*e7b1675dSTing-Kang Chang        "//subtle:xchacha20_poly1305_boringssl",
165*e7b1675dSTing-Kang Chang        "//util:errors",
166*e7b1675dSTing-Kang Chang        "//util:protobuf_helper",
167*e7b1675dSTing-Kang Chang        "//util:secret_data",
168*e7b1675dSTing-Kang Chang        "//util:statusor",
169*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
170*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
171*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status:statusor",
172*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
173*e7b1675dSTing-Kang Chang    ],
174*e7b1675dSTing-Kang Chang)
175*e7b1675dSTing-Kang Chang
176*e7b1675dSTing-Kang Changcc_library(
177*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_hybrid_decrypt",
178*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_hybrid_decrypt.cc"],
179*e7b1675dSTing-Kang Chang    hdrs = ["ecies_aead_hkdf_hybrid_decrypt.h"],
180*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
181*e7b1675dSTing-Kang Chang    visibility = ["//visibility:private"],
182*e7b1675dSTing-Kang Chang    deps = [
183*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_dem_helper",
184*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
185*e7b1675dSTing-Kang Chang        "//internal:ec_util",
186*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
187*e7b1675dSTing-Kang Chang        "//subtle:ecies_hkdf_recipient_kem_boringssl",
188*e7b1675dSTing-Kang Chang        "//util:enums",
189*e7b1675dSTing-Kang Chang        "//util:secret_data",
190*e7b1675dSTing-Kang Chang        "//util:status",
191*e7b1675dSTing-Kang Chang        "//util:statusor",
192*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
193*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
194*e7b1675dSTing-Kang Chang    ],
195*e7b1675dSTing-Kang Chang)
196*e7b1675dSTing-Kang Chang
197*e7b1675dSTing-Kang Changcc_library(
198*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_hybrid_encrypt",
199*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_hybrid_encrypt.cc"],
200*e7b1675dSTing-Kang Chang    hdrs = ["ecies_aead_hkdf_hybrid_encrypt.h"],
201*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
202*e7b1675dSTing-Kang Chang    visibility = ["//visibility:private"],
203*e7b1675dSTing-Kang Chang    deps = [
204*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_dem_helper",
205*e7b1675dSTing-Kang Chang        "//:aead",
206*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
207*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
208*e7b1675dSTing-Kang Chang        "//subtle:ecies_hkdf_sender_kem_boringssl",
209*e7b1675dSTing-Kang Chang        "//util:enums",
210*e7b1675dSTing-Kang Chang        "//util:status",
211*e7b1675dSTing-Kang Chang        "//util:statusor",
212*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
213*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
214*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
215*e7b1675dSTing-Kang Chang    ],
216*e7b1675dSTing-Kang Chang)
217*e7b1675dSTing-Kang Chang
218*e7b1675dSTing-Kang Changcc_library(
219*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_private_key_manager",
220*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_private_key_manager.cc"],
221*e7b1675dSTing-Kang Chang    hdrs = ["ecies_aead_hkdf_private_key_manager.h"],
222*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
223*e7b1675dSTing-Kang Chang    deps = [
224*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_hybrid_decrypt",
225*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_public_key_manager",
226*e7b1675dSTing-Kang Chang        "//:core/key_type_manager",
227*e7b1675dSTing-Kang Chang        "//:core/private_key_type_manager",
228*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
229*e7b1675dSTing-Kang Chang        "//:key_manager",
230*e7b1675dSTing-Kang Chang        "//internal:ec_util",
231*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
232*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
233*e7b1675dSTing-Kang Chang        "//util:constants",
234*e7b1675dSTing-Kang Chang        "//util:enums",
235*e7b1675dSTing-Kang Chang        "//util:errors",
236*e7b1675dSTing-Kang Chang        "//util:protobuf_helper",
237*e7b1675dSTing-Kang Chang        "//util:secret_data",
238*e7b1675dSTing-Kang Chang        "//util:status",
239*e7b1675dSTing-Kang Chang        "//util:statusor",
240*e7b1675dSTing-Kang Chang        "//util:validation",
241*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
242*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
243*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
244*e7b1675dSTing-Kang Chang    ],
245*e7b1675dSTing-Kang Chang)
246*e7b1675dSTing-Kang Chang
247*e7b1675dSTing-Kang Changcc_library(
248*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_public_key_manager",
249*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_public_key_manager.cc"],
250*e7b1675dSTing-Kang Chang    hdrs = ["ecies_aead_hkdf_public_key_manager.h"],
251*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
252*e7b1675dSTing-Kang Chang    deps = [
253*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_hybrid_encrypt",
254*e7b1675dSTing-Kang Chang        "//:core/key_type_manager",
255*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
256*e7b1675dSTing-Kang Chang        "//:key_manager",
257*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
258*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
259*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
260*e7b1675dSTing-Kang Chang        "//util:constants",
261*e7b1675dSTing-Kang Chang        "//util:errors",
262*e7b1675dSTing-Kang Chang        "//util:protobuf_helper",
263*e7b1675dSTing-Kang Chang        "//util:status",
264*e7b1675dSTing-Kang Chang        "//util:statusor",
265*e7b1675dSTing-Kang Chang        "//util:validation",
266*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
267*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
268*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
269*e7b1675dSTing-Kang Chang    ],
270*e7b1675dSTing-Kang Chang)
271*e7b1675dSTing-Kang Chang
272*e7b1675dSTing-Kang Changcc_library(
273*e7b1675dSTing-Kang Chang    name = "failing_hybrid",
274*e7b1675dSTing-Kang Chang    srcs = ["failing_hybrid.cc"],
275*e7b1675dSTing-Kang Chang    hdrs = ["failing_hybrid.h"],
276*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
277*e7b1675dSTing-Kang Chang    deps = [
278*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
279*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
280*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
281*e7b1675dSTing-Kang Chang    ],
282*e7b1675dSTing-Kang Chang)
283*e7b1675dSTing-Kang Chang
284*e7b1675dSTing-Kang Changcc_library(
285*e7b1675dSTing-Kang Chang    name = "hybrid_parameters",
286*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_parameters.h"],
287*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
288*e7b1675dSTing-Kang Chang    deps = ["//:parameters"],
289*e7b1675dSTing-Kang Chang)
290*e7b1675dSTing-Kang Chang
291*e7b1675dSTing-Kang Changcc_library(
292*e7b1675dSTing-Kang Chang    name = "hybrid_public_key",
293*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_public_key.h"],
294*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
295*e7b1675dSTing-Kang Chang    deps = [
296*e7b1675dSTing-Kang Chang        ":hybrid_parameters",
297*e7b1675dSTing-Kang Chang        "//:key",
298*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
299*e7b1675dSTing-Kang Chang    ],
300*e7b1675dSTing-Kang Chang)
301*e7b1675dSTing-Kang Chang
302*e7b1675dSTing-Kang Changcc_library(
303*e7b1675dSTing-Kang Chang    name = "hybrid_private_key",
304*e7b1675dSTing-Kang Chang    hdrs = ["hybrid_private_key.h"],
305*e7b1675dSTing-Kang Chang    include_prefix = "tink/hybrid",
306*e7b1675dSTing-Kang Chang    deps = [
307*e7b1675dSTing-Kang Chang        ":hybrid_parameters",
308*e7b1675dSTing-Kang Chang        ":hybrid_public_key",
309*e7b1675dSTing-Kang Chang        "//:key",
310*e7b1675dSTing-Kang Chang        "//:private_key",
311*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
312*e7b1675dSTing-Kang Chang    ],
313*e7b1675dSTing-Kang Chang)
314*e7b1675dSTing-Kang Chang
315*e7b1675dSTing-Kang Chang# tests
316*e7b1675dSTing-Kang Chang
317*e7b1675dSTing-Kang Changcc_test(
318*e7b1675dSTing-Kang Chang    name = "hybrid_config_test",
319*e7b1675dSTing-Kang Chang    size = "small",
320*e7b1675dSTing-Kang Chang    srcs = ["hybrid_config_test.cc"],
321*e7b1675dSTing-Kang Chang    tags = ["fips"],
322*e7b1675dSTing-Kang Chang    deps = [
323*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_private_key_manager",
324*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_public_key_manager",
325*e7b1675dSTing-Kang Chang        ":hybrid_config",
326*e7b1675dSTing-Kang Chang        ":hybrid_key_templates",
327*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
328*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
329*e7b1675dSTing-Kang Chang        "//:keyset_handle",
330*e7b1675dSTing-Kang Chang        "//:registry",
331*e7b1675dSTing-Kang Chang        "//internal:fips_utils",
332*e7b1675dSTing-Kang Chang        "//util:status",
333*e7b1675dSTing-Kang Chang        "//util:test_matchers",
334*e7b1675dSTing-Kang Chang        "//util:test_util",
335*e7b1675dSTing-Kang Chang        "@boringssl//:crypto",
336*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
337*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
338*e7b1675dSTing-Kang Chang    ],
339*e7b1675dSTing-Kang Chang)
340*e7b1675dSTing-Kang Chang
341*e7b1675dSTing-Kang Changcc_test(
342*e7b1675dSTing-Kang Chang    name = "hpke_config_test",
343*e7b1675dSTing-Kang Chang    size = "small",
344*e7b1675dSTing-Kang Chang    srcs = ["hpke_config_test.cc"],
345*e7b1675dSTing-Kang Chang    tags = ["requires_boringcrypto_update"],
346*e7b1675dSTing-Kang Chang    deps = [
347*e7b1675dSTing-Kang Chang        ":hpke_config",
348*e7b1675dSTing-Kang Chang        ":hybrid_key_templates",
349*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
350*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
351*e7b1675dSTing-Kang Chang        "//:keyset_handle",
352*e7b1675dSTing-Kang Chang        "//:registry",
353*e7b1675dSTing-Kang Chang        "//config:tink_fips",
354*e7b1675dSTing-Kang Chang        "//hybrid/internal:hpke_private_key_manager",
355*e7b1675dSTing-Kang Chang        "//hybrid/internal:hpke_public_key_manager",
356*e7b1675dSTing-Kang Chang        "//util:status",
357*e7b1675dSTing-Kang Chang        "//util:test_matchers",
358*e7b1675dSTing-Kang Chang        "//util:test_util",
359*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
360*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
361*e7b1675dSTing-Kang Chang    ],
362*e7b1675dSTing-Kang Chang)
363*e7b1675dSTing-Kang Chang
364*e7b1675dSTing-Kang Changcc_test(
365*e7b1675dSTing-Kang Chang    name = "hybrid_decrypt_wrapper_test",
366*e7b1675dSTing-Kang Chang    size = "small",
367*e7b1675dSTing-Kang Chang    srcs = ["hybrid_decrypt_wrapper_test.cc"],
368*e7b1675dSTing-Kang Chang    deps = [
369*e7b1675dSTing-Kang Chang        ":failing_hybrid",
370*e7b1675dSTing-Kang Chang        ":hybrid_decrypt_wrapper",
371*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
372*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
373*e7b1675dSTing-Kang Chang        "//:primitive_set",
374*e7b1675dSTing-Kang Chang        "//internal:registry_impl",
375*e7b1675dSTing-Kang Chang        "//monitoring",
376*e7b1675dSTing-Kang Chang        "//monitoring:monitoring_client_mocks",
377*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
378*e7b1675dSTing-Kang Chang        "//util:status",
379*e7b1675dSTing-Kang Chang        "//util:test_matchers",
380*e7b1675dSTing-Kang Chang        "//util:test_util",
381*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/strings",
382*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
383*e7b1675dSTing-Kang Chang    ],
384*e7b1675dSTing-Kang Chang)
385*e7b1675dSTing-Kang Chang
386*e7b1675dSTing-Kang Changcc_test(
387*e7b1675dSTing-Kang Chang    name = "hybrid_encrypt_wrapper_test",
388*e7b1675dSTing-Kang Chang    size = "small",
389*e7b1675dSTing-Kang Chang    srcs = ["hybrid_encrypt_wrapper_test.cc"],
390*e7b1675dSTing-Kang Chang    deps = [
391*e7b1675dSTing-Kang Chang        ":failing_hybrid",
392*e7b1675dSTing-Kang Chang        ":hybrid_encrypt_wrapper",
393*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
394*e7b1675dSTing-Kang Chang        "//:primitive_set",
395*e7b1675dSTing-Kang Chang        "//internal:registry_impl",
396*e7b1675dSTing-Kang Chang        "//monitoring",
397*e7b1675dSTing-Kang Chang        "//monitoring:monitoring_client_mocks",
398*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
399*e7b1675dSTing-Kang Chang        "//util:status",
400*e7b1675dSTing-Kang Chang        "//util:test_matchers",
401*e7b1675dSTing-Kang Chang        "//util:test_util",
402*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
403*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
404*e7b1675dSTing-Kang Chang    ],
405*e7b1675dSTing-Kang Chang)
406*e7b1675dSTing-Kang Chang
407*e7b1675dSTing-Kang Changcc_test(
408*e7b1675dSTing-Kang Chang    name = "hybrid_decrypt_factory_test",
409*e7b1675dSTing-Kang Chang    size = "small",
410*e7b1675dSTing-Kang Chang    srcs = ["hybrid_decrypt_factory_test.cc"],
411*e7b1675dSTing-Kang Chang    deps = [
412*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_public_key_manager",
413*e7b1675dSTing-Kang Chang        ":hybrid_config",
414*e7b1675dSTing-Kang Chang        ":hybrid_decrypt_factory",
415*e7b1675dSTing-Kang Chang        "//:crypto_format",
416*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
417*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
418*e7b1675dSTing-Kang Chang        "//:keyset_handle",
419*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
420*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
421*e7b1675dSTing-Kang Chang        "//util:status",
422*e7b1675dSTing-Kang Chang        "//util:test_keyset_handle",
423*e7b1675dSTing-Kang Chang        "//util:test_util",
424*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
425*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
426*e7b1675dSTing-Kang Chang    ],
427*e7b1675dSTing-Kang Chang)
428*e7b1675dSTing-Kang Chang
429*e7b1675dSTing-Kang Changcc_test(
430*e7b1675dSTing-Kang Chang    name = "hybrid_encrypt_factory_test",
431*e7b1675dSTing-Kang Chang    size = "small",
432*e7b1675dSTing-Kang Chang    srcs = ["hybrid_encrypt_factory_test.cc"],
433*e7b1675dSTing-Kang Chang    deps = [
434*e7b1675dSTing-Kang Chang        ":hybrid_config",
435*e7b1675dSTing-Kang Chang        ":hybrid_encrypt_factory",
436*e7b1675dSTing-Kang Chang        "//:crypto_format",
437*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
438*e7b1675dSTing-Kang Chang        "//:keyset_handle",
439*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
440*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
441*e7b1675dSTing-Kang Chang        "//util:status",
442*e7b1675dSTing-Kang Chang        "//util:test_keyset_handle",
443*e7b1675dSTing-Kang Chang        "//util:test_util",
444*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
445*e7b1675dSTing-Kang Chang    ],
446*e7b1675dSTing-Kang Chang)
447*e7b1675dSTing-Kang Chang
448*e7b1675dSTing-Kang Changcc_test(
449*e7b1675dSTing-Kang Chang    name = "hybrid_key_templates_test",
450*e7b1675dSTing-Kang Chang    size = "small",
451*e7b1675dSTing-Kang Chang    srcs = ["hybrid_key_templates_test.cc"],
452*e7b1675dSTing-Kang Chang    deps = [
453*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_private_key_manager",
454*e7b1675dSTing-Kang Chang        ":hybrid_config",
455*e7b1675dSTing-Kang Chang        ":hybrid_key_templates",
456*e7b1675dSTing-Kang Chang        "//aead:aead_key_templates",
457*e7b1675dSTing-Kang Chang        "//daead:deterministic_aead_key_templates",
458*e7b1675dSTing-Kang Chang        "//hybrid/internal:hpke_private_key_manager",
459*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
460*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
461*e7b1675dSTing-Kang Chang        "//proto:hpke_cc_proto",
462*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
463*e7b1675dSTing-Kang Chang        "//util:test_matchers",
464*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
465*e7b1675dSTing-Kang Chang    ],
466*e7b1675dSTing-Kang Chang)
467*e7b1675dSTing-Kang Chang
468*e7b1675dSTing-Kang Changcc_test(
469*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_dem_helper_test",
470*e7b1675dSTing-Kang Chang    size = "small",
471*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_dem_helper_test.cc"],
472*e7b1675dSTing-Kang Chang    deps = [
473*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_dem_helper",
474*e7b1675dSTing-Kang Chang        "//aead:aes_gcm_key_manager",
475*e7b1675dSTing-Kang Chang        "//daead:aes_siv_key_manager",
476*e7b1675dSTing-Kang Chang        "//util:secret_data",
477*e7b1675dSTing-Kang Chang        "//util:test_matchers",
478*e7b1675dSTing-Kang Chang        "//util:test_util",
479*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
480*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
481*e7b1675dSTing-Kang Chang    ],
482*e7b1675dSTing-Kang Chang)
483*e7b1675dSTing-Kang Chang
484*e7b1675dSTing-Kang Changcc_test(
485*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_hybrid_decrypt_test",
486*e7b1675dSTing-Kang Chang    size = "large",
487*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_hybrid_decrypt_test.cc"],
488*e7b1675dSTing-Kang Chang    deps = [
489*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_hybrid_decrypt",
490*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_hybrid_encrypt",
491*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
492*e7b1675dSTing-Kang Chang        "//aead:aes_ctr_hmac_aead_key_manager",
493*e7b1675dSTing-Kang Chang        "//aead:aes_gcm_key_manager",
494*e7b1675dSTing-Kang Chang        "//aead:xchacha20_poly1305_key_manager",
495*e7b1675dSTing-Kang Chang        "//daead:aes_siv_key_manager",
496*e7b1675dSTing-Kang Chang        "//internal:ec_util",
497*e7b1675dSTing-Kang Chang        "//internal:ssl_util",
498*e7b1675dSTing-Kang Chang        "//proto:aes_gcm_cc_proto",
499*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
500*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
501*e7b1675dSTing-Kang Chang        "//subtle:random",
502*e7b1675dSTing-Kang Chang        "//util:enums",
503*e7b1675dSTing-Kang Chang        "//util:statusor",
504*e7b1675dSTing-Kang Chang        "//util:test_matchers",
505*e7b1675dSTing-Kang Chang        "//util:test_util",
506*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
507*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
508*e7b1675dSTing-Kang Chang    ],
509*e7b1675dSTing-Kang Chang)
510*e7b1675dSTing-Kang Chang
511*e7b1675dSTing-Kang Changcc_test(
512*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_hybrid_encrypt_test",
513*e7b1675dSTing-Kang Chang    size = "small",
514*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_hybrid_encrypt_test.cc"],
515*e7b1675dSTing-Kang Chang    deps = [
516*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_hybrid_encrypt",
517*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
518*e7b1675dSTing-Kang Chang        "//aead:aes_gcm_key_manager",
519*e7b1675dSTing-Kang Chang        "//internal:ec_util",
520*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
521*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
522*e7b1675dSTing-Kang Chang        "//util:enums",
523*e7b1675dSTing-Kang Chang        "//util:statusor",
524*e7b1675dSTing-Kang Chang        "//util:test_util",
525*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/memory",
526*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
527*e7b1675dSTing-Kang Chang    ],
528*e7b1675dSTing-Kang Chang)
529*e7b1675dSTing-Kang Chang
530*e7b1675dSTing-Kang Changcc_test(
531*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_private_key_manager_test",
532*e7b1675dSTing-Kang Chang    size = "small",
533*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_private_key_manager_test.cc"],
534*e7b1675dSTing-Kang Chang    deps = [
535*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_private_key_manager",
536*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_public_key_manager",
537*e7b1675dSTing-Kang Chang        ":hybrid_key_templates",
538*e7b1675dSTing-Kang Chang        "//:hybrid_decrypt",
539*e7b1675dSTing-Kang Chang        "//:registry",
540*e7b1675dSTing-Kang Chang        "//aead:aead_key_templates",
541*e7b1675dSTing-Kang Chang        "//aead:aes_ctr_hmac_aead_key_manager",
542*e7b1675dSTing-Kang Chang        "//aead:aes_gcm_key_manager",
543*e7b1675dSTing-Kang Chang        "//proto:aes_eax_cc_proto",
544*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
545*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
546*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
547*e7b1675dSTing-Kang Chang        "//subtle:hybrid_test_util",
548*e7b1675dSTing-Kang Chang        "//util:status",
549*e7b1675dSTing-Kang Chang        "//util:statusor",
550*e7b1675dSTing-Kang Chang        "//util:test_matchers",
551*e7b1675dSTing-Kang Chang        "//util:test_util",
552*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
553*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
554*e7b1675dSTing-Kang Chang    ],
555*e7b1675dSTing-Kang Chang)
556*e7b1675dSTing-Kang Chang
557*e7b1675dSTing-Kang Changcc_test(
558*e7b1675dSTing-Kang Chang    name = "ecies_aead_hkdf_public_key_manager_test",
559*e7b1675dSTing-Kang Chang    size = "small",
560*e7b1675dSTing-Kang Chang    srcs = ["ecies_aead_hkdf_public_key_manager_test.cc"],
561*e7b1675dSTing-Kang Chang    deps = [
562*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_private_key_manager",
563*e7b1675dSTing-Kang Chang        ":ecies_aead_hkdf_public_key_manager",
564*e7b1675dSTing-Kang Chang        "//:hybrid_encrypt",
565*e7b1675dSTing-Kang Chang        "//:registry",
566*e7b1675dSTing-Kang Chang        "//aead:aead_key_templates",
567*e7b1675dSTing-Kang Chang        "//aead:aes_gcm_key_manager",
568*e7b1675dSTing-Kang Chang        "//proto:aes_eax_cc_proto",
569*e7b1675dSTing-Kang Chang        "//proto:common_cc_proto",
570*e7b1675dSTing-Kang Chang        "//proto:ecies_aead_hkdf_cc_proto",
571*e7b1675dSTing-Kang Chang        "//proto:tink_cc_proto",
572*e7b1675dSTing-Kang Chang        "//util:status",
573*e7b1675dSTing-Kang Chang        "//util:statusor",
574*e7b1675dSTing-Kang Chang        "//util:test_matchers",
575*e7b1675dSTing-Kang Chang        "//util:test_util",
576*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
577*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
578*e7b1675dSTing-Kang Chang    ],
579*e7b1675dSTing-Kang Chang)
580*e7b1675dSTing-Kang Chang
581*e7b1675dSTing-Kang Changcc_test(
582*e7b1675dSTing-Kang Chang    name = "failing_hybrid_test",
583*e7b1675dSTing-Kang Chang    srcs = ["failing_hybrid_test.cc"],
584*e7b1675dSTing-Kang Chang    deps = [
585*e7b1675dSTing-Kang Chang        ":failing_hybrid",
586*e7b1675dSTing-Kang Chang        "//util:test_matchers",
587*e7b1675dSTing-Kang Chang        "@com_google_absl//absl/status",
588*e7b1675dSTing-Kang Chang        "@com_google_googletest//:gtest_main",
589*e7b1675dSTing-Kang Chang    ],
590*e7b1675dSTing-Kang Chang)
591