gpt4 book ai didi

Android NDK原生代码真正原生?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:13:43 26 4
gpt4 key购买 nike

我想知道在 native 代码中执行加密功能是否更安全。使用 Java,您无法确定 GC 是否重新排序内存并在内存中留下 key 的浅拷贝,即使您在加密/解密后立即将 key 清零也是如此。

也许这是一个愚蠢的问题,但我找不到任何信息。 native 代码仍在沙盒中并在 VM 中运行,那么 GC/VM/系统是否可以重新排序内存并因此留下一个浅拷贝?那么栈和堆是静态的还是可以移动的呢?据我所知,他们有虚拟地址,所以这可以做到。

谢谢你和最好的问候

最佳答案

Native 代码是为 ARM(我认为现在是 intel)编译的,而不是 Dalvik VM,它直接在处理器上运行,它由 Dalvik 加载和调用,但不受它直接控制。 native 代码的栈和堆是真实的。调用 memcpy/memset 将永远改变内存。

所有现代系统也都有虚拟内存,所以这就是您对安全性的了解。

关于Android NDK原生代码真正原生?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10213365/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com