points by westurner 1 year ago

Pointer authentication: https://llvm.org/docs/PointerAuth.html :

> Pointer Authentication is a mechanism by which certain pointers are signed. When a pointer gets signed, a cryptographic hash of its value and other values (pepper and salt) is stored in unused bits of that pointer.

> Before the pointer is used, it needs to be authenticated, i.e., have its signature checked. This prevents pointer values of unknown origin from being used to replace the signed pointer value.

ECC can't solve for that because it would only have one key for all processes.

Given a presumption of side channel writes, pointer auth is another layer of defense that may or may not be worth the loss in performance.

https://news.ycombinator.com/item?id=21791269#21800181