Skip to content
shakirali edited this page Aug 4, 2011 · 5 revisions

Background

There are several social, economic and commercial reasons to store location information of general public. However the way these things are stored and handled have raised several concerns about data privacy. These concerns are to the extent that generally people are not interested in sharing their personal information to organisations or other interested parties. On the contrary it is also evident that millions of people share their location publicly through social networking sites and tools without knowing the consequences of those actions.

Objective

We would like to build a system which stores and shares personal location information without compromising security and privacy of individual users. It allows organisations to use person's location information, with person's consent, without ability to track that person with the provided information.

Case Studies

Highway motor authority might be interested in average speed of motorist on motor ways. Motorist would be interested in providing this information only if they are sure that authorities would be unable to track their personal and vehicle information with that data.

GeoStore implementation

Geostore is a REST based service with data stored in SQL database. This application is implemented in Asp.net and is deployed using Windows Azure.

Geostore Data Model

Initially Geostore data model is based upon location information which comes from mobile phones. In future it will be extended to store data generated from devices and applications such as desktops, specialised GPS devices, twitter, facebook and foursquare etc.

Geostore service

Geostore is Windows Azure service and it is implemented in asp.net. We have used Windows Component Framework (WCF) to implement this service. This service exposes one interface:

[ServiceContract] public interface IGeoStoreService { [OperationContract] [WebInvoke(UriTemplate = "UploadFile", Method = "POST")] void UploadFile(Stream fileContents); }