Friday, November 24, 2006

Mobile Surveillance Application

Using the Pyhton programming language for the Nokia S60 phones I programmed a mobile surveillance application during the Mobile Interaction Concepts and Technologies course given by Jürgen Scheible.

The script itself was programmed during 3 days (4 days excercises/theory as well) and is based on example scripts from Jürgen Scheible's excellent Python for S60 tutorial.

The basic concept of the application is to take pictures and listen-in remotly using only 2 mobile phones. The phone used as the surveillance phone has to be a Nokia S60 model running Symbian with Pyhton installed in order for the script to work. The remote phone on the other hand could be any "dumb" phone which has basic browsing capabilities so that you could see the surveillance photo.

The Pyhton script works like this:

Once activated the surveillance phone shows a small preview picture so that you could position the phone's camera as you wish. The script can also work in the background so that anybody looking at the phone would not know that the script is running.

Once the script is started you can send SMS text messages to the phone for it to take action. In my example I have programmed two take actions for the phone when it receives SMS messages with predefined codewords or the appropriate key is pressed:
  1. Sending an SMS with the word "photo" (without quotation marks) will tell the phone to take a picture (reolution 640x480) and send it to a PHP script in a predefined server. The PHP script will then store the photo in the server directory so that it could be viewed from any browser. This action can also be activate by just pressing the SELECT key on the surveillance phone. The following image is the photo uploaded by the Pyhton script:


  2. Sending an SMS with the word "call" (without quotation marks) will tell the phone to dial a phone number that has been specified in the script. This way you can have the surveillance phone call you so that you can listen-in on what is going on at the location of the surveillance phone. This action can also be activate by pressing the nr. 2 key on the surveillance phone.
The script will keep running and responding to the SMS codewords until it is manually turned off.

The Python script can be download here: jaans_camera_application.py
The PHP script can be download here: phone_surveillance_upload.txt

Further development

The script can easily be modifeid so that after receiving an SMS codeword it will continually upload photos (like a webcam) and another SMS codeword will make it stop.

The script could also be modified so that instead of calling a predifend phone number it would dial the number that sent the SMS codeword "call".

Tuesday, November 21, 2006

Tagging and social bookmarking

Last week we were given another assignment in our CSC course. We were asked to study popular sites that are related with tagging and social bookmarking: del.icio.us, Digg, Technorati and Flickr.

Del.icio.us

So let's start with del.icio.us - a social bookmarking site based on tags and metadata. I created an account there at the beginning of the IMKE course but I haven't really gotten comfortable with using it. I don't even use bookmarks that much. I used to have a ton of bookmarks but today I only use bookmarks as a reminder to visit some sites later in the future or as a collection of links (reference actually) for some specific project.

The problem with bookmarks is that they often tend to get out-of-date and you can often find newer and more relevant information somewhere else. I am a big fan of Google and it's the #1 tool for me on the web. By constantly searching for new information (instead of browsing old bookmarks) you can discover a lot more on the web and find new useful sites that you newer knew existed.

If it's a great site I will visit it often and over time memorize the address. If I don't visit it regularly I still remember the way I found it in the first place or some keywords so that I can always find it again with the help of... Google.

When I do bookmark something I like to have my own system and hierarchy. I want to have control over the way they are displayed, categorized, bundled etc. Del.icio.us restricts your freedom and forces you to rely solely on tags. I don't like systems that force you to behave in an uncomfortable manner. Maybe I'm still too "old-school" but del.icio.us is currently not for me.

Digg

Next up, Digg.com - a social driven content website where users post links to articles which are commented and voted by others. I haven't used Digg sepcifically but I have found some good links through... you guessed it... Google searches. Out of the 4 sites covered by this post I think Digg.com is probably the one I end up visiting most often. Maybe I will start using it more in the future but right now it's not on my list of "must visit pages".

I do however strongly recommend to check out Digg labs. They have some really cool data visualization applets (Swarm and Stack) which display real-time information of users adding and accessing Digg.com content.

Technorati

Technorati sounds awfully similar to the Estonian technology related tv-/radio show/webblog called Tehnokratt run by Peeter Marvet. Technorati is basically a blog tracker with some good search functionalities. However I still don't see any practical reason why I should be using it instead of Google. It seems to me thah most people use it to promote their own blog and to get some more traffic and/or links. I also tried to register my own blog there just for the hell of it but I couldn't because the site was overloaded with traffic. Oddly this also happened with Digg.com as well.

Flickr

Ahh... the infamous Flickr. The photo sharing site that everybody is talking about. I have used the site numerous times to look for photos under the creative commons license. It's a great database of photos but I wouldn't use it to store my own photos. When I put some picture up I usually do it so that my friends could see them... most of my friends are in Estonia and that is why I wouldn't want to put my photos on a server outside of Estonia. When your viewing or uploading an album with over 100 photos then speed is still a critical issue. This will probably become a non-issue in the near future but currently it can still cause problems. I also like to keep interfaces minimal and have full control over the way my photos are organized and displayed. To better understand what I'm talking about you can have a look at my own photo gallery.

Flickr is a good tool for displaying and/or advertising photos for artistic or commercial reasons and to get some feedback from fellow photographers. Then again, a photo-blog is more personal and unique - check out Kadi's photo-blog for example.

Wrapping up...

I think there are some good features in all of the 4 sites and they each serve their purpose for particular groups of people (apparently I'm not in any of those groups yet... I'm just your average googler). It's definitely going to be interesting to see how they will develop in the future and in which direction. I was particularly impressed with Digg labs and their visualization applets and hope to see more development in this field.

Wednesday, November 15, 2006

Wireless fidelity in Tallinn

When it comes to WiFi Estonia is probably one of the most covered countries in the world. I have a personal WiFi router at home, I have one in the office, there's plenty of wireless connections at my school... basically I spend most of my time in an accessible WiFi hotspot. It is actually quite difficult to find a place in Tallinn which is not covered with a wireless signal.

But how secure is the average wireless router? Finding some answers to this question was one of our assignments in the SP course. At home I have secured my connection using WPA-PSK encryption and by not broadcasting my network SSID. WPA is not perfect (WPA2 would be better) but it's the best that my router can support - hey at least it's better than WEP and keeps out 99% of the population.

To find out how others are securing their wireless networks we took a small drive with Ivo around Tallinn and stopped in a few locations to monitor wireless network activity. I used a program called KisMAC which shows you all the wireless networks in range of your receiver along with details about it's configuration (SSID, encryption type, supported data rate etc.). KisMAC also has a nifty little feature which enables you to passively monitor wireless network traffic. This way you can even see all the hidden networks (like mine at home) and the client computers connected to the network.

Okay, so without further a due here are the summarized results for locations where we scanned for WiFi networks (click the image for a larger view).

I was actually a bit surprised to discover that most networks (about 70%) were using at least some form of encryption. Indeed most of these were using WEP encryption which can be cracked relatively easily (even KisMAC has built-in tools for this purpose) but nevertheless WEP prevents most people access to your network.

Regarding the frequency of access points the results speak for themselves. While driving from Nõmme towards the center of the city I picked up over 70 networks during the first 4-5 kilometers alone. No matter where you are in Tallinn chances are that there are at least 1 or 2 WiFi networks within your range. Given some time and a few good cracking tools you could probably get Internet access from most of them.

For home users WiFi security might not be such a big concern but for businesses this could have disastrous consequences.