This is a door lock that can be controlled via Bluetooth Low Energy from an iPhone.
The goal of this project was to include elements that would make the device more secure and
explore ambient noise as a source for random number generation. When the user opens the
application to open their lock they have to enter a 4-digit code. They are then brought to a
screen that asks them to enter a 10-digit code within 4 seconds. This ten-digit number is
sent serially over Bluetooth LE from the Arduino. Only after this number is correctly entered
can the user open their lock. The total system is comprised of an Arduino Uno,
Red Bear Lab Bluetooth Low Energy shield, microphone, and motorized door lock.
The microcontroller handles the random number generation from the ambient noise input,
and the iPhone application handles the actions taken to avoid access to the lock via a man in the middle attack.