GHM — GNU Hackers' Meetings

GNU Hackers' Meeting 2014 — Munich, Germany

The eighth GNU Hackers' Meeting took place August 15–17 2014 in Munich, Germany.

See our video page for video recordings.

The GNU Hackers' Meeting is a friendly, semi-formal forum to discuss technical, social and organizational issues concerning free software and GNU. It is open to all people who have an interest in the GNU Project and its goals.

This year's GHM is hosted by TUM, the Technische Universität München. See the practical information below for how to get there.

[Cartoon GNUs in Bavarian Dress]

Programme

Note: The views presented at GHM 2014 are the opinions of the respective speakers. They do not necessarily reflect the policy of the GNU Project or the Free Software Foundation.

Programme of events for GHM 2014
TimeEventPresenter
Friday 15 August
10:00 – 10:30Welcome and Introduction
10:30 – 11:30

Knock: Practical and Secure Stealthy Servers

Today, port scanners can scan all IPv4 addresses in less than one hour. Port knocking is a method for making TCP servers less visible on the Internet. The basic idea is to make a TCP server not respond (positively) to a TCP SYN request unless a particular “knock” packet has been sent first. This can be helpful for security, as an attacker that cannot establish a TCP connection also cannot really attack the TCP server. There are a bunch of existing user-space tools, such as Knock Knock and knockd. Most of these implementations send some other traffic (such as a UDP packet) to the target host to have it (briefly) open the server port. We present Knock, an implementation of port knocking in the Linux kernel which offers a simple, robust way for user applications to achieve both — authentication of the communicating parties and (given a sane protocol) integrity protection of the TCP transmission. “Knockified” traffic does not differ in any way from normal TCP traffic and Knock works well for clients behind NATs, as current research shows.

Knock ships as a set of patches to the Linux kernel together with a shared library which enables users to nockify their user-space applications without having to write any line of code.

Julian Kirsch
11:30 – 12:30

Special Guest: FSFE

Christian Kalkhoff
12:30 – 13:30Lunch
13:30 – 14:00Keysigning
14:00 – 15:00

We're building the GNU System!

GNU hackers have been building it for three decades, and now GNU Guix is bundling it up together! Two years ago in Düsseldorf Guix was introduced as a possible way to build the GNU system distribution. So much hacking since then! We'll present that and showcase the nifty system configuration and installation tools that have landed recently. We'll talk about the road to version 1.0 of the GNU system and beyond.

This talk is also a call to GNU hackers to unite and shape up the system. Let's GNU things together!

Ludovic Courtès
15:00 – 15:30Afternoon Break
15:30 – 16:00

Unfork!

“Fork me on BinHub” is getting hype these days. But it's even more interesting to merge, or unfork, similar projects projects, and making them stay that way. In this session I'd like to present some of the choices I made to merge my projects with others, to prevent gratuitous forks, what challenges we face to get further, and get feedback and experience from the audience.

Sylvain Beucler
16:00 – 16:30

Taler: Taxable Anonymous Libre Electronic Reserves

This talk will introduce Taler, a Chaum-style digital currency using blind signatures that enables anonymous payments while ensuring that entities that receive payments are auditable and thus taxable.

Florian Dold
 
Saturday 16 August
 
10:00 – 10:30

Who maintains the maintainers? An overview of the GNU Administration

While our software forms the visible face of GNU, behind the scenes many people are working to ensure that the organization can consistently and efficiently support the development of the GNU system. I will give an overview of the various teams that work to maintain GNU, presenting the jobs they do, connecting faces to familiar names, and showing where there is room for your help.

Brandon Invergo
10:30 – 11:00

Group OTR

In recent years instant messaging (IM) gained a lot in popularity. Virtually everyone uses one or more IM solutions (e.g. WhatsApp, Skype, iMessage, Facebook Messenger etc.) for private conversations. Especially the ease of use that comes with this kind of online communication combined with the high availability through the popularity of smartphones makes IM attractive for a broad audience. Also companies have discovered IM as a suitable solution for online business meetings, particularly because it causes no additional costs.

At its heart IM emulates the behavior of a private conversation held in person. Naturally people expect their face to face conversations to have several properties. For example for any party that did not participate in the conversation the (hopefully) honest word of the participants is the only proof of what was said during the conversation (given that no one recorded it). To be a suitable alternative to face to face conversations IM should also satisfy these properties. It is also not astonishing that people without a strong knowledge in computer science and/or cryptography already expect their private online conversation to be held under these constraints.

However, the dominant IM solutions do not satisfy all of these properties. Security concerns fuelled by the revelation of surveillance activities of government institutions last year have lead to a more wide spread awareness for the need to secure communication over the internet. Therefore we are implementing libgotr which tries to solve this problems.

Markus Teich
11:00 – 12:00

Introducing GNU Posh

Jose Marchesi
12:00 – 12:30

Self Study with Glean

'Glean' facilitates self-study through tutorials, and 'problems'. The problems are built using different questions types (multiple-choice, open-ended), with arbitrary evaluation rules (e.g. answers could be programmatically evaluated, or based on simple comparison / parsing rules), and rich media support materials (mainly in the form of URIs, which the client renders as it sees fit).

Alex Sassmannsh
12:30 – 13:30Lunch
13:30 – 14:00

Gforth

Gforth is the GNU project implementation of the Forth programming language. This talk will give an introduction in what Forth is, what the goals of the Gforth project are, and how the underlying vmgen technology can help to implement other programming languages. An outlook of future development will be given.

Bernd Paysan
14:00 – 15:00

GNU Name System

This talk introduces the design and implementation of the GNU Name System (GNS), a fully decentralized and censorship-resistant name system. GNS provides a privacy-enhancing alternative to DNS which preserves the desirable property of memorable names. Due to its design, it can also double as a partial replacement of public key infrastructures, such as X.509. The design of GNS incorporates the capability to integrate and coexist with DNS. GNS is based on the principle of a petname system and builds on ideas from the Simple Distributed Security Infrastructure (SDSI), addressing a central issue with the decentralized mapping of secure identifiers to memorable names: namely the impossibility of providing a global, secure and memorable mapping without a trusted authority. GNS uses the transitivity in the SDSI design to replace the trusted root with secure delegation of authority, thus making petnames useful to other users while operating under a very strong adversary model.

Christian Grothoff
15:00 – 15:30Afternoon Break
15:30 – 16:00

Ode to a Childhood Dream

I will present a GNU epsilon cross-compiler to the Commodore 64, finally bringing free software to my first computer, twenty-five years later. The clean extensible design of GNU epsilon allows easy portability and a high-level programming style — even on a machine with an 8-bit 1MHz processor and 64KB of RAM. A sprite demo will be included.

Luca Saiu
16:00 – 16:30

Call for action: A data visualisation layer

Data visualisation is an important aspect of analysis. Whilst there are several free data visualisation libraries available, none have all the features one would desire to include in a comprehensive data analysis tool.

In this talk, I will review the existing solutions, and provide suggestions for providing an extensive library which could fill this gap in the GNU system.

John Darrington
 
Sunday 17 August
 
10:30 – Closed session for GNU maintainers.GNU Maintainers only.

Registration

Attendance is free of charge, but prior registration is essential. You can register using the web form or by email.

To register by email, send the following details to ghm-reg@gnu.org:

You are welcome to make a small (or large) donation if you want to support future GNU Hackers' Meetings.

The FSF has kindly set up a small fund to help finance documented travel expenses for GNU maintainers and contributors, past and present. Dispersements are approved based upon the applicants' ability to cover expenses from other sources, the extent to which she has contributed to GNU and the total demand upon the fund. If you qualify and you need financial assistance to attend, please mention this fact in your registration e-mail, along with all the relevant details including the minimum amount that would permit you to attend the event, no later than June 13 2014. Applications for travel assistance are now closed.

Practical information

Venue

The meeting takes place in the Leibnitz-Rechenzentrum at the Garching Forschungszentrum Campus of the Technische Universität München.

Hotels

There are numerous hotels in the vicinity.

Public transportation

Munich is well served by air, rail and road, and getting to the venue from the airport and railway station is possible by the local public transport. See this link.

If you are traveling by car, save money and the planet by bringing a passanger. Use the public mailing list to find a travel partner.

T-shirts

T-Shirts will be available for purchase. Stocks are limited. Price: €13. Preference will be given to those who pre-ordered.

Thanks

We wish to thank TUM who graciously offered to host the meeting.