https://bugs.kde.org/show_bug.cgi?id=368172

            Bug ID: 368172
           Summary: Cannot connect to app on Android 4.4.4 --
                    SSLHandshakeException
           Product: kdeconnect
           Version: 1.4
          Platform: Android
                OS: Android 4.x
            Status: UNCONFIRMED
          Severity: major
          Priority: NOR
         Component: android-application
          Assignee: albertv...@gmail.com
          Reporter: masterofex...@hotmail.com

My desktop (running kde-connect 1.0) and Android 6.0 devices cannot see my
Android 4.4.4 device and my Android 4.4.4 device cannot see any devices on the
network.  However, Android 6.0 & the desktop can see each other.  Clicking
refresh makes no difference; switching wireless networks makes no difference. 
Both Android devices are running 1.4.1.

On the desktop, I can clearly see the UDP broadcast from the Android 4.4.4
device, and it doesn't look much different from the packets sent by the Android
6.0 device.

Running logcat on the Android 4.4.4 device produces the following output:

I/KDE/LanLinkProvider( 2948): Broadcast identity package received from xxx@xxx
I/KDE/LanLinkProvider( 2948): Starting SSL handshake with xxx@xxx trusted:false
E/KDE/LanLinkProvider( 2948): Handshake failed with xxx@xxx
W/System.err( 2948): javax.net.ssl.SSLHandshakeException:
javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0xxxxxxxxx:
Failure in SSL library, usually a protocol error
W/System.err( 2948): error:1408A0C1:SSL routines:SSL3_GET_CLIENT_HELLO:no
shared cipher (external/openssl/ssl/s3_srvr.c:1381 0xxxxxxxxx:0x00000000)
W/System.err( 2948):    at
com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:449)
W/System.err( 2948):    at
org.kde.kdeconnect.Backends.LanBackend.LanLinkProvider$4.run(LanLinkProvider.java:246)
W/System.err( 2948):    at java.lang.Thread.run(Thread.java:841)
W/System.err( 2948): Caused by: javax.net.ssl.SSLProtocolException: SSL
handshake aborted: ssl=0xxxxxxxxx: Failure in SSL library, usually a protocol
error
W/System.err( 2948): error:1408A0C1:SSL routines:SSL3_GET_CLIENT_HELLO:no
shared cipher (external/openssl/ssl/s3_srvr.c:1381 0xxxxxxxxx:0x00000000)
W/System.err( 2948):    at
com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
W/System.err( 2948):    at
com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
W/System.err( 2948):    ... 2 more


My wild guess is that KDE Connect requires strong ciphers to avoid a downgrade
attack, and my Android device is unfortunately too old to support the minimum. 
If I'm right, I see a few possible resolutions:
0) nothing to do (because my phone manufacturer omitted strong SSL ciphers -- I
wouldn't put it past Motorola)
1) update minimum requirements for KDE Connect on Android
2) allow weaker ciphers (possibly with a big red warning during pairing)
3) fallback to RSA encryption

Regardless, an error message for this issue would be helpful.

Reproducible: Always

Steps to Reproduce:
1. Connect Android 4.4.4 device to wireless network
2. Connect desktop to the same wireless network
3. Open KDE Connect on Android; hit refresh
4. Open KDE Connect Settings on desktop; hit refresh

Actual Results:  
No device seen in list of connectable devices

Expected Results:  
Desktop and Android 4.4.4 devices see each other and can be paired.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to