Comments (7)
+1
I'd like to request for an enhancement to "Add support for smart contract function calls"
Detailed Description
In the Current implementation, sign-tx is expecting data filed to be in UTF8 string format, this is the limitation that blocking sing-tx method to be used for smart contract calls, smart contract calls require hex data to be supported by the data field.
Possible Implementation
Option1: Change existing sing-tx function to accept data in raw hex string.
Option2: Add new API for smart contract function calls with hex support
from vault-ethereum.
Any Update on this issue?
from vault-ethereum.
Are you asking for a flag that tells the plugin to convert the data field from a string (UTF8) to hexadecimal prior to signing?
Something like this?
vault write ethereum/dev/accounts/rinkeby/sign-tx to="0x36D1F896E55a6577C62FDD6b84fbF74582266700" amount="200000000000000000" data="data encoded as a string" encoding="hex" send=false
This means that the incoming data has to be rendered as a UTF8 string first.
from vault-ethereum.
Are you asking for a flag that tells the plugin to convert the data field from a string (UTF8) to hexadecimal prior to signing?
Something like this?
vault write ethereum/dev/accounts/rinkeby/sign-tx to="0x36D1F896E55a6577C62FDD6b84fbF74582266700" amount="200000000000000000" data="data encoded as a string" encoding="hex" send=false
This means that the incoming data has to be rendered as a UTF8 string first.
The problem is with providing the data payload as UTF8 string, The data payload can be a smart contract function call, and UTF8 character set will cover all hexadecimal values possible.
I'd want it to support like this.
vault write ethereum/dev/accounts/rinkeby/sign-tx to="0x36D1F896E55a6577C62FDD6b84fbF74582266700" amount="200000000000000000" data="0xd3c9cc2600000000000000000000000000000000000000000000000000000000000003e8" encoding="hex" send=false
from vault-ethereum.
I chose a different approach. Please advise if this is acceptable. If so, I will close this issue. This approach allows you to sign arbitrary binary data - with the limitation that you supply the data in a file.
$ vault write ethereum/dev/accounts/rinkeby/sign-tx \
to="0x36D1F896E55a6577C62FDD6b84fbF74582266700" \
amount="200000000000000000" \
data="/Volumes/ext/go/src/github.com/immutability-io/vault-ethereum/scripts/transaction.data" \
dataIsFile=true \
send=false
from vault-ethereum.
I chose a different approach. Please advise if this is acceptable. If so, I will close this issue. This approach allows you to sign arbitrary binary data - with the limitation that you supply the data in a file.
$ vault write ethereum/dev/accounts/rinkeby/sign-tx \ to="0x36D1F896E55a6577C62FDD6b84fbF74582266700" \ amount="200000000000000000" \ data="/Volumes/ext/go/src/github.com/immutability-io/vault-ethereum/scripts/transaction.data" \ dataIsFile=true \ send=false
Is this expects the file to be sitting in the machine where the vault is running?
The data payload is generated dynamically in the DApp on the client side, this approach of the file will not work in our scenario.
from vault-ethereum.
Note: In the case of hex encoding, the data should NOT be prefixed with 0x
.
from vault-ethereum.
Related Issues (20)
- Unable to use Self Signed Certificate
- Can we save string data inside ethereum HOT 1
- Finding Logs for the ethereum plugin HOT 3
- Error when installing vault-ethereum plugin HOT 9
- Error in path_blocks.go HOT 1
- Feature questions: importing ABI, filtering, and logging HOT 2
- Unrecognized remote plugin message HOT 15
- Error writing data to ethereum-plugin/config: Error making API request. HOT 2
- Error when setting config HOT 1
- When "address_to" is not mentioned during the transaction signing, the funds are transferred to NULL address. HOT 1
- Can I use vault plugin for quorum? HOT 1
- unusable message signing (ethereum/accounts/:name/sign and ethereum/accounts/:name/verify) HOT 9
- unable to install
- sign-tx function sign transaction incorrectly.
- Sign message & verify signed message are not working properly HOT 1
- Unable to modify gas_limit parameter on sign-tx request HOT 1
- Curl not working properly for Erc20, Erc721 HOT 1
- How to backup data
- Unable to enable secrets path using newer version of Vault and ethereum plugin binary
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vault-ethereum.