esp-open-rtos/examples/atcatool/uart_cmds.h

25 lines
990 B
C
Raw Normal View History

#include <cryptoauthlib.h>
#define MAX_ARGC (10)
#define LOG(...) printf(__VA_ARGS__); printf("\r\n");
#define LOG_SUCCESSFAIL(name, oper) if((oper) == ATCA_SUCCESS) { LOG("%s succeeded!\n", name); } else { LOG("%s failed!", name); }
#define BEGIN_PUB_KEY_CONST "-----BEGIN PUBLIC KEY-----"
#define END_PUB_KEY_CONST "-----END PUBLIC KEY-----"
#define BEGIN_PRIV_KEY_CONST "-----BEGIN EC PRIVATE KEY-----"
#define END_PRIV_KEY_CONST "-----END EC PRIVATE KEY-----"
ATCA_STATUS cmd_pub(uint32_t argc, char *argv[]);
ATCA_STATUS cmd_priv(uint32_t argc, char *argv[]);
ATCA_STATUS cmd_verify(uint32_t argc, char *argv[]);
ATCA_STATUS cmd_ecdh(uint32_t argc, char *argv[]);
// Utility
ATCA_STATUS read_pubkey_stdin(uint8_t *keyOut, int *len);
ATCA_STATUS read_privkey_stdin(uint8_t *keyOut, int *len);
bool prompt_user();
bool parse_asn1_signature(uint8_t *asn1Sig, size_t asn1SigLen, uint8_t signatureRintSintOUT[ATCA_SIG_SIZE]);
void print_b64_pubkey(uint8_t pubkey[ATCA_PUB_KEY_SIZE]);