Monday, May 27, 2013

May 27!

Results are announced and this project is officially selected to be a part of Google Summer of Code 2013

Project Title:   Android suppport for secure Darknet connections and an Android port of Freenet

Mentoring Organisation:        The Freenet Project
Mentor:                                   Florent Daignière


 After a series of consultations with my mentor and other developers, the priorities are changed. Now, higher priority is given to establishing secure darknet connections on a client application of freenet compared to porting freenet. Also, synchronising and exchange of datastores (pseudo-sneakernet) has been excluded as of now. This is mainly because of the time-constraints.


Objective:

To develop an android application, (herewith called NC Node), based on QR and Wi-Fi Direct that can securely exchange node reference of its parent node (normal Freenet node running Fred-Staging code, with minor modifications, herewith called C-Node) with node reference of another NC Nodes' parent when two NC nodes meet.
(Note: An NC and corresponding C Node are owned by the same person)

To develop a method to connect NC node and its parent securely at home. Adding functionality so that, the NC node and its parent are 'synced' periodically whenever they are in geographical proximity.

To port fred-staging code to android i.e. to create C-Nodes that can work on android platform.

Sunday, May 19, 2013

First Post


Through this blog, I would like to publish my weekly updates regarding the GSOC 2013 project

"FREENET PORT ON ANDROID - UTILIZING QR AND WI-FI DIRECT TECHNOLOGIES"

Short Description:

A P2P platform like freenet should definitely have an Android version. Since it is a resource intensive application, it might consume a lot of battery/data. My objective is to utilize the technologies, pre-built into android (Wi-Fi direct and QR), to save upon battery/data and to make it user friendly where ever possible. 

The power problem is overcome by making two versions of the application, a resource intensive and a light weight. The resource intensive application runs on laptops,homeservers etc. while light weight application on android mobiles. These two applications communicate with each other over Wi-Fi direct (i.e. no data/internet connectivity is required). 

We plan to use QR code as a means to establish darknet connections. Two nodes connect when they scan each other's QR codes. This provides a very user friendly and secure alternative to run darknet in a censored environment. 

Finally, we plan to utilize Wi-Fi direct for exchanging popular content on the data stores when two nodes meet. This lessens the burden on actual internet connectivity 

With smart phones, smart cameras and smart TV sets evolving this project appears rewarding

Objective:

To port freenet to android and to make two versions of the program. One meant for nodes with solid internet connection (herewith called C-Nodes). These could be laptops or desktops or home servers running on android platform. These would be running the original fred-staging with only minor modifications. This application would consume a fair amount of data as well as battery.Second meant for nodes with little or no internet connectivity and having battery constraints (herewith called NC-Nodes). This is a light weight application and can be run on low end/ normal smart phones. These nodes exist along with C-Nodes and do not exist independently.

  • Porting freenet to android and getting it to work
  • Using QR codes to securely exchange node references
  • Working with Wi-Fi direct and establishing a secure connection between an NC-Node and its parent C-Node 
  • Adding automatic sync functionality that syncs the data-stores and darknet peer list on NC node and its parent C-Node when they are in geographical proximity
  • Establishing a connection between NC node and darknet peer C-Nodes.
  • Adding functionality to route some of the requests of NC through peer C Node
  • Adding functionality to use QR codes to securely exchange node references between NC nodes 
  • Adding functionality to exchange popular content of their data-stores whenever two NC nodes meet

Mentoring Organisation: Freenet
Mentors: To be declared on May 27

The official starting date of the project is June 17, but I have already started preliminary work including compilation of wrappers and libraries suitable for android

- Nitesh Bharadwaj