ARMv8.3-A introduces a feature that authenticates the contents of a register before it is used as the address for an indirect branch or data reference.

ARMv8.3-A overview The enhancements introduced with ARMv8.3 fall into the following categories: Note:  AArch64 indicates the 64-b...

ARMv8.3-A overview

The enhancements introduced with ARMv8.3 fall into the following categories:
Note: AArch64 indicates the 64-bit Execution state and AArch32 the 32-bit Execution state in the ARM architecture.

Pointer authentication

Computer attacks are becoming more sophisticated. Examples of this are exploit mechanisms such as the use of gadgets in Return-Orientated-Programming (ROP) and Jump-Orientated-Programming (JOP). To mitigate against such exploits, ARMv8.3-A introduces a feature that authenticates the contents of a register before it is used as the address for an indirect branch or data reference. For address authentication, the functionality uses the upper bits in a 64-bit address value normally associated with signed extension of the address space. This allows the introduction of a Pointer Authentication Code (PAC) as a new field within the upper bits of the value.
The functionality is summarized as follows:
  • Instructions are added for:
    • PAC value creation that write the value to the uppermost bits in a destination register alongside an address pointer value
    • Authentication that validate a PAC and update the destination register with a correct or corrupt address pointer. If the authentication fails, an indirect branch or load that uses the authenticated, and corrupt, address will cause an exception.
    • Removing a PAC value from the specified register
  • An implementation can create a PAC using a standard and/or proprietary algorithm
  • The standardized form uses a recently published block cipher known as QARMA. Click here for information on QARMA

COMMENTS

Name

background,2,ee,10,new,2,
ltr
item
RajEngineer.com - Analog, Digital, Mixed-Signal, PCB, Electrical Design Engineering: ARMv8.3-A introduces a feature that authenticates the contents of a register before it is used as the address for an indirect branch or data reference.
ARMv8.3-A introduces a feature that authenticates the contents of a register before it is used as the address for an indirect branch or data reference.
https://1.bp.blogspot.com/-Di_-l30LEW0/Vsx-kjBGylI/AAAAAAAAAaE/CQBIi1jF4w0gNUD1-0ZrXMR0HaUF2Nt4gCPcB/s320/blue-circuit-board.jpg
https://1.bp.blogspot.com/-Di_-l30LEW0/Vsx-kjBGylI/AAAAAAAAAaE/CQBIi1jF4w0gNUD1-0ZrXMR0HaUF2Nt4gCPcB/s72-c/blue-circuit-board.jpg
RajEngineer.com - Analog, Digital, Mixed-Signal, PCB, Electrical Design Engineering
https://www.rajengineer.com/2016/10/armv83-introduces-feature-that.html
https://www.rajengineer.com/
https://www.rajengineer.com/
https://www.rajengineer.com/2016/10/armv83-introduces-feature-that.html
true
6766059806102944349
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share. STEP 2: Click the link you shared to unlock Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy