| # package containing subtle implementations of PQC primitives |
| |
| package(default_visibility = ["//:__subpackages__"]) |
| |
| licenses(["notice"]) |
| |
| cc_library( |
| name = "cecpq2_hkdf_sender_kem_boringssl", |
| srcs = ["cecpq2_hkdf_sender_kem_boringssl.cc"], |
| hdrs = ["cecpq2_hkdf_sender_kem_boringssl.h"], |
| include_prefix = "tink/experimental/pqcrypto/kem/subtle", |
| visibility = ["//visibility:public"], |
| deps = [ |
| "//internal:fips_utils", |
| "//subtle", |
| "//subtle:common_enums", |
| "//subtle:hkdf", |
| "//subtle:random", |
| "//subtle:subtle_util", |
| "//util:secret_data", |
| "//util:statusor", |
| "@boringssl//:crypto", |
| "@com_google_absl//absl/memory", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "cecpq2_hkdf_recipient_kem_boringssl", |
| srcs = ["cecpq2_hkdf_recipient_kem_boringssl.cc"], |
| hdrs = ["cecpq2_hkdf_recipient_kem_boringssl.h"], |
| include_prefix = "tink/experimental/pqcrypto/kem/subtle", |
| visibility = ["//visibility:public"], |
| deps = [ |
| ":cecpq2_hkdf_sender_kem_boringssl", |
| "//internal:fips_utils", |
| "//subtle", |
| "//subtle:common_enums", |
| "//subtle:hkdf", |
| "//util:errors", |
| "//util:secret_data", |
| "//util:statusor", |
| "@boringssl//:crypto", |
| "@com_google_absl//absl/memory", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "cecpq2_subtle_boringssl_util", |
| srcs = ["cecpq2_subtle_boringssl_util.cc"], |
| hdrs = ["cecpq2_subtle_boringssl_util.h"], |
| include_prefix = "tink/experimental/pqcrypto/kem/subtle", |
| visibility = ["//visibility:public"], |
| deps = [ |
| "//subtle", |
| "//subtle:subtle_util", |
| "//util:secret_data", |
| "//util:statusor", |
| "@boringssl//:crypto", |
| ], |
| ) |
| |
| cc_library( |
| name = "cecpq2_aead_hkdf_hybrid_decrypt", |
| srcs = ["cecpq2_aead_hkdf_hybrid_decrypt.cc"], |
| hdrs = ["cecpq2_aead_hkdf_hybrid_decrypt.h"], |
| include_prefix = "tink/experimental/pqcrypto/kem/subtle", |
| visibility = ["//visibility:public"], |
| deps = [ |
| "//:hybrid_decrypt", |
| "//experimental/pqcrypto/kem:cecpq2_aead_hkdf_dem_helper", |
| "//experimental/pqcrypto/kem/subtle:cecpq2_hkdf_recipient_kem_boringssl", |
| "//experimental/pqcrypto/kem/subtle:cecpq2_subtle_boringssl_util", |
| "//experimental/pqcrypto/proto:cecpq2_aead_hkdf_cc_proto", |
| "//subtle:ec_util", |
| "//util:enums", |
| "//util:secret_data", |
| "//util:status", |
| "//util:statusor", |
| "@boringssl//:crypto", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| cc_library( |
| name = "cecpq2_aead_hkdf_hybrid_encrypt", |
| srcs = ["cecpq2_aead_hkdf_hybrid_encrypt.cc"], |
| hdrs = ["cecpq2_aead_hkdf_hybrid_encrypt.h"], |
| include_prefix = "tink/experimental/pqcrypto/kem/subtle", |
| visibility = ["//visibility:public"], |
| deps = [ |
| "//:aead", |
| "//:hybrid_encrypt", |
| "//experimental/pqcrypto/kem:cecpq2_aead_hkdf_dem_helper", |
| "//experimental/pqcrypto/kem/subtle:cecpq2_hkdf_sender_kem_boringssl", |
| "//experimental/pqcrypto/kem/subtle:cecpq2_subtle_boringssl_util", |
| "//experimental/pqcrypto/proto:cecpq2_aead_hkdf_cc_proto", |
| "//util:enums", |
| "//util:status", |
| "//util:statusor", |
| "@com_google_absl//absl/status", |
| "@com_google_absl//absl/strings", |
| ], |
| ) |
| |
| #tests |
| |
| cc_test( |
| name = "cecpq2_hkdf_sender_kem_boringssl_test", |
| srcs = ["cecpq2_hkdf_sender_kem_boringssl_test.cc"], |
| deps = [ |
| ":cecpq2_hkdf_recipient_kem_boringssl", |
| ":cecpq2_hkdf_sender_kem_boringssl", |
| ":cecpq2_subtle_boringssl_util", |
| "//config:tink_fips", |
| "//subtle", |
| "//subtle:common_enums", |
| "//subtle:hkdf", |
| "//subtle:random", |
| "//subtle:subtle_util", |
| "//util:secret_data", |
| "//util:status", |
| "//util:statusor", |
| "//util:test_matchers", |
| "//util:test_util", |
| "@boringssl//:crypto", |
| "@com_google_absl//absl/memory", |
| "@com_google_absl//absl/status", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "cecpq2_hkdf_recipient_kem_boringssl_test", |
| srcs = ["cecpq2_hkdf_recipient_kem_boringssl_test.cc"], |
| deps = [ |
| ":cecpq2_hkdf_recipient_kem_boringssl", |
| "//config:tink_fips", |
| "//subtle:random", |
| "//util:test_matchers", |
| "//util:test_util", |
| "@boringssl//:crypto", |
| "@com_google_absl//absl/status", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "cecpq2_subtle_boringssl_util_test", |
| srcs = ["cecpq2_subtle_boringssl_util_test.cc"], |
| deps = [ |
| ":cecpq2_subtle_boringssl_util", |
| "//subtle:random", |
| "//subtle:subtle_util", |
| "//util:secret_data", |
| "//util:test_matchers", |
| "//util:test_util", |
| "@boringssl//:crypto", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "cecpq2_aead_hkdf_hybrid_encrypt_test", |
| size = "small", |
| srcs = ["cecpq2_aead_hkdf_hybrid_encrypt_test.cc"], |
| copts = ["-Iexternal/gtest/include"], |
| deps = [ |
| ":cecpq2_aead_hkdf_hybrid_encrypt", |
| "//:hybrid_encrypt", |
| "//aead:aes_gcm_key_manager", |
| "//experimental/pqcrypto/kem/subtle:cecpq2_subtle_boringssl_util", |
| "//experimental/pqcrypto/kem/util:test_util", |
| "//subtle:random", |
| "//subtle:subtle_util", |
| "//util:enums", |
| "//util:statusor", |
| "//util:test_matchers", |
| "//util:test_util", |
| "@boringssl//:crypto", |
| "@com_google_absl//absl/status", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |
| |
| cc_test( |
| name = "cecpq2_aead_hkdf_hybrid_decrypt_test", |
| size = "small", |
| srcs = ["cecpq2_aead_hkdf_hybrid_decrypt_test.cc"], |
| copts = ["-Iexternal/gtest/include"], |
| deps = [ |
| ":cecpq2_aead_hkdf_hybrid_decrypt", |
| ":cecpq2_aead_hkdf_hybrid_encrypt", |
| "//:hybrid_encrypt", |
| "//aead:aes_ctr_hmac_aead_key_manager", |
| "//aead:aes_gcm_key_manager", |
| "//aead:xchacha20_poly1305_key_manager", |
| "//config:tink_config", |
| "//experimental/pqcrypto/kem/subtle:cecpq2_subtle_boringssl_util", |
| "//experimental/pqcrypto/kem/util:test_util", |
| "//experimental/pqcrypto/proto:cecpq2_aead_hkdf_cc_proto", |
| "//subtle:random", |
| "//subtle:subtle_util", |
| "//util:enums", |
| "//util:statusor", |
| "//util:test_matchers", |
| "//util:test_util", |
| "@boringssl//:crypto", |
| "@com_google_absl//absl/status", |
| "@com_google_googletest//:gtest_main", |
| ], |
| ) |