Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Custom encrypt GSM calls

Is it possible to catch voice audio stream with java (JME or Android), custom encrypt it and then send it as regular stream via regular GSM call? And off course decrypt cipher on other phone. Is application level java permitted to intercept audio stream or it is disabled on hardware level?

Are there already apps that do that?

like image 422
ratko ratko Avatar asked Dec 09 '12 12:12

ratko ratko


People also ask

Are GSM phone calls encrypted?

GSM phones use digital, encrypted communication between your phone and the cellular telephone base station. At the base station your voice is decrypted and sent over the telephone network.

Is it possible to encrypt phone calls?

Android phones on Fi are eligible for end‑to‑end encrypted calls. We believe your privacy should be the default—if you and the person you are talking to are both using an Android phone on Fi, your conversation will be encrypted automatically. Learn more on our Help Center.

Is GSM more secure?

GSM is the most secured cellular telecommunications system available today. GSM has its security methods standardized. GSM maintains end-to-end security by retaining the confidentiality of calls and anonymity of the GSM subscriber.


2 Answers

As per above few comments that level of access to voice calls is only possible with a rooted phone, and even then device specific. Best you could do for a generic encrypted voice application is a VOIP / SIP style application which would use a data connection.

Even if you could do it encrypting over an analog call would be non-trivial. The compression used in GSM codecs is optimised for voice and makes certain assumptions about the characteristics of the signal. You couldn't just use a simple analog -> digital -> encrypt -> analog -> phone network -> analog -> digital -> decrypt -> analog type signal chain.

You might notice I've included analog as a step, because all the final digital encoding to the GSM network is performed by the GSM radio chipset you don't get access to from any phone even if rooted.

like image 77
PeterJ Avatar answered Nov 12 '22 07:11

PeterJ


Mobile networks perform lossy transcoding on voice channels, for example with

  • "Native" encoding/decoding
  • echo cancelers,
  • noise generators or
  • codec changes.

Therefore I doubt that an encrypted voice data stream survives transmission via a mobile network in a way that allows decryption on the receiving side.

Simple analogy: audio -> encrypt -> MP3 compression -> MP3 decoding -> decrypt -> audio. This may not work. Or: if you make this work then you have a chance of transporting the encrypted stream via a voice bearer.

Your option would be to do that on a data bearer, transporting the encrypted voice via IP. But this requires a separate telephony application on the mobile devices.

like image 41
Bernd Avatar answered Nov 12 '22 06:11

Bernd