core/crypto/kat/ecc_kat_vectors.h (49 lines of code) (raw):
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
#ifndef ECC_KAT_VECTORS_H_
#define ECC_KAT_VECTORS_H_
#include <stddef.h>
#include <stdint.h>
#include "signature_verification_kat_vectors.h"
#include "crypto/ecc.h"
/* ECC P-256 */
extern const uint8_t ECC_KAT_VECTORS_P256_ECC_PRIVATE[];
extern const uint8_t ECC_KAT_VECTORS_P256_ECC_PRIVATE_DER[];
extern const size_t ECC_KAT_VECTORS_P256_ECC_PRIVATE_DER_LEN;
extern const struct ecc_point_public_key ECC_KAT_VECTORS_P256_ECC_PUBLIC;
extern const uint8_t ECC_KAT_VECTORS_P256_ECC_PUBLIC_DER[];
extern const size_t ECC_KAT_VECTORS_P256_ECC_PUBLIC_DER_LEN;
/* ECC P-384 */
extern const uint8_t ECC_KAT_VECTORS_P384_ECC_PRIVATE[];
extern const uint8_t ECC_KAT_VECTORS_P384_ECC_PRIVATE_DER[];
extern const size_t ECC_KAT_VECTORS_P384_ECC_PRIVATE_DER_LEN;
extern const struct ecc_point_public_key ECC_KAT_VECTORS_P384_ECC_PUBLIC;
extern const uint8_t ECC_KAT_VECTORS_P384_ECC_PUBLIC_DER[];
extern const size_t ECC_KAT_VECTORS_P384_ECC_PUBLIC_DER_LEN;
/* ECC P-521 */
extern const uint8_t ECC_KAT_VECTORS_P521_ECC_PRIVATE[];
extern const uint8_t ECC_KAT_VECTORS_P521_ECC_PRIVATE_DER[];
extern const size_t ECC_KAT_VECTORS_P521_ECC_PRIVATE_DER_LEN;
extern const struct ecc_point_public_key ECC_KAT_VECTORS_P521_ECC_PUBLIC;
extern const uint8_t ECC_KAT_VECTORS_P521_ECC_PUBLIC_DER[];
extern const size_t ECC_KAT_VECTORS_P521_ECC_PUBLIC_DER_LEN;
/* ECDSA */
#define ECC_KAT_VECTORS_ECDSA_SIGNED SIGNATURE_VERIFICATION_KAT_VECTORS_SIGNED
#define ECC_KAT_VECTORS_ECDSA_SIGNED_LEN SIGNATURE_VERIFICATION_KAT_VECTORS_SIGNED_LEN
#define ECC_KAT_VECTORS_ECDSA_SHA256_DIGEST SIGNATURE_VERIFICATION_KAT_VECTORS_SHA256_DIGEST
#define ECC_KAT_VECTORS_ECDSA_SHA384_DIGEST SIGNATURE_VERIFICATION_KAT_VECTORS_SHA384_DIGEST
#define ECC_KAT_VECTORS_ECDSA_SHA512_DIGEST SIGNATURE_VERIFICATION_KAT_VECTORS_SHA512_DIGEST
extern const uint8_t ECC_KAT_VECTORS_P256_SHA256_ECDSA_K[];
extern const struct ecc_ecdsa_signature ECC_KAT_VECTORS_P256_SHA256_ECDSA_SIGNATURE;
extern const uint8_t ECC_KAT_VECTORS_P256_SHA256_ECDSA_SIGNATURE_RAW[];
extern const size_t ECC_KAT_VECTORS_P256_SHA256_ECDSA_SIGNATURE_RAW_LEN;
extern const uint8_t ECC_KAT_VECTORS_P256_SHA256_ECDSA_SIGNATURE_DER[];
extern const size_t ECC_KAT_VECTORS_P256_SHA256_ECDSA_SIGNATURE_DER_LEN;
extern const uint8_t ECC_KAT_VECTORS_P384_SHA384_ECDSA_K[];
extern const struct ecc_ecdsa_signature ECC_KAT_VECTORS_P384_SHA384_ECDSA_SIGNATURE;
extern const uint8_t ECC_KAT_VECTORS_P384_SHA384_ECDSA_SIGNATURE_RAW[];
extern const size_t ECC_KAT_VECTORS_P384_SHA384_ECDSA_SIGNATURE_RAW_LEN;
extern const uint8_t ECC_KAT_VECTORS_P384_SHA384_ECDSA_SIGNATURE_DER[];
extern const size_t ECC_KAT_VECTORS_P384_SHA384_ECDSA_SIGNATURE_DER_LEN;
extern const uint8_t ECC_KAT_VECTORS_P521_SHA512_ECDSA_K[];
extern const uint8_t ECC_KAT_VECTORS_P521_SHA512_ECDSA_K_SHIFTED[];
extern const struct ecc_ecdsa_signature ECC_KAT_VECTORS_P521_SHA512_ECDSA_SIGNATURE;
extern const uint8_t ECC_KAT_VECTORS_P521_SHA512_ECDSA_SIGNATURE_RAW[];
extern const size_t ECC_KAT_VECTORS_P521_SHA512_ECDSA_SIGNATURE_RAW_LEN;
extern const uint8_t ECC_KAT_VECTORS_P521_SHA512_ECDSA_SIGNATURE_DER[];
extern const size_t ECC_KAT_VECTORS_P521_SHA512_ECDSA_SIGNATURE_DER_LEN;
#endif /* ECC_KAT_VECTORS_H_ */