Hi all,
I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows.
TX:
mic --> encoder --> encryption --> modulator --> RF
Rx:
speaker <-- decoder <-- decryption <-- demodulator <-- RF
I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machine but without encryption/decryption blocks.
I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose.
I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio.
My questions are:
1. My first thought is to get data stream of certain block and do encryption process with PyCrypto (not in the OoTM, but directly in synthesized python code)
then put them back to the next block. Would it be possible and how to achieve this?
2. Do GNURadio has a ready-to-use GRC blocks or OoTM of digital encryption algorithm (not scrambler)? and how do I get it (a tutorial would be fine)?
So far, I can not found the block either in GRC or
https://www.cgran.org3. Last question may be off topic a bit. Is it common to use AES algorithm to encrypt voice data, or is there any common encryption method (preferably could be implemented in GRC)?
Thank you for your time and willingness to answer these questions
Regards
tc