In the recent iOS Security white paper from Apple (February 2014), the section on iMessage discusses using two different asymmetric key types as part of its standard operation:
When a user turns on iMessage, the device generates two pairs of keys for use with the service: an RSA 1280-bit key for encryption and an ECDSA 256-bit key for signing.
- Is it best practice to use a different set of keys for signing than for encryption?
- If so, what are the advantages to it? I had been looking at writing some software that used a single RSA key pair for both signing and encryption but this has made me question it.
- Is there also a specific reason they've used RSA for encryption of the AES keys, and ECDSA for signing?