-
Notifications
You must be signed in to change notification settings - Fork 39
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
May need another APIs to get the proofs of Axon's system contracts #1561
Comments
As the annotation below: axon/core/executor/src/system_contract/metadata/store.rs Lines 19 to 42 in 3dbfe5a
The metadata info stores in a column of RocksDB which is different from the trie. However, the metadata trie root is stored in the storage account with the following key-value pair. axon/core/executor/src/system_contract/metadata/store.rs Lines 41 to 42 in 3dbfe5a
Besides, the key is a fixed string. So the proof can prove the metadata. |
Maybe I was WrongBut you have just spoken your words, and didn't answer my question. We are not that to compare whose words are more here.
I already said they were in different column families.
What's different between your words and my words? I think you just repeated what I said. Let me re-explain my confusion again.
|
As I said in the previous comment, there is no doubt that we can prove the You're right. It's impossible to get a metadata proof through the In order to do this, Axon need another |
According to the previous comment, I think there are several new tasks:
p.s. I searched the discord channels, public GitHub repositories, and private GitHub repositories, didn't find any content of ping @Flouse |
Will there be more APIS or just two?
Since
|
I prefer these API, rather than provide two APIs |
To be notice that the ckb light client and the image cell use a same column, so these two contracts should provide one pair interface like |
Description
When call
eth_getStorageAt
oreth_getProof
, the storage will be loaded from defaulttrie_db
.eth_getStorageAt
:axon/core/api/src/adapter.rs
Line 239 in 835cb16
eth_getProof
:axon/core/api/src/adapter.rs
Line 268 in 835cb16
But data of system contracts are stored in another column family.
axon/core/executor/src/system_contract/metadata/store.rs
Lines 31 to 33 in 835cb16
axon/core/executor/src/system_contract/image_cell/store.rs
Lines 29 to 31 in 835cb16
axon/core/executor/src/system_contract/ckb_light_client/store.rs
Lines 22 to 24 in 835cb16
If I'm correct, data of system contracts could NOT be accessed or proved.
Application Scenarios
The text was updated successfully, but these errors were encountered: