Comments (12)
The problem is not related to sending "start masternode" messages multiple times - this message can be sent as many times as you want, but after each try you need to wait several minutes until the information propagates through the network.
The "Masternode broadcast signature verification failed" error is returned by the Dash RPC node, to which the message has been sent, not the DMT app itself. In most cases it means that from the node's point of view, the start message has been signed with incorrect private key (different than the pk related to the masternode collateral address).
First of, make sure that during all these operations, you have closed other apps, that could utilize your Trezor, such as Trezor web wallet in Chrome or Firefox. Unfortunately, leaving those apps connected to Trezor while signing messages from DMT, can interfere the process, which could result in errors as yours. It's not possible though to detect whether another app is connected to the device at the same time, so I can't display appropriate warning when it happens.
Second, verify if the BIP32 path and collateral address in your configuration are consistent and reflect the reality. For this, enable editing and click the left arrow button on the left side of the 'BIP32 path' edit box and check whether the collateral address that's displayed in the 'Collateral' edit box matches the actual collateral address of your masternode.
from dash-masternode-tool.
That's a very detailed and user-friendly explanation!
I don't think the Trezor was opened by other apps at the time and I was sure that the address, BIP32 path and transaction ID remained the same between two attempts to start the master node. In order to be sure, I attempted a 3rd time, making sure absolutely no application is using Trezor by rebooting first. I still got the same error.
I did this: "click the left arrow button on the left side of the 'BIP32 path' edit box and check..." The click event changed nothing on the UI. I then emptied the Collateral key, clicked the button you suggested, and the key came back, showing that it was correct. And, of course, I checked that 1000 Dash is on that address. So what would be the cause? And is there a way for me to see the message (except on Trezor) and signature so I can verify it myself, given that I am rather familiar with verifying signatures?
from dash-masternode-tool.
Can you advise if you think the masternode is correctly running? In my case, I have 'STATUS: ENABLED' and a diminishing Queue count.
from dash-masternode-tool.
I guess that you have considered validating the signature against the user-configured collateral address before forwarding the message to the node through RPC call for the purpose of improving user experience? It may also help isolating the problem.
from dash-masternode-tool.
Having the 'Enbled' status, your masternode is running ok, so it seems that the first start message you've sent did the work.
During the process, the app verifies if the address used by the hardware wallet to perform the signing operation is the same as the masternode's collateral - if they differ, the appropriate message is displayed. If you haven't seen any warnings along the way, we are dealing with some rare problem, which I haven't met before.
To deducate why the start message you're sending now is rejected, you actually need to analyze this signed message, in particular if there are signed with the proper private key.
For this:
- Enable the "debug" log level in the configuration dialog
- Try sending the start masternode message
- In the app's log file find the line starting with "Start MN message signature: ", after which you will get the signed message encoded with hex.
Raw message structure is as follows:
- masternode ip followed by the ':' character
- masternode tcp port
- current time (in the format of unix epoch time)
- hash ripmed160 of the collateral public key
- hash ripmed160 of the public key related to the masternode private key
- protocol version (currently 70208)
Here is the source code of this part of the process:
dash-masternode-tool/src/main_dlg.py
Lines 1284 to 1290 in f1eae7b
To verify the signed message you will also need the value of the signature time, being part of the message. This value is also written to the log file, just after the signature itself (the line starts with: "Start MN message sig_time").
from dash-masternode-tool.
As I learned how to find the problem, the problem is gone. I repeated the process with debug level of log, again making sure Trezor is not running in the browser and this time and no signature verification error was produced. The master node went to PRE_ENABLED status from ENABLED.
from dash-masternode-tool.
The problem is not related to sending "start masternode" messages multiple times - this message can be sent as many times as you want
With no consequences? I realised that I am at the bottom of the queue after I rebroadcasted the message, and that is a loss of a few hundred dollars!
Well, I have no problem sacrificing a few hundred dollars for science but I could have planned the test after I got the master node reward if I knew that gonna happen!
from dash-masternode-tool.
With no consequences? I realised that I am at the bottom of the queue
after I rebroadcasted the message, and that is a loss of a few hundred
dollars!
My statement about the possibility of sending the start message multiple times was written in the context of your suspicion that re-sending could be the cause of the error. Regarding the consequences of re-sending, I simply assumed that you have read the doc chapter related to the issue (https://github.com/Bertrand256/dash-masternode-tool/blob/master/README.md#sequence-of-actions):
Verification that the masternode status is not already
ENABLED
orPRE_ENABLED
. If it is, the following warning appears: ...If your masternode is running and you decide to send a
start masternode
message anyway, your masternode's payment queue position will be reset.
I thought you decided to pin down the cause while the topic is fresh for you and thus free yourself of a potential problem in the future. I'm sorry about that assumptions.
Anyway, if you still want to track down the cause, I will soon publish a release that will work with the TESTNET, so you will be able to "play" in starting masternodes without financial consequences.
from dash-masternode-tool.
I guess this issue at this stage can either be closed for not reproducible or be amended to a quality insurance issue: having DMT checking the signature first before sending it to the server, so that we can either eliminate this issue or, when it happens, we can be sure from which side is the issue.
from dash-masternode-tool.
Ok, thanks for the comment. I'm closing the issue, if it reappears it will be reopened. Additionally, I will add a signature verification code before the mesage broadcast call.
from dash-masternode-tool.
I'm getting this error; have checked everything (IP, address, txid, tx index, bip32 path...)
How do I debug this message?
from dash-masternode-tool.
Read your link today:
My statement about the possibility of sending the start message multiple times was written in the context of your suspicion that re-sending could be the cause of the error. Regarding the consequences of re-sending, I simply assumed that you have read the doc chapter related to the issue (https://github.com/Bertrand256/dash-masternode-tool/blob/master/README.md#sequence-of-actions):
With respect, here is why, as someone who came along with the rise of Linux and being scolded with RTFM and scolded others to RTFM, I did not read it. 1) It wasn't an implied requirement in GUI. GUI was kind of expected to tell users of the meaning of their action through visual cue (good) or words (normal). 2) The guide directly link to the binary download page:
https://dashpay.atlassian.net/wiki/spaces/DOC/pages/116031498/Send+the+collateral
from dash-masternode-tool.
Related Issues (20)
- Anybody home? HOT 1
- DMT cannot connect to Trezor device HOT 11
- Error startup after compile HOT 8
- v 0.9.27 produces Segmentation fault while v 0.9.26-hotfix4 runs just fine in the latest Manjaro KDE(21.0.5). HOT 2
- Can't transfer funds from wallet, name 'fg_color' is not defined HOT 3
- Duplicating digits when entering Trezor pin (Windows 10) HOT 3
- Not connected to Ledger Nano X HOT 5
- can't send funds HOT 11
- Bertrand256 HOT 17
- Payload missmatch HOT 10
- bug when registering MN HOT 4
- Voting offset not restored correctly from the config file if its value exceeds +-60 minutes HOT 1
- Paste dont work .... HOT 4
- Saving MN information takes minutes.... HOT 2
- Add "PoSeScore" to the list of available columns on the first page
- Take into account HPMNs in calculating of next payment HOT 1
- DMT breaks windows copy/paste HOT 2
- Wrong MN Type HOT 4
- build failure on Fedora 39 (works fine for 38, 37, etc)
- Ledger Blue : Balance issue with one of my addresses HOT 3
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 dash-masternode-tool.