I have a Zymkey 4 in a Raspberry Pi signing requests in some processes using pycurl. However when i have 3 or more processes at the same time, i receive the error below:
(66, “Failed to initialise SSL Engine ‘zymkey_ssl’:\nerror:00000000:lib(0):func(0):reason(0)”)
Could you help me?
This is the code that I’m using to test it:
buffer = BytesIO()
c = pycurl.Curl() c.setopt(c.SSLENGINE, "zymkey_ssl") c.setopt(c.SSLENGINE_DEFAULT, 1) c.setopt(c.SSLVERSION, c.SSLVERSION_TLSv1_2) # Settings certificates for HTTPS connection c.setopt(c.SSLCERTTYPE, "PEM") c.setopt(c.SSLCERT, CERTIFICATE_PEM_PATH) c.setopt(c.CAINFO, CERTIFICATE_CA_PATH) # setting endpoint and HTTPS type, here it is a POST c.setopt(c.URL, URL) c.setopt(pycurl.CUSTOMREQUEST, "GET") c.setopt(c.WRITEFUNCTION, buffer.write) c.setopt(c.HTTPHEADER, ['Content-Type: application/json']) c.setopt(c.TIMEOUT, 60) # Telling Curl to do client and host authentication c.setopt(c.SSL_VERIFYPEER, 1) c.setopt(c.SSL_VERIFYHOST, 2) # Turn off Verbose output and set key as placeholder, not actually a real file. c.setopt(c.VERBOSE, 0) c.setopt(c.SSLKEYTYPE, "ENG") c.setopt(c.SSLKEY, TPM_DUMMY_KEY_PATH) c.perform() c.close() response = buffer.getvalue().decode("utf-8") print(response) except Exception as e: print("ERROR -> " + str(e)) time.sleep(1)