SlideShare a Scribd company logo
4
Most read
15
Most read
19
Most read
VOICE ENCRYPTION FOR GSM
USING ARDUINO
BY
SRIRAM BALASUBRAMANIAN
AND
VIJAYARAGHAVAN GOVINDARAJAN
COURSE PROJECT
FOR
ECE/CS 561 – HARDWARE/SOFTWARE DESIGN OF
EMBEDDED SYSTEMS
ABSTRACT
• GSM bears numerous security vulnerabilities.
• Phone calls can be hacked/overheard/recorded by professional hackers or by
even service providers.
• To add privacy and security to the GSM
communication system by embedding
encryption and decryption algorithms onto an
arduino.
BLOCK DIAGRAM OF THE SYSTEM
Microphone

Arduino

Bluetooth

Phone

Bluetooth

Phone

Arduino

Speakers
INTRODUCTION
• An analog speech signal is fed into an Arduino
through a Microphone.
• The Arduino converts the speech signal into
discrete samples.
• We encrypt these Digital samples by means of a
simple Encryption algorithm.
• The encrypted signal is sent to an Android phone
over Bluetooth and the phone transmits the
encrypted voice signal to the receiver.
INTRODUCTION
• At the receiving side, the received signal is fed
into an Arduino(again over Bluetooth) .
• Here, we decrypt the signal and convert it back
into analog, which is fed into speakers.
COMPLETED TASKS
• Audio input to the Arduino:
Implemented the Audio input circuit which provides the
Speech signal to the Arduino.
• Encryption:
Developed a simple encryption algorithm to scramble the
speech signal and to transmit the same through a
Bluetooth module.
• Android Application
Developed an Android Application for discovering paired
devices and to stream voice to the selected device during a
real time phone call.
TECHNICAL ASPECTS
• Basically a development board.
• Chosen because of its extensive community
support, as well as its relatively simple
programming language.
• Written in a C-based language.
• Arduino program has a setup stage and a loop
stage.
• Setup stage runs immediately after the unit
receives power, and the run stage loops
continuously.
BLUETOOTH
• Wireless technology standard for exchanging
data over short distances
• ISM band from 2400–2480 MHz
• Bluetooth is special in that it uses profiles to
carry out specific tasks.
• The HSP is the most commonly used profile,
providing support for the popular Bluetooth
Headsets to be used with mobile phones.
• The Headset Profile inherits from the SPP
• Adds features such as volume control, call
answering, hang up, and voice dial.
• It relies on SCO(Synchronous connectionoriented) links for audio encoded in 64 kbit/s
CVSD or PCM(We have used PCM).
AUDIO INPUT TO THE ARDUINO
Method of audio preparation - so that it can be
processed and sampled by the Arduino.
Components used:
• Microphone
• 9 V batteries
• Operational Amplifiers (TL072)
• Resistors (100K and 10K ohm)
• Capacitors( 47n and 10u F)
• Wires
BLOCK DIAGRAM OF THE AUDIO INPUT
CIRCUIT

Microphone

Amplifier

DC Offset

Arduino
CIRCUIT DIAGRAM
AUDIO INPUT SETUP
AUDIO PROCESSING BY THE ARDUINO
• We give the output of the Audio Input circuit
to the analog input (A0) of the Arduino.
• Continuous sampling of Audio from port A0.
• We consider the most significant 8 bits of the
ADC output for our encryption purposes.
• Obtain this by left shifting the 10 bit ADC
output.
ENCRYPT THE DIGITALLY CONVERTED
INPUT
• Since the processing power of the Arduino is not very high, we
employ a rather simple encryption algorithm to decrease the
processing delays.
while(incomingAudio)
{
r = incomingAudio % 10;
reverse = reverse* 10 + r;
incomingAudio=incomingAudio/10;
}
• Transmit the encrypted voice signal via the Bluetooth module to the
Android phone
• We follow a similar procedure for decryption
Android Application Development
ARDUINO BLUETOOTH
• Checks if the Bluetooth Adapter is available on
the device.
• If it is not available, sends out a message saying
that Bluetooth is not available on the device.
• If Bluetooth is available on the device, but is not
enabled, sends out a request to the user to turn on
Bluetooth.
• After Bluetooth is turned on, the app gets a list of
paired devices on the device and starts its
discovery
• If a device is discovered and is on the existing
paired devices list, it is added to the list of
discovered paired devices which is displayed on
the device screen.
• Upon the selection of the paired device, with
which the user wants to connect, a connection is
established and a new activity for calling is
opened.
• For testing purposes, we have just given the
option of calling one person. We have done this to
test the effectiveness of voice transmission.
CHALLENGES FACED
• Difficulties in connecting our phone with the
Bluetooth module
• Problem was in identifying the UUID of our
device
• Playing Audio from a prerecorded file.
• When we tried to play a file, all we were able
to hear was just White noise
ISSUES
• We are able to transmit audio over a Bluetooth
SCO link, which is usually used in Headset
Profile and Hands Free profile protocols.
• Unfortunately, the firmware of the Bluetooth
module which we have used in the project does
not support the headset profile.
• Instead, it just supports the SPP(Serial Port
Profile) protocol.
• Hence our Android phone is not able to recognize
the Bluetooth device as a possible SCO link
PROPOSED SOLUTION
• Instead of using an external Bluetooth module,
the OSEPP BTH-01(with Arduino support) can
be used as an alternative.
• The OSEPP BTH-01 comes with an ATMEGA
microcontroller and a BTW11 audio bluetooth
module, which supports over 10 bluetooth
profiles, with BlueGiga’s iWrap firmware.
• To be in particular, it supports the HSP and
HFP, which is required for our project.
• By monitoring the states of the HSP/HFP
protocol, the OSEPP BTH-01 can be programmed
to behave like a headset.
• For example, upon the arrival of HFP RING state
and if the phone is OFFHOOK, the device can be
programmed to be in the Call in Progress state. In
the Call in Progress state, Audio signals can be
received from and also transmitted to a device
with which connection has been established.
CONCLUSION
• We live in times where in a lot of importance
has been given for safeguarding privacy.
• We believe that our project has helped to
improve privacy protection in this digital age

More Related Content

PPTX
Iboc technology for digital radio
PPTX
PPT
Hippi
PPT
ULTRA WIDE BAND TECHNOLOGY
PDF
PDF
9. parameters of mobile multipath channels
Iboc technology for digital radio
Hippi
ULTRA WIDE BAND TECHNOLOGY
9. parameters of mobile multipath channels

What's hot (20)

PDF
Gsm interfaces
PDF
3.3 gpp NR USER Plane introduction
PDF
VoLTE flows - basics
PPT
PPTX
T mac protocol
PPTX
Horn antenna
PDF
An Introduction to RF Design, Live presentation at EELive 2014
PPT
8.vsat
PPTX
Satellite Radio
PPTX
Antennas in Wireless Communication
PDF
10. types of small scale fading
PPTX
NGN & IMS
PPTX
Digital communication methods
PPTX
Multiplexing tdma fdma cdma wdma
PDF
2.1 introduction to cellular architecture
PPT
microwave-tubes
DOCX
Handover parameters in_lte
PPTX
Optical add drop multiplexer in Optical Fiber Communication
PPTX
Basic cellular system
Gsm interfaces
3.3 gpp NR USER Plane introduction
VoLTE flows - basics
T mac protocol
Horn antenna
An Introduction to RF Design, Live presentation at EELive 2014
8.vsat
Satellite Radio
Antennas in Wireless Communication
10. types of small scale fading
NGN & IMS
Digital communication methods
Multiplexing tdma fdma cdma wdma
2.1 introduction to cellular architecture
microwave-tubes
Handover parameters in_lte
Optical add drop multiplexer in Optical Fiber Communication
Basic cellular system
Ad

Viewers also liked (20)

PPTX
PrivateGSM - Voice Encryption Technical Overview
PPTX
Labmeeting - 20150211 - Novel End-to-End Voice Encryption Method in GSM System
PPTX
Encrypted Voice Communications
PPTX
Image encryption and decryption
PDF
PrivateGSM user manual multiplatform_en
PPTX
Cryptography.ppt
PPTX
Micro-controllers for beginners
PDF
Feasibility of Security in Micro-Controllers
PDF
Arduino arduino gsm-shield .... helpful to b.tec students
PDF
Psi android telephony_case_study_v10
PPTX
Kernel modules
PDF
Android presentation
PPT
RT Procedure new KTM
PPT
Cellular network
PDF
Linux kernel modules
PDF
Android telephony stack
PDF
Android Telephony Manager and SMS
PPT
5432 cellular network
PDF
Kernel Configuration and Compilation
PPTX
Introduction to Arduino with ArduBlock & SparkFun LilyPad
PrivateGSM - Voice Encryption Technical Overview
Labmeeting - 20150211 - Novel End-to-End Voice Encryption Method in GSM System
Encrypted Voice Communications
Image encryption and decryption
PrivateGSM user manual multiplatform_en
Cryptography.ppt
Micro-controllers for beginners
Feasibility of Security in Micro-Controllers
Arduino arduino gsm-shield .... helpful to b.tec students
Psi android telephony_case_study_v10
Kernel modules
Android presentation
RT Procedure new KTM
Cellular network
Linux kernel modules
Android telephony stack
Android Telephony Manager and SMS
5432 cellular network
Kernel Configuration and Compilation
Introduction to Arduino with ArduBlock & SparkFun LilyPad
Ad

Similar to Voice encryption for gsm using arduino (20)

PPTX
Enable talk project
PPTX
Enable talk
PDF
Android project
PDF
The Pied Piper
DOC
Bluetooth voice
PPTX
E- Notice Board Presentation
PPTX
digital notice board using bluetooth and arduino
PDF
Arduino Based Bluetooth Controlled Robotic Car
PDF
Voice Control Home Automation
PPT
Physical prototyping lab3-serious_serial
PPTX
final project presentation.pptx
PPT
Magic glove( sign to voice conversion)
DOCX
Wireless E-Notice Board Using Bluetooth Report.docx
PDF
Arduino bluetooth voice control.pdf
PPTX
Arduino Bluetooth Voice Control
PPTX
internship exam ppt.pptx on embedded system and IOT
PPTX
humanoid final ppt.pptx based on the servo motor
PDF
IRJET- Smart Gloves to Convert Sign Languages to Vocal Output
DOCX
Project_report_voice_controlling_robot
PPTX
Advanced Arduino Programming for Communications.pptx
Enable talk project
Enable talk
Android project
The Pied Piper
Bluetooth voice
E- Notice Board Presentation
digital notice board using bluetooth and arduino
Arduino Based Bluetooth Controlled Robotic Car
Voice Control Home Automation
Physical prototyping lab3-serious_serial
final project presentation.pptx
Magic glove( sign to voice conversion)
Wireless E-Notice Board Using Bluetooth Report.docx
Arduino bluetooth voice control.pdf
Arduino Bluetooth Voice Control
internship exam ppt.pptx on embedded system and IOT
humanoid final ppt.pptx based on the servo motor
IRJET- Smart Gloves to Convert Sign Languages to Vocal Output
Project_report_voice_controlling_robot
Advanced Arduino Programming for Communications.pptx

Voice encryption for gsm using arduino

  • 1. VOICE ENCRYPTION FOR GSM USING ARDUINO BY SRIRAM BALASUBRAMANIAN AND VIJAYARAGHAVAN GOVINDARAJAN COURSE PROJECT FOR ECE/CS 561 – HARDWARE/SOFTWARE DESIGN OF EMBEDDED SYSTEMS
  • 2. ABSTRACT • GSM bears numerous security vulnerabilities. • Phone calls can be hacked/overheard/recorded by professional hackers or by even service providers. • To add privacy and security to the GSM communication system by embedding encryption and decryption algorithms onto an arduino.
  • 3. BLOCK DIAGRAM OF THE SYSTEM Microphone Arduino Bluetooth Phone Bluetooth Phone Arduino Speakers
  • 4. INTRODUCTION • An analog speech signal is fed into an Arduino through a Microphone. • The Arduino converts the speech signal into discrete samples. • We encrypt these Digital samples by means of a simple Encryption algorithm. • The encrypted signal is sent to an Android phone over Bluetooth and the phone transmits the encrypted voice signal to the receiver.
  • 5. INTRODUCTION • At the receiving side, the received signal is fed into an Arduino(again over Bluetooth) . • Here, we decrypt the signal and convert it back into analog, which is fed into speakers.
  • 6. COMPLETED TASKS • Audio input to the Arduino: Implemented the Audio input circuit which provides the Speech signal to the Arduino. • Encryption: Developed a simple encryption algorithm to scramble the speech signal and to transmit the same through a Bluetooth module. • Android Application Developed an Android Application for discovering paired devices and to stream voice to the selected device during a real time phone call.
  • 7. TECHNICAL ASPECTS • Basically a development board. • Chosen because of its extensive community support, as well as its relatively simple programming language. • Written in a C-based language. • Arduino program has a setup stage and a loop stage. • Setup stage runs immediately after the unit receives power, and the run stage loops continuously.
  • 8. BLUETOOTH • Wireless technology standard for exchanging data over short distances • ISM band from 2400–2480 MHz • Bluetooth is special in that it uses profiles to carry out specific tasks. • The HSP is the most commonly used profile, providing support for the popular Bluetooth Headsets to be used with mobile phones.
  • 9. • The Headset Profile inherits from the SPP • Adds features such as volume control, call answering, hang up, and voice dial. • It relies on SCO(Synchronous connectionoriented) links for audio encoded in 64 kbit/s CVSD or PCM(We have used PCM).
  • 10. AUDIO INPUT TO THE ARDUINO Method of audio preparation - so that it can be processed and sampled by the Arduino. Components used: • Microphone • 9 V batteries • Operational Amplifiers (TL072) • Resistors (100K and 10K ohm) • Capacitors( 47n and 10u F) • Wires
  • 11. BLOCK DIAGRAM OF THE AUDIO INPUT CIRCUIT Microphone Amplifier DC Offset Arduino
  • 14. AUDIO PROCESSING BY THE ARDUINO • We give the output of the Audio Input circuit to the analog input (A0) of the Arduino. • Continuous sampling of Audio from port A0. • We consider the most significant 8 bits of the ADC output for our encryption purposes. • Obtain this by left shifting the 10 bit ADC output.
  • 15. ENCRYPT THE DIGITALLY CONVERTED INPUT • Since the processing power of the Arduino is not very high, we employ a rather simple encryption algorithm to decrease the processing delays. while(incomingAudio) { r = incomingAudio % 10; reverse = reverse* 10 + r; incomingAudio=incomingAudio/10; } • Transmit the encrypted voice signal via the Bluetooth module to the Android phone • We follow a similar procedure for decryption
  • 16. Android Application Development ARDUINO BLUETOOTH • Checks if the Bluetooth Adapter is available on the device. • If it is not available, sends out a message saying that Bluetooth is not available on the device. • If Bluetooth is available on the device, but is not enabled, sends out a request to the user to turn on Bluetooth. • After Bluetooth is turned on, the app gets a list of paired devices on the device and starts its discovery
  • 17. • If a device is discovered and is on the existing paired devices list, it is added to the list of discovered paired devices which is displayed on the device screen. • Upon the selection of the paired device, with which the user wants to connect, a connection is established and a new activity for calling is opened. • For testing purposes, we have just given the option of calling one person. We have done this to test the effectiveness of voice transmission.
  • 18. CHALLENGES FACED • Difficulties in connecting our phone with the Bluetooth module • Problem was in identifying the UUID of our device • Playing Audio from a prerecorded file. • When we tried to play a file, all we were able to hear was just White noise
  • 19. ISSUES • We are able to transmit audio over a Bluetooth SCO link, which is usually used in Headset Profile and Hands Free profile protocols. • Unfortunately, the firmware of the Bluetooth module which we have used in the project does not support the headset profile. • Instead, it just supports the SPP(Serial Port Profile) protocol. • Hence our Android phone is not able to recognize the Bluetooth device as a possible SCO link
  • 20. PROPOSED SOLUTION • Instead of using an external Bluetooth module, the OSEPP BTH-01(with Arduino support) can be used as an alternative. • The OSEPP BTH-01 comes with an ATMEGA microcontroller and a BTW11 audio bluetooth module, which supports over 10 bluetooth profiles, with BlueGiga’s iWrap firmware. • To be in particular, it supports the HSP and HFP, which is required for our project.
  • 21. • By monitoring the states of the HSP/HFP protocol, the OSEPP BTH-01 can be programmed to behave like a headset. • For example, upon the arrival of HFP RING state and if the phone is OFFHOOK, the device can be programmed to be in the Call in Progress state. In the Call in Progress state, Audio signals can be received from and also transmitted to a device with which connection has been established.
  • 22. CONCLUSION • We live in times where in a lot of importance has been given for safeguarding privacy. • We believe that our project has helped to improve privacy protection in this digital age