I was working with LoRa interfacing with microcontrollers and realized that I'd require encryption of data in my design. Can someone tell me if I would require signal processing for this purpose?
Implementing encryption at the embedded application level means it is operating at the closest possible point to the source data at embedded chip level. To make life much easier in terms of managing long term data privacy risks, I would choose a Micro-controller that is well supported by "heavy-weight" Encryption routine libraries. e.g. check out this site for Microchip products - Microchip link
Implementing encryption at the embedded application level also means the comms and networking encryption added later exist as security "wrappers" on top of the embedded encryption making everything that much more secure. Note that "wrapping" and "unwrapping" all these layers will impose a lag which may or may not be a problem, depending on your application. Using a DSP Micro-controller may improve the performance of the encryption/decryption code because DSPs are designed to execute math functions more efficiently. Getting this advantage may be at the expense of the main application, however, if it cannot also take advantage of the DSP architecture that is designed to process external analogue signals (audio, video, AC, DC, etc) at high speed.
I have also found that having good security library support means I can progress with application design now, leaving on-chip resources free in case I need to improve Encryption later. Flexibility in this area is good because data privacy standards always change to be more secure as time goes by.
LoRa security can be achieved in two different layers. It could be one for the network or one for the application. On the network layer, the integrity of a message is enforced by the Message Integrity Code (MIC).On the application layer the payload is encrypted using the AppSKey.
LoRa uses AES (Advanced Encryption Standard) security keys. To achieve the required levels of security for LoRa networks, several layers of encryption have been employed. Unique Network key (EUI64) ensure security on network level. Unique Application key (EUI64) ensure end to end security on application level.