almindor / etherwall

Ethereum QT5 Wallet
GNU General Public License v3.0
142 stars 59 forks source link

TLS Initialization Failed #126

Open firasalanni opened 3 years ago

firasalanni commented 3 years ago

Hello, Once I launch Etherwall 3.0.1 (thin mode) on my Windows 10 VM, I get the following error: "TLS initialization failed" Could you please help? Best, Firas

almindor commented 3 years ago

Hello, I'm assuming this is the version downloaded from the website/github as binary distribution correct? (e.g. not built from source yourself)

Can you please go to the logs tab and "copy to clipboard" to get the logs and paste the contents here? Check if it contains any PII (such as your account addresses) and remove those if necessary, I just want to see the exact error and call where it happened.

I'm in Linux atm. but will check on my windows box to ensure native windows works.

When you say windows VM, what's the host OS? What kind of VM are you running? I'm wondering if there's a certificate chain problem due to the VM.

firasalanni commented 3 years ago

Hello,

Many thanks for your prompt response! Yes, this is the version downloaded from the website as binary distribution. The host OS is also a Windows 10 and I'm using VMware Workstation. Please find the logs below: HTTP Request error: TLS initialization failed HTTP Request error: TLS initialization failed Response parse error: illegal value HTTP Request error: TLS initialization failed Connecting to main Etherwall server

Regards, Firas

almindor commented 3 years ago

Could you please try running this on the host directly? There's no need to expose your accounts, an empty setup is fine. I want to make sure we're not chasing some sort of root certificate chain issue.

Is the windows in the VM updated?

firasalanni commented 3 years ago

Hi, I tried running it on a Virtualbox VM with updated Windows 10 and I see it is running ok! I guess your conclusion related to root certificate chain is correct. Thanks for your support! Regards, Firas

firasalanni commented 3 years ago

Hi,

I tried updating the Root certificates on the Windows VM with: certutil.exe –generateSSTFromWU roots.sst $sstStore = (Get-ChildItem -Path roots.sst ) $sstStore | Import-Certificate -CertStoreLocation Cert:\LocalMachine\Root

I've noticed a lot of certificates have been imported successfully. For my surprise, running Etherwall still shows the same error!

How can we further troubleshoot this please?

Regards, Firas

almindor commented 3 years ago

Can you confirm that the host os works fine?

firasalanni commented 3 years ago

I confirm the host OS works fine

almindor commented 3 years ago

That indicates that this has to be some sort of virtualization issue. I'm not sure how to proceed, maybe see what the full certificate chain looks like between host and guest first. If there's a difference that'll probably be the source of the issue.

M4ster0fDis4ster commented 3 years ago

Hi,

Have you managed to resolve this. I get this error message when I open Etherwall. I updated the path to geth keystore but it is still not able to connect. Can someone provide some troubleshooting steps, if anyone has encountered this?

almindor commented 3 years ago

@RollMeOneKenob1 Are you also using a VM?

firasalanni commented 3 years ago

Hi,

I believe it's not related to whether Etherwall is running on a VM or a physical computer. I have two VirtualBox VMs, Etherwall runs properly on one of them while it shows "TLS initialization failed" on the other one that has a newly installed Windows. I tried updating the root certificates on the problematic VM but that did not resolve the problem. Also updating Windows did not fix the problem either. The only difference between the two VMs is that the problematic VM is running Windows 10 Pro while the other one is running Windows 10 Home.

I'm going to create a new VM with Windows 10 Home and see whether Etherwall would show this error or not. Will update the ticket shortly.

Regards, Firas

firasalanni commented 3 years ago

Hello,

I've created a new VM with Windows 10 Home. Etherwall shows the same error!

Regards, Firas

almindor commented 3 years ago

I've just checked on mine again and it still works fine. I also checked on Macos X and Linux and both work too. This is becoming interesting.

I'm not much at home when it comes to windows, but I think we'll need to compare the root certificate chain from the VMs where it works with the ones where it doesn't and go from there. Thanks for digging deeper btw. this is an interesting problem.

One more thing, can you please provide the 'debug level' logs? You can switch the level in the logs tab. Then restart etherwall and it should use the new level from start, you'll see a lot more messages. Copy paste that in here so I can see exactly which calls were being done and failed.

NOTE: always double check anything from the logs to see if it contains data you're not comfortable with sharing! The worst should be your accound addresses and transaction IDs possibly, although neither should show up right at init.

M4ster0fDis4ster commented 3 years ago

Hi,

Here are the logs:

HTTP Request error: TLS initialization failed HTTP Request error: TLS initialization failed Response parse error: illegal value HTTP Post reply: HTTP Request error: TLS initialization failed Connecting to main Etherwall server HTTP Post request: { }

HTTP Post request: { }

HTTP Post request: { "currencies": [ "BTC", "EUR", "CAD", "USD", "GBP" ], "version": 2 }

almindor commented 3 years ago

Could you please try running etherwall from a console (cmd or powershell in windows) to see if there are any QT5 warning/error messages and post the output of that here as well? I suspect there might be some sort of libssl problem.

M4ster0fDis4ster commented 3 years ago

I get the same error message. No changes:

HTTP Request error: TLS initialization failed HTTP Request error: TLS initialization failed Response parse error: illegal value HTTP Post reply: HTTP Request error: TLS initialization failed Connecting to main Etherwall server HTTP Post request: { }

HTTP Post request: { }

HTTP Post request: { "currencies": [ "BTC", "EUR", "CAD", "USD", "GBP" ], "version": 2 } I used the run path\etherwall.exe command through powershell and start path\etherwall.exe through cmd and I got the same error messages in the log section of the etherwall interface.

almindor commented 3 years ago

Would it be possible to compare the root certificate on the system that works vs the one that doesn't? See here on how to check them out.

M4ster0fDis4ster commented 3 years ago

Should I look for a specific one? There are so many under Trusted Root Certification authorities and all seem to be working fine.

Aloooh9 commented 2 years ago

I have the same issue, I did a backup just in case and only moved my 500GB NVME to the port at the back of the motherboard and added another 1TB nvme in the main port, and installed new windows without touching anything in the old SSD. now even the old one giving me TLS initialization failed error. I don't know what happened, below is the log of the application. I used V3.0.1 and with the new windows, I downloaded 3.0.3.

HTTP Request error: TLS initialization failed HTTP Request error: TLS initialization failed Response parse error: illegal value HTTP Request error: TLS initialization failed Connecting to main Etherwall server

Aloooh9 commented 2 years ago

just an update, for some reason, IDK what. it working fine now after 3 days.

almindor commented 2 years ago

TLS init fail could also mean the server communication has had some odd problem although typically you would see a connection refused before. Is it possible your windows machine did some sort of update in those 3 days?

Aloooh9 commented 2 years ago

I did, I'm running my pc for mining and gaming simultaneously so maybe one game I downloaded could have updated or install something like Visual studio or DirectX.

ghost commented 2 years ago

I have 3 PCs with new Windows...I had to reinstall Windows on all 3 of them and now I can't access etherwall because same TLS Initialization Failed error pops up. Also tried running VM with no luck. Is there some other wallet where etherwallet.backup can be imported/restored because otherwise my funds are stuck??

almindor commented 2 years ago

I have 3 PCs with new Windows...I had to reinstall Windows on all 3 of them and now I can't access etherwall because same TLS Initialization Failed error pops up. Also tried running VM with no luck. Is there some other wallet where etherwallet.backup can be imported/restored because otherwise my funds are stuck??

Don't worry you're not locked out. I'll have to make it so Etherwall can start in "offline mode" if the main server connection fails.

I've made issue #140 for the change. I can't say how soon this will be done given the holidays tho. In the meantime, is there any chance you could try on a non-windows machine? If not, try running an easy linux distro in a VM and see if that works.

I'll also see about maybe making a simple backup restore tool for the .backup file so you can get your geth accounts back easily.

almindor commented 2 years ago

I have 3 PCs with new Windows...I had to reinstall Windows on all 3 of them and now I can't access etherwall because same TLS Initialization Failed error pops up. Also tried running VM with no luck. Is there some other wallet where etherwallet.backup can be imported/restored because otherwise my funds are stuck??

@ivanrobic I've just realized that import should still work on the file level. Start etherwall, wait for the error pop up and press ok. Then go to wallet/import at the top and select your backup file. It should show a socket error but also mention that the import succeeded. After that your geth accounts should be inside the geth data directory/keystore folder (see in settings).

You can then use those with any geth compatible wallet such as myetherwallet or others.

ghost commented 2 years ago

Thank you, I managed to import keystore files to myetherwallet

iamnotspam1 commented 2 years ago

Hello, I have same error with etherwall on my windows 10 vm. (HTTP Request error: TLS initialization failed) And I solved this problem! You just need install this packages:

microsoft visual c++ 2010 x64 -10.0.4 microsoft visual c++ 2010 x32 -10.0.4 microsoft visual c++ 2012 x64 -11.0.6 microsoft visual c++ 2012 x32 -11.0.6 microsoft visual c++ 2013 x64 -12.0.3 microsoft visual c++ 2013 x32 -12.0.3 microsoft visual c++ 2015-2022 x64 -14.30.3 microsoft visual c++ 2015-2022 x32 -14.30.3

almindor commented 2 years ago

I'm sorry, what's LOOT V0.17 ?