Skip to content
This repository has been archived by the owner on Feb 25, 2020. It is now read-only.

Encryption Scheme #43

Closed
syslot opened this issue Apr 13, 2015 · 3 comments
Closed

Encryption Scheme #43

syslot opened this issue Apr 13, 2015 · 3 comments

Comments

@syslot
Copy link

syslot commented Apr 13, 2015

I hava a question about the encryption scheme spark used (RSA&AES) , why not SSL/TLS, are there some advantages?

@zsup
Copy link
Member

zsup commented Apr 13, 2015

Yes, there are significant advantages.

Basically, SSL/TLS have a variety of ciphers that they may use in any given session. This has the advantage of providing compatibility with a wider range of clients. It has two major downsides:

  • Supporting a range of ciphers requires a significant amount of flash and memory (at least for an embedded processor)
  • When security flaws are found in SSL/TLS, it is usually because one of the cipher suites is found to be unsafe. New versions of SSL/TLS will drop the unsafe cipher suite, but old versions will still use it and therefore provide a clear attack surface.

Since we don't need to support client diversity, there's no advantage to SSL/TLS over the encryption we do use. And by only supporting RSA/AES, it significantly decreases the memory overhead (which means we can run on a processor with 20KB of RAM, which would not be possible with SSL/TLS). In addition, it is potentially more secure, because we are not supporting ciphers that might be determined to be insecure.

@zsup zsup closed this as completed Apr 13, 2015
@syslot
Copy link
Author

syslot commented Apr 16, 2015

Thanks for your answer.
By the way, in spark server, dose one client map two pairs of keys(the public and private)?

@kennethlimcp
Copy link
Contributor

The device holds its own private key while the server holds the public key as per normal security model.

In additional, communication with the server requires the use of the server public key stored in the device.

lbt pushed a commit to lbt/spark-server that referenced this issue Feb 28, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants