Pointer Authentication is a software security primitive that makes it much harder for an attacker to aggravate attacks targeting arbitrary code execution through malicious manipulation of code and data pointers. This project aims at doing a proof-of-concept integration of pointer authentication into Ibex.
The focus lies on integrating pointer authentication into Ibex's processor pipeline. To this end, new custom instructions need to be added to generate and authenticate pointers. In addition, the Ibex system is 32-bit, so we will need to figure out where to store PAC (Pointer Authentication Codes) and how to load them.