![]() |
![]() ![]() ![]() ![]() ![]()
|
next newest topic | next oldest topic |
Author | Topic: Audio Encryption |
photonal Member |
![]() ![]() ![]() There exist various methods of encrypting data securely, for example, rsa using public and private keys. Together with widespread internet censorship it got me thinking about encrypting an audio source signal rather than the audio data itself. There is a unix command (OSX, Linux); md5, whereby providing the command with a string generates a unique hexadecimal number for the string. e.g. andrew# md5 -s kyma Perhaps if this number were then split into 16 parts, and the audio signal split into 16 bands. Each part of the original md5 number could be used to alter the source signal (using some spectral distortion on each band?) in order to make the resulting (sum of the 16 bands) signal unintelligible. The listener of the audio would apply the reverse algorithm, having been informed of the string for use with md5 to provide the unlock key. Would this be feasible? Or would it not be possible to undo the effects of a scrambled audio signal? [This message has been edited by photonal (edited 20 July 2009).] IP: Logged |
bar|none Member |
![]() ![]() ![]() Well MD5 is a hashing algorithmn for signing (verifying no tampering has occurred), not an encryption algorithmn. So you can't use it to get data back and the original data itself (in most applications) is usually in the clear or encrypted with a different method like AES. MD5 is also quite crackable. http://en.wikipedia.org/wiki/MD5 http://en.wikipedia.org/wiki/Cryptographic_hash_function For encryption you'd want to use use something like AES. This can be symmetrical or asymmetrical encryption. asymmetrical would be the most secure with each party having a different private key for decryption and a public key that is shared. AES 256 is pretty darn secure if used properly. Thing is, in an internet context, true streaming audio is many times done on a lossy connection by udp rather than tcp so not every packet is guaranteed to arrive at destination. This complicates the matter in an encryption scenario because you need a lossless transmission for unencryption unless the streaming protocol supports encryption natively at the packet level.
[This message has been edited by bar|none (edited 20 July 2009).] IP: Logged |
photonal Member |
![]() ![]() ![]() Thanks for your reply, but I wasn't thinking of encrypting the audio data, rather exploring the idea of modifying the audio signal as to make it unintelligible via the use of the md5 key, and undoing the modification using the same md5 key. If one wanted, the resulted audio data stream could be encrypted using the aes method. [This message has been edited by photonal (edited 21 July 2009).] IP: Logged |
pete Member |
![]() ![]() ![]() I suspect you were trying to do encryption in the analogue domain. Don't know if this is the sort of thing you meant but you can do odd things with the single side band ring modulator. That is the true one using the Hilbert transform not the other one in the prototypes. With this you can pitch shift by half sample rate. This will make spectral envelope turn upside down in pitch and the sound will be intelligible. If you do the same thing again you get your original signal back again. Not much of an encoding system when there is only one way of screwing it up. If instead you keep both in phase and 90 degs out of phase, you have to keep both signals but you can pitch shift it by any frequency and you can get the original back. The odd thing is that the pitch shift moves the frequencies around in a big circle held between DC and Half sample rate. It has both negative and positive frequencies as long as you keep both in phase and 90 deg out of phase signals. With careful selection of pitch shifts you can add the results together in a way that can be decoded. For example shift by quarter sample rate and half sample rate then by shifting the mix by another quarter sample rate and mixing with it self should make one copy cancel and the other copy add giving back the original signal. Don't know if this is the sort of thing you are looking for? Pete IP: Logged |
photonal Member |
![]() ![]() ![]() thanks pete for your input, although it is funny to imagine it being in the analog domain even though the source audio signal / 'encryption' / 'decryption' / output audio signal would probably be in the digital domain within a kyma sound ![]() thanks for your pointers on methods which would make this possible. but yes I am making the distinction between encrypting the data stream (e.g. a secure TCP/IP connection) carrying the audio samples and the audio samples contained within that data stream which perhaps could be encrypted/decrypted within a kyma sound. This could negate the side-effects of a UDP connection; the encryption/decryption of the audio samples would be independent of the network connection - not all packets would need to arrive - the kyma sound would just be working on audio samples, if some went missing, it would just sound like audio breaking up, wouldn't it? [This message has been edited by photonal (edited 22 July 2009).] IP: Logged |
pete Member |
![]() ![]() ![]() Yes what I meant by analogue was that the encrypted signal could be sent through an analogue system and even be attenuated a bit or go through a sample rate convertor or have reduced bit resolution and could still get recovered at the other end. IP: Logged |
All times are CT (US) | next newest topic | next oldest topic |
![]() ![]() |
This forum is provided solely for the support and edification of the customers of Symbolic Sound Corporation.