Also, here is an example of a very minimal configuration for ECC. Perhaps it will be useful:
https://github.com/wolfSSL/wolfssl/blob … _min_ecc.h

That does not sound outrageous.

Here is a guide you may find useful:
https://www.wolfssl.com/docs/wolfssl-ma … llocation/
In particular, the tuning section at the end.

153

(16 replies, posted in wolfSSL)

Hi Alex,

Nothing stands out as odd in the configuration. There could be an issue in how the application is handling the wolfSSL context.

Have you reviewed the examples repository? In particular this one may be of interest to you:
https://github.com/wolfSSL/wolfssl-exam … blocking.c

Thanks,
Eric @ wolfSSL Support

Excellent. Right, if you had filled the buffer with data (used all 1024 bytes), then the sizeof operator would be correct.

Yes, the sizeof operator returns the actual size of the buffer, not the string. You want to use

 strlen(buffer)
#ifndef WOLFSSL_USER_SETTINGS
#include <wolfssl/options.h>
#endif
#include <wolfssl/wolfcrypt/settings.h>
#include <wolfssl/ssl.h>
#include <wolfssl/wolfcrypt/sha256.h>
#include <wolfssl/wolfcrypt/error-crypt.h>

void main() {
    byte md5sum[MD5_DIGEST_SIZE]; 
    byte sha256sum[SHA256_DIGEST_SIZE]; 
    byte buffer[1024] = "Hello";
    Md5 md5;
    Sha256 sha256;
    
    //MD5
    wc_InitMd5(&md5);
    wc_Md5Update(&md5, buffer, strlen(buffer));
    wc_Md5Final(&md5, md5sum);
    printf("MD5 is \n");
    for(int i=0 ; i < MD5_DIGEST_SIZE ;i++)  printf("%x",md5sum[i]);
        printf(" \n");
    wc_Md5Free(&md5);


    //SHA256
    wc_InitSha256(&sha256);
    wc_Sha256Update(&sha256, buffer, strlen(buffer));
    wc_Sha256Final(&sha256, sha256sum);
    printf("SHA is \n");
    for(int i=0 ; i < SHA256_DIGEST_SIZE  ;i++) printf("%x",sha256sum[i]);
        printf(" \n");
    wc_Sha256Free(&sha256);
}

MD5 is
8b1a9953c4611296a827abf8c4784d7
SHA is
185f8db32271fe25f561a6fc938b2e26436ec304eda51807d1764826381969

Hello

I would be curious to see your application code, perhaps you are hashing the whole buffer, not just the string "Hello"

wolfSSL has a command line utility project, aptly named wolfCLU:
https://github.com/wolfSSL/wolfCLU

I used it below to demonstrate that the hashes match the values from other tools (openssl and sha256sum):

$ echo "Hello" > test.txt
$ wolfssl -hash md5 -in test.txt 
09f7e02f1290be211da707a266f153b3
$ openssl md5 test.txt 
MD5(test.txt)= 09f7e02f1290be211da707a266f153b3
$ wolfssl -hash sha256 -in test.txt 
66a045b452102c59d840ec097d59d9467e13a3f34f6494e539ffd32c1bb35f18
$ sha256sum test.txt 
66a045b452102c59d840ec097d59d9467e13a3f34f6494e539ffd32c1bb35f18  test.txt

HI Kelvin,

Thanks for confirming the fix. Most customers of wolfSSL utilize the ZenDesk platform by emailing `support@wolfssl.com`. Tickets in ZenDesk are monitored and more closely tracked.

You are welcome to use whichever method suits you.

Hi Davide,

I have not heard back from my contact at Sysgo (out of office), but you might have some luck reaching out to them also
info@sysgo.com

I participated in a webinar in which the Sysgo engineer developed a demo using PikeOS and wolfSSL / wolfMQTT. Of course wolfSSL and wolfMQTT code is available as open source on Github, but the PikeOS code will need to be provided by Sysgo.
https://www.youtube.com/watch?v=e2MjDM_JjXQ

Thanks,
Eric @ wolfSSL Support

Hello Kelvin,

GitHub is also a public facing platform. If there are issues you would prefer to keep more private, you can also send a message to support@wolfssl.com, which will create a ticket in our ZenDesk issue tracker.

Kind regards,
Eric @ wolfSSL Support

Hi Davide,

I am checking around to see if we have a demo that could help guide you. I will follow up when I know more.

Thanks,
Eric @ wolfSSL Support

Hi Kelvin,

Thanks again for your excellent report on this issue. I created a fix here:
https://github.com/wolfSSL/wolfMQTT/pull/240

Please let me know if this also fixes the problem from your perspective.

Thanks,
Eric @wolfSSL Support

Hi Kelvin,

I will check this out. I created a github issue to better track the report here:
https://github.com/wolfSSL/wolfMQTT/issues/239

Hi Kelvin,

Thanks for living on the bleeding edge of wolfMQTT development! We try to synchronize wolfMQTT releases with wolfSSL, and wolfSSL is currently in testing for a release. Best guess for a wolfMQTT release would be sometime in the next 6 weeks.

Hello Kelvin,

Are you testing with the latest master copy from https://github.com/wolfSSL/wolfMQTT/ ?

This issue should have been fixed with:
https://github.com/wolfSSL/wolfMQTT/pull/231

If there is still an issue, please open a ticket with support@wolfssl.com or in https://github.com/wolfSSL/wolfMQTT/issues

Thanks,
Eric @wolfSSL Support

165

(1 replies, posted in wolfMQTT)

Hi Kelvin,

Thanks for your post. We did fix a chunked publish issue since the v1.9.0 release:
https://github.com/wolfSSL/wolfMQTT/pull/230

Would you mind checking with the latest revision from GitHub? If the issue persists, we can open an issue for better tracking.

Thanks,
Eric @ wolfSSL Support

Hello Kelvin

That is an excellent suggestion! I've copied your post to a new GitHub issue in our repository:
https://github.com/wolfSSL/wolfMQTT/issues/237

Thanks,
Eric @ wolfSSL Support

Hi Rusty,

We definitely can help you with a port. Please send a request to facts@wolfssl.com

Thanks,
Eric @ wolfSSL Support

We also have an E2 example here:
https://github.com/wolfSSL/wolfssl/tree … s/e2studio

Hi Rusty81,

If you do not need the TLS stack, please try enabling `WOLFCRYPT_ONLY`

From the server side, yes, the callback allows the server to handle the incoming SNI extension form the client.

Hello raghu,

Have you reviewed the instructions for building wolfSSL with cmake?
https://github.com/wolfSSL/wolfssl/blob … NSTALL#L80

Thanks,
Eric @ wolfSSL Support

Hello emre,

Welcome to the forums. This is likely to be a feature request. Please send an email to support@wolfssl.com and mention this post to get the feature request process started.

Thanks,
Eric @ wolfSSL Support

Hello beaveryoga,

Thanks for joining the forums. This functionality was added to enable openSSL compatibility. It looks like the proper API is `wolfSSL_CTX_set_tlsext_servername_callback`, which is nearly identical to `wolfSSL_CTX_set_servername_callback`.

I could not find any openSSL examples of using `SSL_CTX_set_servername_callback`. I'll check with the n team to see if there is more info to share.

Thanks,
Eric @ wolfSSL Support

Hi Davide,

wolfMQTT is mostly platform agnostic C code, unless your platform is using non-POSIX APIs, in which case you will have to override calls like send, recv, etc. wolfMQTT should compile on any platform.
wolfMQTT does not currently have .NET bindings. If compiled as a C++ application, there should be no restrictions on your VC++ library version.

175

(3 replies, posted in wolfMQTT)

Does your application call `wolfSSL_check_domain_name`? Verifying the common name in the cert is fine, but not necessary if you also have a trusted CA that signed the server's certificate.