I am an electronic hobbyist based in Canada. Recently I bought different Microcontroller development boards from Mouser.ca This is mostly to satisfy my curiosity and to try out the different features offered by different companies and/or different model of microcontroller CPU cores.
Out of 12 dev boards I bought, only one was export regulated under the U.S Export Administration Regulation (EAR).
I did a bit of digging around and found that the listing for the product had an Export Control Classification Number (ECCN) attached to it.
The number in question is 5A002
. I searched further and this correspond to:
“END ITEMS,” “EQUIPMENT,” “ACCESSORIES,” “ATTACHMENTS,” “PARTS,” “COMPONENTS,” AND “SYSTEMS” with CRYPTOGRAPHIC “INFORMATION SECURITY”
Indeed this device does have some cryptographic capabilities. From what I can tell from the datasheet here are the security/Cryptography features:
Security and Encryption
- Arm® TrustZone®
- Up to three regions for the code flash
- Up to two regions for the data flash
- Up to three regions for the SRAM
- Individual secure or non-secure security attribution for each peripheral
Now this is an optional feature common to all microcontrollers with an ARM-Cortex M-33 core. So I checked Microcontrollers from other companies with an ARM-Cortex M-33 core and implementing Arm TrustZone and to my surprise these were not export regulated. In fact, most of them are listed with a ECCN number of 5A992.C, now if I go back to the above document this means:
Equipment not controlled by 5A002
- .c – Commodities classified Mass Market – 740.17(b)
Now for fun if I take 3 Microcontrollers from 3 different companies and compare them:
R7FA4E10D2CFM#AA0 (From Renesas based in Japan)
Cryptographic features
Security and Encryption Arm® TrustZone®
- Up to three regions for the code flash
- Up to two regions for the data flash
- Up to three regions for the SRAM
- Individual secure or non-secure security attribution for each peripheral
ECCN: 5A002
(Export Restricted)
Note: Most of Renesas Microcontroller Offering is export restricted under 5A002 for some reason.
ATSAMD51J20A-AUT (From Microchip based in the USA)
Cryptographic Features
- One Advanced Encryption System (AES) with 256-bit key length and up to 2 MB/s data rate
- Five confidential modes of operation (ECB, CBC, CFB, OFB, CTR)
- Supports counter with CBC-MAC mode
- Galois Counter Mode (GCM)
- True Random Number Generator (TRNG)
- Public Key Cryptography Controller (PUKCC) and associated Classical Public Key Cryptography Library (PUKCL)
- RSA, DSA
- Elliptic Curves Cryptography (ECC) ECC GF(2n), ECC GF(p)
- Integrity Check Module (ICM) based on Secure Hash Algorithm (SHA1, SHA224, SHA256), DMA assisted
ECCN: 5A992.C
(No export Control)
Note: Seems to give much more cryptographic features than the above chip yet is not export controlled.
LPC55S04JBD64E (From NXP based in the Netherlands)
Cryptographic Features
- ARM TrustZone® enabled.
- AES-256 encryption/decryption engine with keys fed directly from PUF or a software supplied key > 3. Secure Hash Algorithm (SHA2) module supports secure boot with dedicated DMA controller.
- Physical Unclonable Function (PUF) using dedicated SRAM for silicon fingerprint. PUF can generate, store, and reconstruct key sizes from 64 to 4096 bits. Includes hardware for key extraction.
- True Random Number Generator (TRNG).
- 128 bit unique device serial number for identification (UUID).
- Secure GPIO.
- Code Watchdog for detecting code flow integrity.
- CASPER Crypto co-processor is provided to enable hardware acceleration for various functions required for certain asymmetric cryptographic algorithms, such as, Elliptic Curve Cryptography (ECC).
ECCN: 5A992.C
(No export Control)
Note: Notice how this one also implements trust zone and is not exported controlled. It goes as far as including a Crypto co-processor and is still not export controlled.
The question
Is this a lack of expertise/training/knowledge from the people classifying these products into export categories or is there a valid reason for the difference? What makes the difference between a product classified into the 5A992.C
category and the 5A002
category. This is really confusing to me. Shouldn't all these products be classified into the 5A992.C
category?
Edit
Just wanted to point out that I also posted this question in the Law Stack Exchange because I wanted to get the opinion of both people with a background in US laws and people with a background in Electrical Engineering/Electronics Procurement