aboutsummaryrefslogtreecommitdiff
path: root/news/2019-02.inc
diff options
context:
space:
mode:
Diffstat (limited to 'news/2019-02.inc')
-rw-r--r--news/2019-02.inc123
1 files changed, 0 insertions, 123 deletions
diff --git a/news/2019-02.inc b/news/2019-02.inc
deleted file mode 100644
index 7878de6d..00000000
--- a/news/2019-02.inc
+++ /dev/null
@@ -1,123 +0,0 @@
1<article>
2<h3>
3<a NAME="gsoc2019"></a>
4<a href="gsoc.html">2019-02: Topics for GSoC 2019</a>
5</h3>
6<p>
7GNUnet is participating in the Google Summer of Code
8again through GNU. If you are interested in any of
9these projects, reach out to us!
10</p>
11<section>
12<h4>Android Port</h4>
13<p>
14It is time for GNUnet to run properly on Android. Note that
15GNUnet is written in C, and this is not about rewriting
16GNUnet in Java, but about getting the C code to run on Android.
17<br>
18Mentor: <a href="https://www.goebel-consult.de/">Hartmut Goebel</a>
19</p>
20</section>
21
22<section>
23<h4>Help with Continuous Integration setup</h4>
24<p>
25There is a push for migrating our CI to Gitlab. The CI should
26eventually not just run "make check" on various platforms, but also
27perform tests with multiple peers running in different VMs with
28specific network topologies (i.e. NAT) between them being simulated.
29The CI should also be integrated with Gauger for performance
30regression analysis. Running jobs only when dependencies have changed
31and scripting more granular triggers or ideally automatic dependency
32discovery (as done by the autotools) is also important.
33<br>
34Mentor: TBD
35</p>
36</section>
37
38<section>
39<h4>Migrate gnunet-qr from Python 2.7 to C using libzbar</h4>
40<p>
41Python 2.7 is reaching its end-of-life, and we want to get rid
42of the dependency on Python. The existing gnunet-qr tool is a
43rather simple wrapper around python-zbar, which itself wraps
44libzbar. The goal of this project is to directly use libzbar
45to scan QR codes for GNUnet / the GNU Name System (see
46also <a href="https://bugs.gnunet.org/view.php?id=5562">#5562</a>).
47<br>
48Mentor: Christian Grothoff
49</p>
50</section>
51
52<section>
53<h4>re:claimID OpenID Connect performance improvements</h4>
54<p>
55reclaimID is a decentralized identity system build on top of the GNU
56Name System.
57Upon authorization, the user provides a requesting party (RP) such as a website
58with an authorization ticket (e.g. piggybacked in an OpenID authorization code).
59The RP uses information contained in this ticket to
60<ol>
61<li> Retrieve the decryption key from GNS</li>
62<li> Retrieve the user attributes from GNS</li>
63</ol>
64The GNS lookups ensure that the RP receives up-to-date attributes and functional
65decryption keys. However, in particular the RP-specific encryption key
66resolution can be slow and even fail depending on the network topology.
67We propose that in an initial exchange, in particular OpenID authorization code
68flows, we try to incorporate key and maybe even an attribute set in the ticket
69exchange.
70
71In order to mitigate this issue, this project is meant to investigate and implement how...
72<ol>
73<li> ... decryption keys can be added to an initial exchange in OpenID.</li>
74<li> ... initial set(s) of attributes can be piggybacked in OpenID.</li>
75</ol>
76<br/>
77Mentor: Martin Schanzenbach
78</p>
79</section>
80
81<section>
82<h4>re:claimID alternative GNS-based encryption</h4>
83<p>
84re:claimID is a decentralized identity system build on top of the GNU
85Name System.
86The initial design and implementation of re:claimID includes an attribute-based
87encryption module in order to prevent unauthorized access to attributes in the
88name system.
89Our motivation for re:claimID was for it to be name system agnostic, which
90means the design theoretically also works for other name systems such as
91namecoin.
92Other name systems often do not have built-in mechanisms in order to do this.
93Hence, we implemented an ABE access control layer. Our ABE implementation
94requires two third party libraries: libpbc and libgabe. While we could merge
95libgabe into the gnunet service implementation of re:claimID, libpbc is a
96rather large, third party library which lacks packaging in distributions and
97for platforms.
98On the other hand, GNS supports record data encryption using symmetric keys as
99labels.
100If we make the access control layer of re:claimID more generic in order to
101support both ABE and GNS encryption, we could reduce the required depenencies.
102This would result in gnunet packages to include re:claimID by default.
103
104In short, the goals are to...
105<ol>
106<li> ... improve performance by reducing encryption overhead.</li>
107<li> ... reduce dependencies.</li>
108</ol>
109<br/>
110Mentor: Martin Schanzenbach
111</p>
112</section>
113
114<section>
115<h4>Enable all networking applications to run over GNUnet out of the box</h4>
116<p>
117One great problem of the current Internet is the lack of disintermediation. When people want to talk they need a chat service. When they want to share files they need a file transfer service. Although GNUnet already possesses quite advanced integration into Linux networking, a little extra work is needed for existing applications like irc, www, ftp, rsh, nntpd to run over it in a peer-to-peer way, simply by using a GNS hostname like friend.gnu. Once people have added a person to their GNS they can immediately message, exchange files and suchlike directly, with nothing but the GNUnet in the middle, using applications that have been distributed with unix systems ever since the 1980's. We can produce an OS distribution where these things work out of the box with the nicknames of people instead of cloud services. For more information and context, read <a href="https://bugs.gnunet.org/view.php?id=4625">bug id 4625</a>.
118</p>
119<p>
120Mentors: lynX &amp; dvn
121</p>
122</section>
123</article>