TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

ARM Pointer Authentication

106 点作者 subleq将近 8 年前

6 条评论

yosefk将近 8 年前
That we seriously discuss using 24 out of 64 pointer bits to prevent one of the many problems with buffer overflow, but we cannot seriously discuss making buffer overflows impossible is very depressing.<p>How about we use 24 bits of data pointers to keep the array size, or 1 bit to indicate &quot;this is a pointer with a size&quot; and 23 bits for the size, and then our load&#x2F;store with index instructions, as well as freshly added pointer arithmetic instructions, trap when the index exceeds the size? Instead of using bits in instruction pointers to not let one of many kinds of buffer overflow create valid instruction pointers? No good?
评论 #14480765 未加载
评论 #14481136 未加载
评论 #14481902 未加载
评论 #14480824 未加载
评论 #14481061 未加载
评论 #14481633 未加载
评论 #14483528 未加载
评论 #14480788 未加载
评论 #14499710 未加载
repiret将近 8 年前
With address space randomization, if you have a valid pointer to memory A, you can compute a valid pointer to memory B if they are from the same section. You can&#x27;t do that with this, because the address is part of the signature.
评论 #14480222 未加载
评论 #14479883 未加载
评论 #14480166 未加载
meditationapp将近 8 年前
How does using the &quot;unused&quot; bits of a 64-bit pointer differ, functionally, from address space randomization with 64 bits? The search space is the same. Misses are still trivially detectable.<p>By my reading, this allows not a whitelist of pages, but a whitelist of arbitrary addresses. Different granularities entirely. Can anyone else bring a light to bear on this?
评论 #14479742 未加载
评论 #14481675 未加载
Rexxar将近 8 年前
Intuitively, I would have preferred they used a bigger pointer type (96 bits or 128 bits) instead of using unused part of the current pointers that will shrink when will need a bigger address space.
评论 #14480884 未加载
floatboth将近 8 年前
&quot;attaches a cryptographic signature to pointer values&quot;<p>I guess everyone who thought that &quot;signed integers&quot; are cryptographically signed weren&#x27;t THAT wrong after all :D
Taniwha将近 8 年前
I think the deal is that you can&#x27;t create a good address using the upper bits of a good one ...<p>It&#x27;s not the misses you worry about, it&#x27;s the hits