Lese-Ansicht

Are Free Software developers at risk?

Are Free Software developers at risk?

Free Software is everywhere, with studies estimating that it is present in about 96% of the applications that we use. But what are the responsibilities and liabilities of the Free Software developers? A potential threat to Free Software developers looms in the form of an ongoing lawsuit in the UK involving Bitcoin and its core developers.

Bitcoin (BTC) is a cryptocurrency created in 2009 that operates under the MIT Free Software licence. After its creator disappeared, a group of software developers continued to develop Bitcoin independently. Currently, Dr. Craig Wright, who claimed to be the creator of Bitcoin, is suing the Bitcoin developers in the UK courts through his company, Tulip Trading Limited (Tulip). This company claims to have lost £3 billion worth of bitcoin due to a hack that compromised the private keys, resulting in the loss of access to the funds. In this lawsuit Tulip is demanding that the Bitcoin developers provide access to the lost Bitcoin, arguing that the developers have a legal obligation to provide access or offer equitable compensation or damages.

As such, this legal case is currently drawing attention to the issue of Free Software developers' liability, in particular the extent to which they are responsible to their users.

UK High Court’s opinion: Developers have no legal duties or a duty of care in this case, but they do have certain duties in some specific situations.

The High Court considered whether software developers and controllers of digital asset networks bear legal obligations to cryptocurrency holders who rely on their software. The court ruled in favour of the developers, stating that as a "fluctuating body of individuals", the developers could not realistically maintain ongoing obligations. The court rejected the notion that developers should be compelled to provide software updates upon the request of digital asset owners, emphasising the absence of any explicit commitment or assurance by the developers. Regarding the alleged tortious duties, the Court determined that the developers did not owe Tulip a duty of care, highlighting that Tulip's loss was solely economic.

A duty of care is a legal responsibility imposed on an individual that requires them to follow a level of reasonable care when conducting any acts that could endanger others.

However, the court recognized that, in certain cases, software developers have specific duties. For instance, developers must exercise caution to avoid harming users' interests and may have an obligation to remedy bugs or faults in the system.

The court also acknowledged that the disclaimer in the MIT license, broadly disclaims liability for software issues. However, the court did not confirm whether this disclaimer absolved BTC Network developers of responsibility for its operation. This is because:

  • the MIT disclaimer has never been litigated, and the court is free to decide and set precedent.
  • such disclaimers are not easily found when using software.

UK Court of Appeal’s opinion: Arguable that developers owe some fiduciary legal duties

On appeal, the Court of Appeal (the second highest court in the UK) overturned the High Court's decision, concluding that it was at least arguable that the developers owe fiduciary legal duties to cryptocurrency owners. The court noted the exclusive control of the Bitcoin software code by a small group of developers and their decision-making role on behalf of all Bitcoin owners, resembling fiduciary responsibilities. The court also noted that only a handful of developers have exclusive access to the Bitcoin software code on GitHub. For example, if a Bitcoin owner notices a bug, he or she is unable to fix it because only the developers with access can do so, and they have to agree to do so. In the eyes of the court, this is a clear exercise of the de facto power of the developers. The court completely missed the point that no one can prevent others from applying a fix to the code - that is part of the fundamental freedom that comes with Free Software: if the developers of a particular repository refuse to apply needed fixes, the community can fork the project and bypass those developers.

Furthermore, code is speech. Freedom of expression includes expression in the language of computer code as well. Imposing disproportionate duties on Free Software developers forces them to change their code, and therefore infringes on their freedom of expression. The court also observed that the developers have a positive duty to fix bugs and code errors and a negative duty to refrain from acting in their own self-interest.

In summary, Tulip's case raises significant legal questions, and according to the latest developments, Tulip must prove ownership of the alleged stolen bitcoins in a preliminary trial.

Chilling effect on Free Software development?

Common law in the UK (and other countries) is developed through court decisions and precedents. When a court makes a decision in a case, it establishes a legal precedent that serves as a guide for future cases with similar circumstances. Lower courts generally have to follow the precedents set by the higher courts. Courts in common law countries tend to also borrow concepts and precedents from other countries if there is no local precedent available. The law and legal scholarship around Free Software developers’ duties is underdeveloped and almost non-existent. If Tulip succeeds in their case, it may set an international legal precedent, opening the floodgates to litigation. This means that any user of Free Software could potentially sue developers for alleged breaches of duty.

A fiduciary duty, as claimed by Tulip, refers to the legal duty of a person or entity to act in the best interests of another party, typically referred to as the beneficiary or principal. This duty is characterized by trust, confidence, and reliance on the fiduciary to act ethically and responsibly on behalf of the beneficiary. Fiduciary duties exist in only very specific relationships, like those of trustees, solicitors, agents, partners, and company directors. Attaching these duties to Free Software developers is unprecedented and disproportionate.

Free Software production, a catalyst for technological innovation, relies on voluntary contributions. Imposing fiduciary duties (or any disproportionate duties) on developers could deter them from participating in Free Software projects, fearing legal repercussions. This could lead to a chilling effect, where developers opt for more restrictive licensing, or refrain from sharing their code altogether, or release the software only in jurisdictions where there are no duties out of fear of litigation. The results of such an effect would be disastrous; stifling innovation and potentially halting the progress of specific Free Software endeavours.

In essence, if the court rules in favour of Tulip, it can have far-reaching consequences that can be detrimental to the Free Software developers in the following ways:

  1. Courts may impose an active duty on Free Software developers to fix what the courts deem to be problematic issues.
  2. In future courts may impose an active duty on Free Software developers to not cause any bugs that impact users. This can potentially expose the developers to litigation for just letting through a bug or failing to spot a bug.
  3. Courts may also impose obligations on Free Software developers that require them to compromise the cryptographic integrity guarantees of the software. This could involve mandates to weaken encryption algorithms or provide backdoor access, directly undermining the security measures designed to protect user privacy and data confidentiality. Such orders would not only compromise the effectiveness of encryption software but also the tools such as secure file deletion or data recovery.

Free Software development thrives on the collaborative efforts of developers worldwide, continually evolving. The developers’ autonomy inherent in Free Software must not be jeopardized by the fear of unjust litigation. FSFE remains vigilant in safeguarding against threats to developer autonomy that could stifle innovation. In the light of these concerns, we call upon the developers to persist in their invaluable work without fear.

Support FSFE

  •  

VirtualBox 7.0.16 – anfängliche Unterstützung für Linux 6.8 und 6.9

Die neueste Version der kostenlosen Virtualisierungs-Software VirtualBox 7.0.16 ist eine Wartungs-Version und bringt daher keine allzu großen Neuerungen mit sich. Nennenswert ist allerdings die anfängliche Unterstützung für Linux-Kernel 6.9 (Linux Host und Gast) und 6.8 (Linux-Gast-Erweiterungen). Die Unterstützung für Linux-Kernel 6.8 bedeutet, dass Du ab sofort auch Distributionen innerhalb einer virtuellen Maschine betreiben kannst, die Kernel 6.8 einsetzen. Die anfängliche Unterstützung für Kernel 6.9 bedeutet, dass Du VirtualBox auch auf Computern installieren kannst, die mit Linux 6.9 laufen. Für Linux […]

Der Beitrag VirtualBox 7.0.16 – anfängliche Unterstützung für Linux 6.8 und 6.9 ist von bitblokes.de.

  •  

Plasma 6.1 erhält Explicit Sync

Explicit Sync ist ein wichtiger Schritt, damit sich Wayland und proprietäre Nvidia-Treiber besser vertragen. Die kürzlich in ein Wayland-Protokoll gegossene Technik wird in Plasma 6.1 verfügbar sein.

Quelle

  •  

Lakka 5.0 – Retro-Spielekonsole – Raspberry Pi 5 unterstützt

Ab sofort gibt es mit Lakka 5.0 die neuste Version der speziellen Linux-Distribution. Es ist eine schlanke Linux-Distribution, die einen kleinen Computer in eine vollwertige Retrogaming-Konsole verwandelt. Seit Version 4.3 gibt es einige nennenswerte Änderungen und Neuerungen. Lakka 5.0 basiert etwa auf dem Build-System von LibreELEC 11.0. Weitere Neuerungen und Änderungen in Lakka 5.0 Das Team hat RetroArch auf Version 1.17.0 aktualisiert. Mesa ist als Version 24.0.4 vorhanden. Ebenso gibt es aktualisierte Linux-Kernel. Das sind: Die entsprechenden Systeme und Emulatoren […]

Der Beitrag Lakka 5.0 – Retro-Spielekonsole – Raspberry Pi 5 unterstützt ist von bitblokes.de.

  •  

SD-Karten mit 4 TByte Speicher angekündigt

Western Digital hat auf der NAB 2024 einige neue und spannende Technologien sowie Storage-Lösungen angekündigt. Ziemlich beeindruckend finde ich die Ankündigungen von microSD-Karten mit 2 TByte Speicher und SD-Karten mit 4 TByte Platz. Ein Raspberry Pi 5 mit so viel Speicherplatz ist fast schon ein vollwertiger Computer. Wobei man hier anmerken muss, dass es microSD-Karten mit 1,5 TByte bereits gibt und das ebenfalls ordentlich viel Platz ist. Genügend Platz kann man allerdings nie haben und daher ist die Ankündigung von […]

Der Beitrag SD-Karten mit 4 TByte Speicher angekündigt ist von bitblokes.de.

  •  

ClamTk nach über 20 Jahren eingestellt

Der Entwickler von ClamTk hat angekündigt, dass er das Projekt nach über 20 Jahren Pflege einstellt. Um es gleich vorwegzunehmen. ClamTk wurde als benutzerfreundliches Frontend für ClamAV entwickelt. ClamAV wird weiter entwickelt und auch gewartet, nur das unabhängig davon entwickelte Frontend wird nicht mehr gepflegt. Der Entwickler gibt einige Gründe an, warum er das Projekt nicht weiterführen möchte und die hören sich ziemlich frustriert an, wenn ich ehrlich bin. Hier eine grobe Übersetzung davon: Laut eigenen Aussagen könnte er noch […]

Der Beitrag ClamTk nach über 20 Jahren eingestellt ist von bitblokes.de.

  •  

Raspberry Pi: Umzug von SD-Karte auf SSD in wenigen Schritten

Der Raspberry Pi hat sich in den letzten Jahren von einem kleinen Minicomputer für Bastler und Nerds zu einem vollwertigen und verhältnismäßig leistungsfähigem Rechner entwickelt. Nicht wenige Anwender freuen sich darüber, für wenig Geld einen vollwertigen Miniserver zu bekommen. 

Beim Einsatz des Raspberry Pi für den produktiven Einsatz als Server ist zu beachten, dass auch die angeschlossene Hardware hierfür geeignet sein sollte. Ein Gehäuse, bei dem er Pi überhitzt, ist genau so schädlich wie eine SD-Karte als Festplatte, da diese nicht für den Dauerbetrieb geeignet ist.

Durch den Einsatz rund um die Uhr gibt es sehr viele Schreib- und Lesevorgänge auf der SD-Karte. Hierfür sind diese Karten aber nur bedingt geeignet. Bei den ersten Raspberry Pi Generationen hatte ich sehr häufig Datenverlust, weil die SD-Karte den Geist aufgegeben hat. 

Inzwischen läuft auf dem Pi bei mir eine Instanz von Home Assistant. Hier werden rund um die Uhr Daten aufgezeichnet und Automationen ausgeführt. Auch andere Dienste laufen hier, von denen ich keinen Ausfall erleiden möchte. 

Außerdem sind die Lese- und Schreibgeschwindigkeiten einer SD-Karte sehr limitiert. Eine moderne SSD ist um ein Vielfaches schneller. Das wird vor allem dann deutlich, wenn man in Home Assistant Datenmengen abfragt, z.B. Diagramme anzeigt. Ladezeiten von mehreren Sekunden sind dann keine Seltenheit.

Die Konsequenz daraus ist, dass ich den Raspberry von einer SD-Karte auf eine SSD-Karte umziehen möchte. Dadurch, dass hier ein Produktivsystem läuft, möchte ich alle Installationen, Daten und Einstellungen möglichst verlustfrei auf das neue Medium umziehen. Wie ich das gemacht habe, erfahrt hier in folgendem Tutorial.

Schritt 0: Geschwindigkeit testen (optional)

Um einen Geschwindigkeitsvorteil in messbare Größen zu fassen, kann man als Referenz einen Geschwindigkeitstest der SD-Karte machen. Mit dem folgenden Befehl werden Beispieldateien geschrieben. Der Befehl gibt aus, wie schnell die Geschwindigkeit dabei war. 

$ dd if=/dev/zero of=/tmp/speedtest1.img bs=20MB count=5
5+0 records in
5+0 records out
100000000 bytes (100MB, 95 MiB) copied, 11.9403 s, 8.4 MB/s

Wenn der Umzug fertig ist, kann man diesen Test wiederholen. Bei mir kam ich von ca. 8,4 MB/s Schreibgeschwindigkeit auf 168 MB/s. Das hat sich mal gelohnt!

Schritt 1: SSD erstmals anschließen

In meinem Fall handelt es sich um eine externe SSD, die über USB 3.0 angeschlossen wird. Nachdem ich sie angesteckt habe, prüfe ich ob sie rechtmäßig erkannt wird, indem ich den folgenden Befehl eingebe und in der Ausgabe nach der SSD suche.

$ lsblk

Schritt 2: Installation von RPi-clone

Auf Github gibt es ein kleines Projekt, das viele Funktionen beinhaltet. Das Programm kopiert den Inhalt der SD-Karte auf die SSD, sodass von ihr gebootet werden kann und alle Einstellungen vorhanden sind.

$ git clone https://github.com/billw2/rpi-clone.git
$ cd rpi-clone
$ sudo cp rpi-clone /usr/local/sbin/sys-clone
$ sudo cp rpi-clone-setup /usr/local/sbin/sys-clone-setup

Schritt 3: Services stoppen und Kopiervorgang starten

Am besten ist es, wenn kein Service mehr läuft und der Kopiervorgang ungestört durchlaufen kann. Daher erst prüfen, was alles läuft, danach einzeln beenden

$ sudo systemctl stop cron
$ sudo systemctl stop nginx
$ sudo systemctl stop docker usw.

Schritt 4: Kopiervorgang starten

Aus dem Check von Schritt 1 kennen wir bereits die Bezeichnung der Festplatte. Auf diese müssen wir nun verweisen mit dem Befehl:

$ rpi-clone sda

Der Wizard hält zunächst an und berichtet uns über den Zustand des Systems. Wenn alles korrekt ist, kann der Vorgang mit der Eingabe von „yes“ gestartet werden.

Schritt 5: Raspberry Pi herunterfahren und von SSD booten

Nach Ende des Kopiervorgangs fährt man den Raspberry Pi herunter.

$ sudo shutdown now

Anschließend von der Stromversorgung trennen, die SD-Karte entfernen, und die Spannungsversorgung wieder herstellen. Jetzt bootet der Raspberry von SSD und ist sehr viel schneller.

The post Raspberry Pi: Umzug von SD-Karte auf SSD in wenigen Schritten first appeared on bejonet - Linux | Smart Home | Technik.

  •  

Ubuntu 24.04 LTS Beta ist verfügbar & Derivate

Das Ubuntu-Team hat die Beta-Version von Ubuntu 24.04 LTS Noble Numbat zur Verfügung gestellt. Sie hat sich wegen des xz-Problems bekanntlich etwas verzögert. Die Beta-Version bietet wie üblich nicht nur Abbilder für Ubuntu Desktop, Server und Cloud, sondern es gibt auch Images für die zahlreichen Derivate. Die Beta-Abbilder sollten keine sogenannten Showstopper haben und eine normale Nutzung sollte möglich sein. Allerdings ist es eine Beta-Version, die sich möglicherweise nicht für den produktiven Einsatz eignet. Noble Numbat bietet Linux-Kernel 6.8, GNOME […]

Der Beitrag Ubuntu 24.04 LTS Beta ist verfügbar & Derivate ist von bitblokes.de.

  •  

Ubuntu 24.04 Beta ist am Start

Eine Woche später als geplant wurde jetzt die Beta zu Ubuntu 24.04 LTS »Noble Numbat« freigegeben. Die stabile Veröffentlichung ist trotz der Verschiebung für den 25. April vorgesehen.

Quelle

  •  

Linux-Desktop: Vier Prozent Marktanteil waren keine Einmonatsfliege

Während Linux das dominante Betriebssystem in vielen Bereichen ist, tut sich das freie System auf dem Desktop noch immer schwer. Jahrelang ein Nischendasein fristend, erreichte Linux in der weltweiten Verbreitung laut statcounter.com im Februar 2024 erstmals die 4-Prozent-Hürde und konnte diese Marke im Folgemonat halten.

  •  

Slay the Spire 2 angekündigt – mit neuer Spiele-Engine

Ich bin ein ziemlicher Fan des Deckbau-Roguelike Slay the Spire. Ich habe das Spiel in einem Humble Bundle erworben und bereue es nicht. Das macht ziemlich Spaß. Das Entwickler-Team von Mega Crit hat nun Slay the Spire 2 angekündigt. So groß die Vorfreude auch ist, Du wirst Dich in Geduld üben müssen. Veröffentlichungsdatum für Slay the Spire 2 ist 2025. Auf Steam schreibt das Team, dass das Spiel komplett neu in einer neuen Spiel-Engine programmiert wurde. Mega Crit ist Sponsor […]

Der Beitrag Slay the Spire 2 angekündigt – mit neuer Spiele-Engine ist von bitblokes.de.

  •  

Podcast über xz-Backdoor und worüber wir reden müssen

Seit 1,5 Jahren produziere ich den Podcast Risikozone, in dem es um Themen der IT-Sicherheit und Open-Source-Software geht. Die xz-Backdoor ist natürlich ein heißes Thema, weswegen es in der heute veröffentlichten Episode 45 genau darum geht.

Die knapp einstündige Podcastepisode ist für alle interessant, die nochmals einen technisch orientierten Überblick über die Geschehnisse suchen. Da die Thematik recht komplex ist und aus verschiedenen Blickwinkeln beobachtet werden kann, können weitere Podcastepisoden hierüber noch folgen. Ich möchte aber darauf eingehen, dass man diese Backdoor nicht nur auf den Code beschränken sollte. Es gibt es viele verschiedene Ebenen, die allesamt jeweils Beachtung finden sollten:

  • die technische "Exploit"-Ebene
  • die zwischenmenschliche Ebene
  • die Ökosystem-Ebene

Technisch ist der Exploit ausgeklügelt: Die Backdoor beschränkt sich nicht nur auf die bloße Möglichkeit einer Remote-Code-Execution, sondern verwendet darüber hinaus noch ein eigenes Protokoll, mit dem die Befehle signiert und verschlüsselt innerhalb des unscheinbaren N-Wertes im Zertifikat eines SSH-Handshakes übermittelt werden. Durch die Signatur können nur Befehle ausgeführt werden, die mit einem (wahrscheinlich nur dem Angreifer bekannten) ED448-Schlüssel signiert wurden. Die Verschlüsselung erfolgt zwar mit einem statischen Schlüssel, der aus dem ED448-PubKey abgeleitet wird, erfüllt jedoch trotzdem seinen Zweck: Obfuskierung. Mit anderen Worten: wäre die Lücke nie aufgefallen, hätte man sie in der freien Wildbahn nahezu unmöglich durch Traffic-Analysen finden können.

Das ist allerdings nur die erste von drei Ebenen: die Art und Weise, wie die Lücke hereingeschummelt wurde, weist Komponenten des Social Engineering auf. Die Mühe, über mehrere Jahre eine Identität in verschiedenen Projekten mit teils anfangs legitimen Beiträgen aufzubauen, zeugt auch von einem Plan und Ausdauer.

Schlussendlich sollte man auch nicht vergessen, dass hier eine besondere Konstellation im Ökosystem ausgenutzt wurde. Am einfachsten (und auffälligsten) wäre es, eine solche Lücke in OpenSSH unterzubringen. Es wurde aber auf eine deutlich unbeachtetere und einfacher zu infiltrierende Variante ausgewichen. Die xz-Bibliothek wurde zudem nicht zum Einfallstor, weil OpenSSH darauf zurückgreift (das tut es nämlich nicht), sondern weil einige Distros systemd-notify reinpatchen, was wiederum auf die xz-Lib zurückgreift. Außerdem rüttelt dieser Fall an einem Grundpfeiler der IT-Sicherheits-Praktiken: Updates. Diese Hintertür fand geradezu durch die (häufigen) Updates der Rolling-Release-Distros Einzug - die stabilen Versionen waren noch verschont geblieben. Ist also (zu) häufiges Updaten nun auch nicht mehr richtig? Bringen bald Updates mehr Lücken als sie schließen?

Das alles macht es vor allem noch schwieriger, solche Angriffe zuverlässig zu erkennen. Zudem ist davon auszugehen, dass die Angreifer sich die Verteidigungsstrategie jetzt ganz genau anschauen. Die zukünftige Diskussion sollte sich also darauf konzentrieren, wie man diese Art von Angriffen detektiert und frühzeitig eindämmt.

  •  

Ausgewählten Text mit Firefox übersetzen – selbst getestet

Das Team von Mozilla Firefox arbeitet an einer schicken neuen Übersetzungsfunktion. Damit kannst Du ausgewählte Texte schnell und lokal in andere Sprachen übersetzen. Firefox-User wissen, dass es seit Version 118 eine datenschutzfreundliche Funktion zur Übersetzung von Websites gibt. Die Übersetzung findet lokal statt. Vielleicht kommt es aber vor, dass Du nur einen kleinen Teil einer Website übersetzen möchtest, was den Vorgang natürlich auch entsprechend beschleunigt. Künftig wirst Du Textabschnitte mit dem Cursor markieren und sie gezielt übersetzen lassen können. Du […]

Der Beitrag Ausgewählten Text mit Firefox übersetzen – selbst getestet ist von bitblokes.de.

  •  

Beta-Tester für schnellere Repos bei Linux Mint gesucht

Mehr Geschwindigkeit und höhere Reaktionszeiten? Da bin ich dabei. Das Team von Linux Mint möchte so viele Beta-Tester wie möglich für die neuen und schnelleren Repositories haben. Daher ruft das Team so viele Community-Mitglieder wie möglich auf, die neuen Repos zu testen. So testest Du die neuen, schnelleren Repos Zunächst startest Du das Tool Anwendungspaketquellen und stellst die Standardeinstellungen wieder her. Damit stellst Du sicher, dass Du den offiziellen Mirror benutzt. Im Anschluss bearbeitest Du die Datei /etc/apt/sources.list.d/official-package-repositories.list mit dem […]

Der Beitrag Beta-Tester für schnellere Repos bei Linux Mint gesucht ist von bitblokes.de.

  •  
❌