| ▼ app | |
| ► api_206a | |
| api_206a.c | Provides APIs to use with ATSHA206A device |
| api_206a.h | Provides api interfaces to use with ATSHA206A device |
| ► ip_protection | |
| symmetric_authentication.c | Contains API for performing the symmetric Authentication between the Host and the device |
| symmetric_authentication.h | Contains API for performing the symmetric Authentication between the Host and the device |
| ► kit_host | |
| ascii_kit_host.c | KIT protocol intepreter |
| ascii_kit_host.h | KIT protocol intepreter |
| ► pkcs11 | |
| trust_pkcs11_config.c | PKCS11 Trust Platform Configuration |
| ► secure_boot | |
| io_protection_key.h | Provides required interface to access IO protection key |
| secure_boot.c | Provides required APIs to manage secure boot under various scenarios |
| secure_boot.h | Provides required APIs to manage secure boot under various scenarios |
| secure_boot_memory.h | Provides interface to memory component for the secure boot |
| ► tng | |
| tflxtls_cert_def_4_device.c | TNG TLS device certificate definition |
| tflxtls_cert_def_4_device.h | TNG TLS device certificate definition |
| tng_atca.c | TNG Helper Functions |
| tng_atca.h | TNG Helper Functions |
| tng_atcacert_client.c | Client side certificate I/O functions for TNG devices |
| tng_atcacert_client.h | Client side certificate I/O functions for TNG devices |
| tng_root_cert.c | TNG root certificate (DER) |
| tng_root_cert.h | TNG root certificate (DER) |
| tnglora_cert_def_1_signer.c | TNG LORA signer certificate definition |
| tnglora_cert_def_1_signer.h | TNG LORA signer certificate definition |
| tnglora_cert_def_2_device.c | TNG LORA device certificate definition |
| tnglora_cert_def_2_device.h | TNG LORA device certificate definition |
| tnglora_cert_def_4_device.c | TNG LORA device certificate definition |
| tnglora_cert_def_4_device.h | TNG LORA device certificate definition |
| tngtls_cert_def_1_signer.c | TNG TLS signer certificate definition |
| tngtls_cert_def_1_signer.h | TNG TLS signer certificate definition |
| tngtls_cert_def_2_device.c | TNG TLS device certificate definition |
| tngtls_cert_def_2_device.h | TNG TLS device certificate definition |
| tngtls_cert_def_3_device.c | TNG TLS device certificate definition |
| tngtls_cert_def_3_device.h | TNG TLS device certificate definition |
| ► wpc | |
| wpc_apis.c | Provides api interfaces for WPC authentication |
| wpc_apis.h | Provides api interfaces for WPC authentication |
| wpccert_client.c | Provides api interfaces for accessing WPC certificates from device |
| wpccert_client.h | Provides api interfaces for accessing WPC certificates from device |
| ▼ lib | |
| ► atcacert | |
| atcacert.h | Declarations common to all atcacert code |
| atcacert_check_config.h | Configuration check and defaults for the atcacert module |
| atcacert_client.c | Client side cert i/o methods. These declarations deal with the client-side, the node being authenticated, of the authentication process. It is assumed the client has an ECC CryptoAuthentication device (e.g. ATECC508A) and the certificates are stored on that device |
| atcacert_client.h | Client side cert i/o methods. These declarations deal with the client-side, the node being authenticated, of the authentication process. It is assumed the client has an ECC CryptoAuthentication device (e.g. ATECC508A) and the certificates are stored on that device |
| atcacert_date.c | Date handling with regard to certificates |
| atcacert_date.h | Declarations for date handling with regard to certificates |
| atcacert_def.c | Main certificate definition implementation |
| atcacert_def.h | Declarations for certificates related to ECC CryptoAuthentication devices. These are the definitions required to define a certificate and its various elements with regards to the CryptoAuthentication ECC devices |
| atcacert_der.c | Functions required to work with DER encoded data related to X.509 certificates |
| atcacert_der.h | Function declarations required to work with DER encoded data related to X.509 certificates |
| atcacert_host_hw.c | Host side methods using CryptoAuth hardware |
| atcacert_host_hw.h | Host side methods using CryptoAuth hardware |
| atcacert_host_sw.c | Host side methods using software implementations |
| atcacert_host_sw.h | Host side methods using software implementations. host-side, the one authenticating a client, of the authentication process. Crypto functions are performed using a software library |
| atcacert_pem.c | Functions required to work with PEM encoded data related to X.509 certificates |
| atcacert_pem.h | Functions for converting between DER and PEM formats |
| ► calib | |
| calib_aes.c | CryptoAuthLib Basic API methods for AES command |
| calib_aes_gcm.c | CryptoAuthLib Basic API methods for AES GCM mode |
| calib_aes_gcm.h | Unity tests for the cryptoauthlib AES GCM functions |
| calib_basic.c | CryptoAuthLib Basic API methods. These methods provide a simpler way to access the core crypto methods |
| calib_checkmac.c | CryptoAuthLib Basic API methods for CheckMAC command |
| calib_command.c | Microchip CryptoAuthentication device command builder - this is the main object that builds the command byte strings for the given device. It does not execute the command. The basic flow is to call a command method to build the command you want given the parameters and then send that byte string through the device interface |
| calib_command.h | Microchip Crypto Auth device command object - this is a command builder only, it does not send the command. The result of a command method is a fully formed packet, ready to send to the ATCAIFace object to dispatch |
| calib_config_check.h | Consistency checks for configuration options |
| calib_counter.c | CryptoAuthLib Basic API methods for Counter command |
| calib_delete.c | CryptoAuthLib Basic API methods for Delete command |
| calib_derivekey.c | CryptoAuthLib Basic API methods for DeriveKey command |
| calib_device.h | Microchip Crypto Auth Device Data |
| calib_ecdh.c | CryptoAuthLib Basic API methods for ECDH command |
| calib_execution.c | Implements an execution handler that executes a given command on a device and returns the results |
| calib_execution.h | Defines an execution handler that executes a given command on a device and returns the results |
| calib_gendig.c | CryptoAuthLib Basic API methods for GenDig command |
| calib_genkey.c | CryptoAuthLib Basic API methods for GenKey command |
| calib_helpers.c | CryptoAuthLib Basic API - Helper Functions to |
| calib_hmac.c | CryptoAuthLib Basic API methods for HMAC command |
| calib_info.c | CryptoAuthLib Basic API methods for Info command |
| calib_kdf.c | CryptoAuthLib Basic API methods for KDF command |
| calib_lock.c | CryptoAuthLib Basic API methods for Lock command |
| calib_mac.c | CryptoAuthLib Basic API methods for MAC command |
| calib_nonce.c | CryptoAuthLib Basic API methods for Nonce command |
| calib_packet.c | CryptoAuthLib API for packet allocation |
| calib_packet.h | Defines packet allocation functions |
| calib_privwrite.c | CryptoAuthLib Basic API methods for PrivWrite command |
| calib_random.c | CryptoAuthLib Basic API methods for Random command |
| calib_read.c | CryptoAuthLib Basic API methods for Read command |
| calib_secureboot.c | CryptoAuthLib Basic API methods for SecureBoot command |
| calib_selftest.c | CryptoAuthLib Basic API methods for SelfTest command |
| calib_sha.c | CryptoAuthLib Basic API methods for SHA command |
| calib_sign.c | CryptoAuthLib Basic API methods for Sign command |
| calib_updateextra.c | CryptoAuthLib Basic API methods for UpdateExtra command |
| calib_verify.c | CryptoAuthLib Basic API methods for Verify command |
| calib_write.c | CryptoAuthLib Basic API methods for Write command |
| ► crypto | |
| ► hashes | |
| sha1_routines.c | Software implementation of the SHA1 algorithm |
| sha1_routines.h | Software implementation of the SHA1 algorithm |
| sha2_routines.c | Software implementation of the SHA256, SHA384 and SHA512 algorithm |
| sha2_routines.h | Software implementation of the SHA256, SHA384 and SHA512 algorithm |
| atca_crypto_hw_aes.h | AES CTR, CBC & CMAC structure definitions |
| atca_crypto_hw_aes_cbc.c | CryptoAuthLib Basic API methods for AES CBC mode |
| atca_crypto_hw_aes_cbcmac.c | CryptoAuthLib Basic API methods for AES CBC_MAC mode |
| atca_crypto_hw_aes_ccm.c | CryptoAuthLib Basic API methods for AES CCM mode |
| atca_crypto_hw_aes_cmac.c | CryptoAuthLib Basic API methods for AES CBC_MAC mode |
| atca_crypto_hw_aes_ctr.c | CryptoAuthLib Basic API methods for AES CTR mode |
| atca_crypto_pad.c | Implementation of PKCS7 Padding for block encryption |
| atca_crypto_pbkdf2.c | Implementation of the PBKDF2 algorithm for use in generating password hashes |
| atca_crypto_sw.h | Common defines for CryptoAuthLib software crypto wrappers |
| atca_crypto_sw_aes_cmac.c | Common Wrapper for host side AES-CMAC implementations that feature update APIs rather than an all at once implementation |
| atca_crypto_sw_aes_gcm.c | Common Wrapper for host side AES-GCM implementations that feature update APIs rather than an all at once implementation |
| atca_crypto_sw_sha1.c | Wrapper API for SHA 1 routines |
| atca_crypto_sw_sha1.h | Wrapper API for SHA 1 routines |
| atca_crypto_sw_sha2.c | Wrapper API for software SHA 256 routines |
| atca_crypto_sw_sha2.h | Wrapper API for software SHA 256 routines |
| crypto_hw_config_check.h | Consistency checks for configuration options |
| crypto_sw_config_check.h | Consistency checks for configuration options |
| ► hal | |
| atca_hal.c | Low-level HAL - methods used to setup indirection to physical layer interface. this level does the dirty work of abstracting the higher level ATCAIFace methods from the low-level physical interfaces. Its main goal is to keep low-level details from bleeding into the logical interface implemetation |
| atca_hal.h | Low-level HAL - methods used to setup indirection to physical layer interface |
| hal_all_platforms_kit_hidapi.c | HAL for kit protocol over HID for any platform |
| hal_freertos.c | FreeRTOS Hardware/OS Abstration Layer |
| hal_gpio_harmony.c | ATCA Hardware abstraction layer for GPIO |
| hal_i2c_harmony.c | ATCA Hardware abstraction layer for SAMD21 I2C over Harmony PLIB |
| hal_i2c_start.c | ATCA Hardware abstraction layer for SAMD21 I2C over START drivers |
| hal_i2c_start.h | ATCA Hardware abstraction layer for SAMD21 I2C over START drivers |
| hal_kit_bridge.c | Kit Bridging HAL for cryptoauthlib. This is not intended to be a zero copy driver. It should work with any interface that confirms to a few basic requirements: a) will accept an arbitrary number of bytes and packetize it if necessary for transmission, b) will block for the duration of the transmit |
| hal_kit_bridge.h | Kit Bridging HAL for cryptoauthlib. This is not intended to be a zero copy driver. It should work with any interface that confirms to a few basic requirements: a) will accept an arbitrary number of bytes and packetize it if necessary for transmission, b) will block for the duration of the transmit |
| hal_linux.c | Timer Utility Functions for Linux |
| hal_linux_i2c_userspace.c | ATCA Hardware abstraction layer for Linux using I2C |
| hal_linux_uart_userspace.c | ATCA Hardware abstraction layer for Linux using UART |
| hal_sam0_i2c_asf.c | ATCA Hardware abstraction layer for SAMD21 I2C over ASF drivers |
| hal_sam0_i2c_asf.h | ATCA Hardware abstraction layer for SAMD21 I2C over ASF drivers |
| hal_sam_i2c_asf.c | ATCA Hardware abstraction layer for SAM flexcom & twi I2C over ASF drivers |
| hal_sam_i2c_asf.h | ATCA Hardware abstraction layer for SAMG55 I2C over ASF drivers |
| hal_sam_timer_asf.c | ATCA Hardware abstraction layer for SAMD21 timer/delay over ASF drivers |
| hal_spi_harmony.c | ATCA Hardware abstraction layer for SPI over Harmony PLIB |
| hal_swi_gpio.c | ATCA Hardware abstraction layer for 1WIRE or SWI over GPIO |
| hal_swi_gpio.h | ATCA Hardware abstraction layer for SWI over GPIO drivers |
| hal_swi_uart.c | ATCA Hardware abstraction layer for SWI over UART drivers |
| hal_timer_start.c | ATCA Hardware abstraction layer for SAMD21 I2C over START drivers |
| hal_uart_harmony.c | ATCA Hardware abstraction layer for SWI uart over Harmony PLIB |
| hal_uc3_i2c_asf.c | ATCA Hardware abstraction layer for SAMV71 I2C over ASF drivers |
| hal_uc3_i2c_asf.h | ATCA Hardware abstraction layer for SAMV71 I2C over ASF drivers |
| hal_uc3_timer_asf.c | ATCA Hardware abstraction layer for SAM4S I2C over ASF drivers |
| hal_windows.c | ATCA Hardware abstraction layer for windows timer functions |
| hal_windows_kit_uart.c | ATCA Hardware abstraction layer for Windows using UART |
| kit_protocol.c | Microchip Crypto Auth hardware interface object |
| kit_protocol.h | |
| swi_uart_samd21_asf.c | ATXMEGA's ATCA Hardware abstraction layer for SWI interface over UART drivers |
| swi_uart_samd21_asf.h | ATXMEGA's ATCA Hardware abstraction layer for SWI interface over UART drivers |
| swi_uart_start.c | |
| swi_uart_start.h | |
| ► host | |
| atca_host.c | Host side methods to support CryptoAuth computations |
| atca_host.h | Definitions and Prototypes for ATCA Utility Functions |
| atca_host_config_check.h | Consistency checks for configuration options |
| ► jwt | |
| atca_jwt.c | Utilities to create and verify a JSON Web Token (JWT) |
| atca_jwt.h | Utilities to create and verify a JSON Web Token (JWT) |
| ► mbedtls | |
| atca_mbedtls_interface.h | Configuration Check for MbedTLS Integration Support |
| atca_mbedtls_wrap.c | Wrapper functions to replace cryptoauthlib software crypto functions with the mbedTLS equivalent |
| ► openssl | |
| atca_openssl_interface.c | Crypto abstraction functions for external host side cryptography |
| atca_openssl_interface.h | OpenSSL Integration Support |
| ► pkcs11 | |
| pkcs11_attrib.c | PKCS11 Library Object Attributes Handling |
| pkcs11_attrib.h | PKCS11 Library Object Attribute Handling |
| pkcs11_cert.c | PKCS11 Library Certificate Handling |
| pkcs11_cert.h | PKCS11 Library Certificate Handling |
| pkcs11_config.c | PKCS11 Library Configuration |
| pkcs11_debug.c | PKCS11 Library Debugging |
| pkcs11_debug.h | PKCS11 Library Debugging |
| pkcs11_digest.h | PKCS11 Library Digest (SHA256) Handling |
| pkcs11_encrypt.c | PKCS11 Library Encrypt Support |
| pkcs11_encrypt.h | PKCS11 Library AES Support |
| pkcs11_find.c | PKCS11 Library Object Find/Searching |
| pkcs11_find.h | PKCS11 Library Object Find/Searching |
| pkcs11_info.c | PKCS11 Library Information Functions |
| pkcs11_info.h | PKCS11 Library Information Functions |
| pkcs11_init.c | PKCS11 Library Init/Deinit |
| pkcs11_init.h | PKCS11 Library Initialization & Context |
| pkcs11_key.c | PKCS11 Library Key Object Handling |
| pkcs11_key.h | PKCS11 Library Object Handling |
| pkcs11_main.c | PKCS11 Basic library redirects based on the 2.40 specification docs.oasis-open.org/pkcs11/pkcs11-base/v2.40/os/pkcs11-base-v2.40-os.html |
| pkcs11_mech.c | PKCS11 Library Mechanism Handling |
| pkcs11_mech.h | PKCS11 Library Mechanism Handling |
| pkcs11_object.c | PKCS11 Library Object Handling Base |
| pkcs11_object.h | PKCS11 Library Object Handling |
| pkcs11_os.c | PKCS11 Library Operating System Abstraction Functions |
| pkcs11_os.h | PKCS11 Library Operating System Abstraction |
| pkcs11_session.c | PKCS11 Library Session Handling |
| pkcs11_session.h | PKCS11 Library Session Management & Context |
| pkcs11_signature.c | PKCS11 Library Sign/Verify Handling |
| pkcs11_signature.h | PKCS11 Library Sign/Verify Handling |
| pkcs11_slot.c | PKCS11 Library Slot Handling |
| pkcs11_slot.h | PKCS11 Library Slot Handling & Context |
| pkcs11_token.c | PKCS11 Library Token Handling |
| pkcs11_token.h | PKCS11 Library Token Management & Context |
| pkcs11_util.c | PKCS11 Library Utility Functions |
| pkcs11_util.h | PKCS11 Library Utilities |
| ► wolfssl | |
| atca_wolfssl_interface.c | Crypto abstraction functions for external host side cryptography |
| atca_wolfssl_interface.h | Configuration Check for WolfSSL Integration Support |
| atca_wolfssl_internal.h | WolfSSL Integration Support |
| atca_basic.c | CryptoAuthLib Basic API methods. These methods provide a simpler way to access the core crypto methods |
| atca_basic.h | CryptoAuthLib Basic API methods - a simple crypto authentication API. These methods manage a global ATCADevice object behind the scenes. They also manage the wake/idle state transitions so callers don't need to |
| atca_cfgs.c | Set of default configurations for various ATCA devices and interfaces |
| atca_cfgs.h | Set of default configurations for various ATCA devices and interfaces |
| atca_compiler.h | CryptoAuthLiub is meant to be portable across architectures, even non-Microchip architectures and compiler environments. This file is for isolating compiler specific macros |
| atca_config_check.h | Consistency checks for configuration options |
| atca_debug.c | Debug/Trace for CryptoAuthLib calls |
| atca_device.c | Microchip CryptoAuth device object |
| atca_device.h | Microchip Crypto Auth device object |
| atca_devtypes.h | Microchip Crypto Auth |
| atca_helpers.c | Helpers to support the CryptoAuthLib Basic API methods |
| atca_helpers.h | Helpers to support the CryptoAuthLib Basic API methods |
| atca_iface.c | Microchip CryptoAuthLib hardware interface object |
| atca_iface.h | Microchip Crypto Auth hardware interface object |
| atca_platform.h | Configure the platform interfaces for cryptoauthlib |
| atca_status.h | Microchip Crypto Auth status codes |
| atca_utils_sizes.c | API to Return structure sizes of cryptoauthlib structures |
| atca_version.h | Microchip CryptoAuth Library Version |
| cal_buffer.c | Cryptoauthlib buffer management system |
| cal_buffer.h | Cryptoauthlib buffer management system |
| cal_internal.h | Internal CryptoAuthLib Interfaces |
| cryptoauthlib.h | Single aggregation point for all CryptoAuthLib header files |