Important: Please read the Qt Code of Conduct -

Add (existing) AESCCM ciphers to the supportedCiphers() list

  • When I run the following code snippet

        qDebug() << QSslSocket::sslLibraryBuildVersionString();
        auto configuration = QSslConfiguration::defaultDtlsConfiguration();
        QList<QSslCipher> all_ciphers;
        all_ciphers = configuration.supportedCiphers();
        for(int i=0;i<all_ciphers.length();i++){
            if(all_ciphers[i].name().contains("CCM")) //TLS_PSK_WITH_AES_128_CCM_8  //PSK-AES128-CCM8
                    qDebug() << "Cipher " << all_ciphers[i].name();
        qDebug() << "Ciphers: " << all_ciphers.length();

    I get

    "OpenSSL 1.1.1c  28 May 2019"
    Ciphers:  60

    This 60 is exactly the same as I get from openssl ciphers -psk -v | wc

    However, I want to use the TLS_PSK_WITH_AES_128_CCM_8 (OpenSSL PSK-AES128-CCM8) Cipher. This one is installed because it is shown by openssl ciphers -psk -v AESCCM but how can I get it in the supportedCiphers() list?

    Background: I want to connect using qtcoap to an existing coap server using TLS_PSK_WITH_AES_128_CCM_8

  • Lifetime Qt Champion


    What OS are you running your application on ?

  • I'm running on Ubuntu 16.04. I've compiled Qt 5.13.0 myself against OpenSsl 1.1
    I'm not sure whether I should add some Qt API calls to add support for this AESCCM cipher family (which is mandatory for COAP afaik) or whether I should configure OpenSsl itself somehow.

Log in to reply