CryptoAuthLib
Microchip CryptoAuthentication Library
atca_basic_lock.c File Reference

CryptoAuthLib Basic API methods for Lock command. More...

#include "atca_basic.h"
#include "atca_execution.h"

Functions

ATCA_STATUS atcab_lock (uint8_t mode, uint16_t summary_crc)
 The Lock command prevents future modifications of the Configuration and/or Data and OTP zones. If the device is so configured, then this command can be used to lock individual data slots. This command fails if the designated area is already locked. More...
 
ATCA_STATUS atcab_lock_config_zone (void)
 Unconditionally (no CRC required) lock the config zone. More...
 
ATCA_STATUS atcab_lock_config_zone_crc (uint16_t summary_crc)
 Lock the config zone with summary CRC. More...
 
ATCA_STATUS atcab_lock_data_zone (void)
 Unconditionally (no CRC required) lock the data zone (slots and OTP). More...
 
ATCA_STATUS atcab_lock_data_zone_crc (uint16_t summary_crc)
 Lock the data zone (slots and OTP) with summary CRC. More...
 
ATCA_STATUS atcab_lock_data_slot (uint16_t slot)
 Lock an individual slot in the data zone on an ATECC device. Not available for ATSHA devices. Slot must be configured to be slot lockable (KeyConfig.Lockable=1). More...
 

Detailed Description

CryptoAuthLib Basic API methods for Lock command.

The Lock command prevents future modifications of the Configuration zone, enables configured policies for Data and OTP zones, and can render individual slots read-only regardless of configuration.

Note
List of devices that support this command - ATSHA204A, ATECC108A, ATECC508A, ATECC608A. There are differences in the modes that they support. Refer to device datasheets for full details.