Skip to content

Commit 77cd260

Browse files
committed
Release v3.7.2 (20240119)
1 parent 279bb1d commit 77cd260

8 files changed

Lines changed: 44 additions & 16 deletions

File tree

README.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,14 @@ Introduction
66
This library implements the APIs required to communicate with Microchip Security
77
device. The family of devices supported currently are:
88

9-
- [ATSHA204A](http://www.microchip.com/ATSHA204A)
10-
- [ATECC108A](http://www.microchip.com/ATECC108A)
11-
- [ATECC508A](http://www.microchip.com/ATECC508A)
12-
- [ATECC608A](http://www.microchip.com/ATECC608A)
13-
- [ATECC608B](http://www.microchip.com/ATECC608B)
9+
|CryptoAuth |CryptoAuth2 ||
10+
|:----------------------------------------------:|:----------------------------------------:|:-------------------------------------:|
11+
|[ATECC608B](https://www.microchip.com/ATECC608B)|[ECC204](https://www.microchip.com/ECC204)
12+
|[ATECC608A](http://www.microchip.com/ATECC608A) |[ECC206](https://www.microchip.com/ECC206)|
13+
|[ATECC508A](http://www.microchip.com/ATECC508A) |[SHA104](https://www.microchip.com/SHA104)|
14+
|[ATECC108A](http://www.microchip.com/ATECC108A) |[SHA105](https://www.microchip.com/SHA105)| |
15+
|[ATSHA204A](http://www.microchip.com/ATSHA204A) |[SHA106](https://www.microchip.com/SHA106)| |
16+
|[ATSHA206A](https://www.microchip.com/ATSHA206A)|[RNG90](https://www.microchip.com/RNG90) | |
1417

1518
The best place to start is with the [Microchip Trust Platform](https://www.microchip.com/design-centers/security-ics/trust-platform)
1619

@@ -40,8 +43,8 @@ not be changeable.
4043
Examples
4144
-----------
4245

43-
- Watch [CryptoAuthLib Documents](http://www.microchip.com/design-centers/security-ics/cryptoauthentication/overview )
44-
for new examples coming online.
46+
- Install the [Trust Platform Design Suite](https://www.microchip.com/en-us/products/security/trust-platform ) to access Use Case examples
47+
for the different Security Solutions (ATECC608, SHA104/105, ECC204, TA010, TA100…)
4548
- Node Authentication Example Using Asymmetric PKI is a complete, all-in-one
4649
example demonstrating all the stages of crypto authentication starting from
4750
provisioning the Crypto Authentication device ATECC608/ATECC508A with keys

cryptoauthlib-manual.pdf

0 Bytes
Binary file not shown.

lib/atca_basic.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4016,7 +4016,7 @@ ATCA_STATUS atcab_verify_extern_mac(const uint8_t* message, const uint8_t* signa
40164016

40174017
if (atcab_is_ca_device(dev_type))
40184018
{
4019-
#ifdef ATCA_ECC_SUPPORT
4019+
#ifdef ATCA_ATECC608_SUPPORT
40204020
status = calib_verify_extern_mac(g_atcab_device_ptr, message, signature, public_key, num_in, io_key, is_verified);
40214021
#endif
40224022
}
@@ -4163,7 +4163,7 @@ ATCA_STATUS atcab_verify_stored_mac(const uint8_t* message, const uint8_t* signa
41634163

41644164
if (atcab_is_ca_device(dev_type))
41654165
{
4166-
#ifdef ATCA_ECC_SUPPORT
4166+
#ifdef ATCA_ATECC608_SUPPORT
41674167
status = calib_verify_stored_mac(g_atcab_device_ptr, message, signature, key_id, num_in, io_key, is_verified);
41684168
#endif
41694169
}

lib/atca_version.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@
3030
#define ATCA_VERSION_H
3131

3232
// Version format yyyymmdd
33-
#define ATCA_LIBRARY_VERSION_DATE "20231215"
33+
#define ATCA_LIBRARY_VERSION_DATE "20231222"
3434
#define ATCA_LIBRARY_VERSION_MAJOR 3
3535
#define ATCA_LIBRARY_VERSION_MINOR 7
36-
#define ATCA_LIBRARY_VERSION_BUILD 1
36+
#define ATCA_LIBRARY_VERSION_BUILD 2
3737

3838
#endif /* ATCA_VERSION_H */

lib/calib/calib_config_check.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,7 @@
289289
* Supported API's: calib_hmac
290290
**/
291291
#ifndef CALIB_HMAC_EN
292-
#define CALIB_HMAC_EN (ATCAB_HMAC_EN && (CALIB_SHA204_EN || CALIB_ECC108_EN || CALIB_ECC508))
292+
#define CALIB_HMAC_EN (ATCAB_HMAC_EN && (CALIB_SHA204_EN || CALIB_ECC108_EN || CALIB_ECC508_EN))
293293
#endif
294294

295295
/******* INFO COMMAND ********/

lib/cryptoauthlib.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@
7373
#define ATCA_ZONE_OTP ((uint8_t)0x01)
7474
#define ATCA_ZONE_DATA ((uint8_t)0x02)
7575

76+
#define DEVICE_PRODUCT_ID_LOCATION 0
77+
#define DEVICE_IDENTIFIER_LOCATION 1
78+
#define DEVICE_PART_LOCATION 2
79+
#define DEVICE_REVISION_LOCATION 3
80+
7681
#if ATCA_CA2_SUPPORT
7782
#define ATCA_ZONE_CA2_DATA ((uint8_t)0x00)
7883
#define ATCA_ZONE_CA2_CONFIG ((uint8_t)0x01)

lib/pkcs11/pkcs11_token.c

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,10 @@ static const char * pkcs11_token_device(ATCADeviceType dev_type, uint8_t info[4]
8686

8787
if (atcab_is_ca_device(dev_type))
8888
{
89-
switch (info[2])
89+
switch (info[DEVICE_PART_LOCATION])
9090
{
9191
case 0x00:
92-
if (0x02u == info[1])
92+
if (0x02u == info[DEVICE_IDENTIFIER_LOCATION])
9393
{
9494
rv = "ATSHA204A";
9595
}
@@ -98,7 +98,7 @@ static const char * pkcs11_token_device(ATCADeviceType dev_type, uint8_t info[4]
9898
rv = "ATECC508A";
9999
break;
100100
case 0x60:
101-
if (0x02u < info[3])
101+
if (0x02u < info[DEVICE_REVISION_LOCATION])
102102
{
103103
rv = "ATECC608B";
104104
}
@@ -115,7 +115,14 @@ static const char * pkcs11_token_device(ATCADeviceType dev_type, uint8_t info[4]
115115

116116
if (atcab_is_ta_device(dev_type))
117117
{
118-
rv = "TA100";
118+
if(0x01u == info[DEVICE_PRODUCT_ID_LOCATION])
119+
{
120+
rv = "TA101";
121+
}
122+
else
123+
{
124+
rv = "TA100";
125+
}
119126
}
120127

121128
return rv;

release_notes.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11

22
# Microchip Cryptoauthlib Release Notes
33

4+
## Release v3.7.2 (01/19/2023)
5+
6+
### New Features
7+
- See [talib/CHANGES.md] for details on talib module changes
8+
9+
### Fixes
10+
- Updated PKCS11 token info to list TA101 device details
11+
- Fixed compilation errors when ECC508 device is enabled
12+
- See [talib/CHANGES.md] for details on talib module fixes
13+
14+
### API Changes
15+
- Added sign and verfy API in talib module to support `1024 bytes ED25519 mode`
16+
417
## Release v3.7.1 (12/15/2023)
518

619
### New Features

0 commit comments

Comments
 (0)