ALT-32 · Paper · 23 Oct 2026
GoFetch: when the prefetcher reads your keys
Apple's M-series chips include a prefetcher that looks at data values to guess which memory you'll need next. In 2024 researchers used it to extract keys from constant-time cryptography.
- Dec 2023Researchers notify Apple.
- 21 Mar 2024GoFetch published; to appear at USENIX Security 2024.
How it worked
Constant-time code avoids secret-dependent branches and addresses. But if a secret intermediate value happens to look like a pointer, the DMP dereferences it — and the resulting cache activity is observable. By choosing inputs, an attacker makes secret-dependent values look like pointers and watches.
Why it mattered
Hardware cannot simply be patched. On M3 chips software can disable the DMP during cryptographic operations; on earlier chips, mitigations must live in the cryptographic code itself.
Our reading
Analysis — Altumptic's interpretation of the sources below.
- “Constant-time” is a contract with the hardware, and hardware can change the terms.
- Performance features that look at data values are side channels by construction.
- Cryptographic libraries need hardware-specific hardening, not just portable code.
What it means for you
- Keep cryptographic libraries current; they ship hardware-specific mitigations.
- Run sensitive key operations on cores or machines not shared with untrusted code.
- Follow vendor guidance on toggling data-dependent prefetching where supported.
Sources
Altumptic was not involved in this research. Figures are as published by the sources above.
Cite this entry
Altumptic Lab (2026). ALT-32 — GoFetch: when the prefetcher reads your keys. 23 Oct 2026. altumptic.com/research/gofetch-2024