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

Strict checking on transactions #156

Open
kroggen opened this issue Apr 13, 2022 · 1 comment
Open

Strict checking on transactions #156

kroggen opened this issue Apr 13, 2022 · 1 comment
Labels

Comments

@kroggen
Copy link
Member

kroggen commented Apr 13, 2022

Proposal: implement a more strict checking on transactions according to the transaction type:

TRANSFER

The recipient must be filled
The amount must be non-zero
The payload must be zero bytes

CALL and FEEDELEGATION

The recipient must be an existing smart contract
The payload must be valid, a proper formatted JSON for a call

GOVERNANCE

The payload must be valid, a proper formatted JSON for a governance call
The recipient must be either aergo.system (DPoS) or aergo.enterprise (Raft)

DEPLOY

The recipient must be empty
The payload must be a valid smart contract binary code

REDEPLOY

The recipient must be a valid smart contract
The payload must be a valid smart contract binary code

PAYLOAD (new type)

The payload must be non-zero bytes
The amount must be zero
The recipient can be empty or filled

NORMAL

Currently supports any recipient, any amount and any payload
This transaction type could be deprecated
It could be supported for backwards compatibility for some time, and encourage users to migrate to other types

@kroggen
Copy link
Member Author

kroggen commented Apr 13, 2022

These issues are related:

#141
#143
#144
#145

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant