Re: Audio Scrambler
If you dont know about public-key cryptography you need to read about how it works eg RSA algorithm.
To change the keys over an insecure channel you need data communications in both directions, half-duplex is enough (only one end can transmit at a time).
Is the link between sender and receiver a digital link or do you need to fit the scrambled audio and key exchange into an audio channel?
eg if this is to be used over a narrowband radio system that is intended for audio and you want it to have similar range to an unscrambled radio link then you need to pack the scrambled audio and key negotiation data into an analog signal that occupies about 300Hz to 4KHz and work with a signal to noise ratio down to about 10dB. Down to 0Hz can be used but an off the shelf voice radio would need some modifications.
That would mean a low bit rate even if you use clever encoding to get somewhere near the shannon limit.
If you need to do everything over an audio channel there are two main options, both start by digitising the audio
method 1) Run the digital audio stream through an encryption algorithm, turn the encrypted data into analog audio in a way that you can get back exactly the same data at the other end. The big difficulty is the bit rate you can send over the audio channel. You probably have to use a digital compression algorithm like SPEEX or AMBE to reduce the bit rate and if you want it to work over a radio channel without having very poor range you will have to use a clever data->audio encoding algorithm to get somewhere near the shannon limit.
method 2) Scramble the audio in some way and send a encrypted data burst along with the audio that tells the receiver how to unscramble the data. There is a system called
MASC that works this way(it has been replaced by all-digital radios now). Audio scrambling is commonly done by cutting the audio at some frequency eg 1000Hz then swapping the frequency blocks, eg 300-1000hz gets moved to 3300-4000, 1000-4000Hz gets moved to 300-3300hz. The encrypted data burst tells the receiver what cut frequencies to use for the next 30 seconds, to be reasonably secure the cut frequencies have to be changed frequently. The encrypted data could be sent below 300Hz or above 10KHz and filtered out at the receiver, leaving voice frequencies.