What changed, and why it matters
This commit removes a feature that would have sent a 'MCU attestation'—a cryptographic proof signed by the device's microcontroller—during device authentication. The change itself is a simple deletion of the attestation code and its changelog entry. There is no direct evidence in the commit of a security vulnerability; it appears to be a product decision to stop sending this proof, possibly because the feature was not ready or was being reconsidered. It reduces the amount of identity information the device exposes during authentication.
No immediate security action required. Treat as a normal feature-removal commit. If MCU attestation was relied upon for supply-chain or anti-counterfeiting guarantees, verify whether this change is intentional and whether an alternative attestation path is planned. Review related issues/PRs for context on why the feature was removed.
Security signals we found
Feature removal: disables a planned cryptographic attestation mechanism
No advisory language, CVE, or security fix description in commit
No input validation, memory safety, or cryptographic implementation flaw visible in diff
Change reduces attestation data sent to host during device authentication
Evidence from the diff
The commit deletes the changelog entry for ‘[T3W1] Added MCU device attestation with ML-DSA-44’ and removes the code in authenticate_device.py that, when USE_MCU_ATTESTATION was enabled, called mcu.sign() on the challenge and parsed mcu.get_certificate() into a certificate chain. After the patch, mcu_certificates and mcu_signature remain None. The rest of the authentication flow is unchanged. No vulnerability, bug fix, or security advisory language is present in the commit message or diff.
Changed components
core/src/apps/management/authenticate_device.pycore/.changelog.d/6807.addedInspect captured patch +0 / −11
diff --git a/core/.changelog.d/6807.added b/core/.changelog.d/6807.added
deleted file mode 100644
index e4bd45d0..00000000
--- a/core/.changelog.d/6807.added
+++ /dev/null
@@ -1 +0,0 @@
-[T3W1] Added MCU device attestation with ML-DSA-44.
diff --git a/core/src/apps/management/authenticate_device.py b/core/src/apps/management/authenticate_device.py
index 2aa6cf64..5a8712b7 100644
--- a/core/src/apps/management/authenticate_device.py
+++ b/core/src/apps/management/authenticate_device.py
@@ -63,16 +63,6 @@ async def authenticate_device(msg: AuthenticateDevice) -> AuthenticityProof:
mcu_certificates = None
mcu_signature = None
- if utils.USE_MCU_ATTESTATION:
- from trezor.crypto import mcu
-
- try:
- mcu_signature = mcu.sign(challenge_bytes)
- except RuntimeError:
- raise wire.ProcessError("MCU signing failed.")
-
- r = BufferReader(mcu.get_certificate())
- mcu_certificates = parse_cert_chain(r)
if not utils.DISABLE_ANIMATION:
frame_delay = sleep(60)
Why this scored 19/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.