cryptoadvance / cryptoadvance/specter-desktop

Specter does not work with SSL certificate

Open
#1,115 1 comment 0 reactions 0 assignees View on GitHub
documentation
Dominant language
Python
Stars
847
Forks
259
Avg merge
6d 18h
Merged PRs (30d)
2

Description

I have Specter on a remote computer connected to a Bitcoind on a server via a regular http connection. It all works fine, but I would like to create an https connection. And it just doesn't seem to work.

Specifically, I am attempting to connect Specter with Bitcoind's JSON-RPC API via an NGINX reverse proxy server. The SSL certificate for NGINX was created with 4096 RSA keys, and it seems to work fine for other applications. If I attempt to connect to the reverse proxy with Firefox, for instance, I get the message "JSONRPC server handles only POST requests" indicating that Firefox is making a connection to Bitcoind via NGINX.

According to the log, the problem is that Specter cannot verify the certificate: ("(Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1125)'))"

How can I instruct Specter to trust the certificate? (I assumed it would have been just handled by the operating system certificate manager to which I have incorporated the certificate as a trusted root authority.)

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the HTTPS connection from Specter to the Bitcoind JSON-RPC API through the NGINX reverse proxy, then trace where certificate verification is configured. Check how the operating system trust store and any application-specific certificate settings are used. Done means Specter can connect through the proxy without the certificate verification error.

Written by the indexing model from the issue text.

Assessment

Tech stack
nginx, python
Domain
backend, networking, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.