Earlier quoted context omitted.
What sorts of applications are written for OS-less systems that require a TLS library? EDIT: Thanks for the sincere responses. In retrospect my question might have appeared smarmy, but that wasn't my intent and I really appreciate the responses.
I very badly need a TLS library in my embedded firmware so I can accept new firmware updates over HTTP.
BearSSL – Smaller SSL/TLS
121–130 of 206 posts
Re: BearSSL – Smaller SSL/TLS
#122One of the cliches about crypto is that you should not implement your own crypto. Not to suggest that the authors don't know what they are doing, but they mention 'alpha' quality themselves on the site. I wonder, how long does it take until a new library is deemed secure? What does the process look like? Trial and error? Or do they compare notes with vulnerabilities found in e.g. openssl?
Generally the cliche is about not implementing your own cryptographic algorithms. As long as they only implement existing algorithms and don't generate new ones, I don't think this applies.
Given a choice between building something with Nacl and a bespoke stream cipher and building something with a bespoke cryptosystem and AES, I would have a hard time picking, but I'd lean towards Nacl.
Re: BearSSL – Smaller SSL/TLS
#123Earlier quoted context omitted.
There is not supporting insecure protocols and then there is living in fantasy land away from everyone else. You can't drop all of these things and end up with something generally useful.
Why not? TLS 1.3 is dropping those algorithms.
Re: BearSSL – Smaller SSL/TLS
#124Earlier quoted context omitted.
I very badly need a TLS library in my embedded firmware so I can accept new firmware updates over HTTP.
You don't need TLS for that, you could simply use an HMAC and a shared secret, assuming you're not worried about people with physical access (and ability to get the secret) being able to create updates. Of course if you've got multiple instances of the device (not some hobby thing where they are all owned by you), then the secret for each device should be different so someone can't buy the device, determine the secre…
(that can take many forms, but that general idea is how most software updates currently work)
Re: BearSSL – Smaller SSL/TLS
#125Re: BearSSL – Smaller SSL/TLS
#126> written in C Stopped reading there.
Re: BearSSL – Smaller SSL/TLS
#127Earlier quoted context omitted.
And it seems the firewall here has made a clbuttic mistake, as that page is blocked due to the url containing "porn".
So you're pretty much out of luck if you want to visit a page that contains some analysis?
Re: BearSSL – Smaller SSL/TLS
#128The last thing the world needs is another immature SSL/TLS implementation however this makes it very interesting: > No dynamic allocation whatsoever. There is not a single malloc() call in all the library. In fact, the whole of BearSSL requires only memcpy(), memmove(), memcmp() and strlen() from the underlying C library. This makes it utterly portable even in the most special, OS-less situations. (On “big” systems,…
And it seems the firewall here has made a clbuttic mistake, as that page is blocked due to the url containing "porn".
Re: BearSSL – Smaller SSL/TLS
#129Earlier quoted context omitted.
I very badly need a TLS library in my embedded firmware so I can accept new firmware updates over HTTP.
You don't need TLS for that, you could simply use an HMAC and a shared secret, assuming you're not worried about people with physical access (and ability to get the secret) being able to create updates. Of course if you've got multiple instances of the device (not some hobby thing where they are all owned by you), then the secret for each device should be different so someone can't buy the device, determine the secre…
Re: BearSSL – Smaller SSL/TLS
#130Earlier quoted context omitted.
> Yet even DJB's stuff can be simplified. You can knock off a good 80% of the scary code at a cost of a mere 10% of performance. Wouldn't you say DJB (et al) did that themselves? https://tweetnacl.cr.yp.to/
I haven't benchmarked TweetNaCl's performance yet, but I think that goes way too far into making the code completely unreadable. The 80%/10% number I gave is against the ref10 implementation. Compare theirs: https://tweetnacl.cr.yp.to/20140427/tweetnacl.c To mine: https://gitlab.com/higan/higan/blob/master/nall/elliptic-cur... https://gitlab.com/higan/higan/blob/master/nall/elliptic-cur... https://gitlab.com/higan/hi…