Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tagging pointers #160

Open
xxuejie opened this issue May 25, 2021 · 2 comments
Open

Tagging pointers #160

xxuejie opened this issue May 25, 2021 · 2 comments
Labels
s:discussion-needed Status: Need to Discuss t:research Type: Research topic or direction.

Comments

@xxuejie
Copy link
Collaborator

xxuejie commented May 25, 2021

For a design without MMU, ckb-vm can be more vulnerable to certain types of memory corruption problems. Since ckb-vm typically runs scripts that guards assets, this issue is much more critical.

One possible solution would be introducing tagging pointers, which might leverage, but would not eliminate the problem, this paper describes a similar attempt: https://arxiv.org/abs/2105.08712

@xxuejie xxuejie added s:discussion-needed Status: Need to Discuss t:research Type: Research topic or direction. labels May 25, 2021
@mohanson
Copy link
Collaborator

I realized that HeapSafe append the ROCC instructions, which would require us to modify the toolchains, versatility will be an issue.

@xxuejie
Copy link
Collaborator Author

xxuejie commented May 28, 2021

Yes, tagging pointer will definitely require toolchain change. I've seen people limiting it to malloc library only. Considering we are patching malloc for non-MMU environment, I feel like the tradeoff here might be fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
s:discussion-needed Status: Need to Discuss t:research Type: Research topic or direction.
Projects
None yet
Development

No branches or pull requests

2 participants