ECU-1051 MQTTClient fails TLS handshake to WISE-IoT broker with OpenSSL "unable to find public key parameters" error

Device went offline on WISE-IOT dashboard after previously working correctly. It worked properly until last friday when all the devices went offline. No configuration changes were made before Friday.

Error log on system log in ECU-1051’s web interface:

Sep 22 15:00:28 ecu1051-d30fb1 user.notice MQTTClient: [mcm_WISE-PaaS.c:2466:get_mqtt_credential] DCCS request begin…
Sep 22 15:00:29 ecu1051-d30fb1 user.notice MQTTClient: [mcm_WISE-PaaS.c:2479:get_mqtt_credential] DCCS request end with rc = 0 (No error), HTTP RESPONSE CODE = 200
Sep 22 15:00:29 ecu1051-d30fb1 user.notice MQTTClient: [mcm_WISE-PaaS.c:2789:get_mqtt_conn_cfg] got credential: {“serviceName”:“RabbitMQ”,“serviceHost”:“iot-bus.practice.cloud.advantech.com”,“serviceKeyName”:“03243f2fa2da4deac6adb619d701a4x3”,“serviceKeyGuid”:"b8c7f46e-f065-441
Sep 22 15:00:29 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:493:comm_mqtt_connect] [iot-bus.practice.cloud.advantech.com:8883:(null)] mqtt_version = 4, will = 0x16164e8, sock5_proxy = (nil), username = NE8Q4MpPDVe0:dgqMA08GWZqb, password = 6yWBR4vhmc4zkRh0tE6F, ssl_enab
Sep 22 15:00:29 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:588:comm_mqtt_connect] [iot-bus.practice.cloud.advantech.com:8883:(null)] mosquitto_will_set topic = /wisepaas/scada/1de1e3c991bd4bb09ba394b467ab3f97/conn, payload_len = 47, qos = 1, retain = 0, payload = {“d”:
Sep 22 15:00:29 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:399:init_ssl_option] [iot-bus.practice.cloud.advantech.com:8883:(null)] insecure = 1, scenario = 0, cert_reqs = 0, version = tlsv1.2, ca_file = /home/sysuser/project/default-ca-certificates.crt, cert_file = (nu
Sep 22 15:00:29 ecu1051-d30fb1 user.err MQTTClient: [comm_mqtt.c:409:init_ssl_option] [iot-bus.practice.cloud.advantech.com:8883:(null)] mosquitto_tls_insecure_set 1 return 0 (No error.)
Sep 22 15:00:29 ecu1051-d30fb1 user.err MQTTClient: [comm_mqtt.c:424:init_ssl_option] [iot-bus.practice.cloud.advantech.com:8883:(null)] mosquitto_tls_opts_set cert_reqs=0 tls_version=tlsv1.2 return 0 (No error.)
Sep 22 15:00:29 ecu1051-d30fb1 user.err MQTTClient: [comm_mqtt.c:442:init_ssl_option] [iot-bus.practice.cloud.advantech.com:8883:(null)] mosquitto_tls_set cafile(/home/sysuser/project/default-ca-certificates.crt) capath(nil) certfile(nil) keyfile(nil) return 0 (No error.)
Sep 22 15:00:29 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:666:comm_mqtt_connect] [iot-bus.practice.cloud.advantech.com:8883:(null)] connecting …
Sep 22 15:00:30 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:79:on_mosquitto_log] [E] [iot-bus.practice.cloud.advantech.com:8883:(null)] OpenSSL Error[0]: error:0A0C0103:SSL routines::internal error
Sep 22 15:00:30 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:266:on_mqtt_disconnect] [iot-bus.practice.cloud.advantech.com:8883:(null)] rc = 14, msg = Connection Refused: unknown reason.
Sep 22 15:00:30 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:79:on_mosquitto_log] [E] [iot-bus.practice.cloud.advantech.com:8883:(null)] OpenSSL Error[0]: error:0680009F:asn1 encoding routines::unexpected eoc
Sep 22 15:00:30 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:79:on_mosquitto_log] [E] [iot-bus.practice.cloud.advantech.com:8883:(null)] OpenSSL Error[1]: error:0688010A:asn1 encoding routines::nested asn1 error
Sep 22 15:00:30 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:79:on_mosquitto_log] [E] [iot-bus.practice.cloud.advantech.com:8883:(null)] OpenSSL Error[2]: error:0A08000D:SSL routines::ASN1 lib
Sep 22 15:00:30 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:266:on_mqtt_disconnect] [iot-bus.practice.cloud.advantech.com:8883:(null)] rc = 14, msg = Connection Refused: unknown reason.
Sep 22 15:00:59 ecu1051-d30fb1 user.warn MQTTClient: [mqtt_conn.c:2661:mqtt_conn_proc] [9dfa7b24-ff01-4a32-ab0f-c9cb55ca7771] connection timeout, tick = 7437827!
Sep 22 15:00:59 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:762:comm_mqtt_disconnect] [iot-bus.practice.cloud.advantech.com:8883:(null)] enter
Sep 22 15:00:59 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:782:comm_mqtt_disconnect] [iot-bus.practice.cloud.advantech.com:8883:(null)] leave
Sep 22 15:00:59 ecu1051-d30fb1 user.err MQTTClient: [comm_mqtt.c:711:comm_mqtt_connect] [iot-bus.practice.cloud.advantech.com:8883:(null)] connect timeout!
Sep 22 15:00:59 ecu1051-d30fb1 user.warn MQTTClient: [mqtt_conn.c:2478:mqtt_conn_connect_proc] [9dfa7b24-ff01-4a32-ab0f-c9cb55ca7771] connect failed, rc = -692!

I ran some troubleshooting, I found that the DCCS authentication succeeds every time

Failure only occurs after DCCS authentication, during the TLS handshake
If any of you know how to fix this issue, please reply this. Thank you

please follow this article to connect cloud. MQTTS Security Setup Guide: Connecting Edge Devices to Cloud (Port 8883) - Low-Code IoT Platform / IoTEdge - WISE Developer Community

If it still doesn’t work, please leave your email address so that we can contact you.

Thank you for the reply, I already did everything that was told in that article, but the results are the same, my device status is still offline. To clarify my current situation, here are screenshots from my project:

My device link from Cloud IoTSuite

Edgelink configuration with SSL Enabled

Device status on my cloud IoTSuite, the last time it successfully went online was in Thursday

netstat on ECU1051 ssh root, the connection to 219.87.150.5 has been on time_wait status for 6 minutes now

The data can be viewed on the ECU1051’s web interface with device status “Good”

My current edgelink version is 2.8.4.4 as it is the only version that is compatible with my ECU1051

If you know what can be done to make this device online again, please contact me at:

c11230020@john.petra.ac.id

c11230020@john.petra.ac.id

Thank You

UPDATE: I updated both my EdgeLink Studio and my EdgeLink Image from 2.8.4.4 to 2.8.4.5 but still no difference, the device status on the IoTSuite dashboard remains offline and the error is still the exact same error as before. Here is my system log:

Sep 23 21:46:42 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:666:comm_mqtt_connect] [iot-bus.practice.cloud.advantech.com:8883:(null)] connecting …
Sep 23 21:46:44 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:79:on_mosquitto_log] [E] [iot-bus.practice.cloud.advantech.com:8883:(null)] OpenSSL Error[0]: error:0A0C0103:SSL routines::internal error
Sep 23 21:46:44 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:266:on_mqtt_disconnect] [iot-bus.practice.cloud.advantech.com:8883:(null)] rc = 14, msg = Connection Refused: unknown reason.
Sep 23 21:46:44 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:79:on_mosquitto_log] [E] [iot-bus.practice.cloud.advantech.com:8883:(null)] OpenSSL Error[0]: error:0A0000EF:SSL routines::unable to find public key parameters
Sep 23 21:46:44 ecu1051-d30fb1 user.notice MQTTClient: [comm_mqtt.c:266:on_mqtt_disconnect] [iot-bus.practice.cloud.advantech.com:8883:(null)] rc = 14, msg = Connection Refused: unknown reason.

If you know what can be done to make this device online again, please contact me at:

c11230020@john.petra.ac.id

Thank You