Bitfrost/lang-de: Difference between revisions
(fixed Translation instead of Translations) |
No edit summary |
||
(15 intermediate revisions by 9 users not shown) | |||
Line 4: | Line 4: | ||
'''Bitfrost''' ist die Sicherheitsplattform von OLPC. In diesem Artikel versuchen wir eine nicht-technische Einführung zu Sicherheitsproblemen zu geben. Ansätze und Prinzipien zur deren Behebung folgen danach. Diese Lösungsansätze wurden der vollständigen |
'''Bitfrost''' ist die Sicherheitsplattform von OLPC. In diesem Artikel versuchen wir eine nicht-technische Einführung zu Sicherheitsproblemen zu geben. Ansätze und Prinzipien zur deren Behebung folgen danach. Diese Lösungsansätze wurden der vollständigen |
||
[http://dev.laptop.org/git.do?p=security;a=blob;hb=HEAD;f=bitfrost.txt Bitfrost-Spezifikation] (oder seinem [[OLPC Bitfrost|Wiki]]) entnommen. Wir laden dazu ein, diese Artikel |
[http://dev.laptop.org/git.do?p=security;a=blob;hb=HEAD;f=bitfrost.txt Bitfrost-Spezifikation] (oder seinem [[OLPC Bitfrost|Wiki]]) entnommen. Wir laden dazu ein, diese Artikel genau durchzusehen und auf der öffentlichen, von OLPC bereitgestellten [http://mailman.laptop.org/mailman/listinfo/ Mailing-Liste für Sicherheitsfragen] zu diskutieren. |
||
== Einführung und Zusammenfassung== |
== Einführung und Zusammenfassung== |
||
Im Jahre 1971 veröffentlichten die Programmierer Ken Thompson und Dennis Ritchie von der Firma AT&T die erste Version von Unix. |
Im Jahre 1971 veröffentlichten die Programmierer Ken Thompson und Dennis Ritchie von der Firma AT&T die erste Version von Unix. Diesem Betriebssystem, welches im Jahre 1969 als unbezahltes Projekt namens UNICS begann, wurde ein anderer Name gegeben, und es wurde öffentlich von den Bell Labs finanziert, als die Programmierer anboten, Unterstützung zur Textverarbeitung hinzuzufügen. Viele der großen Designideen hinter UNIX bestehen noch heute: Populäre Server-Betriebssysteme wie Linux, FreeBSD und viele andere weisen alle das grundsätzliche UNIX-Design auf. |
||
Die Unix-Version aus dem Jahr 1971 unterstützte nach dem folgenden Modell Zugang zu sicherheitsrelevanten Benutzerdateien: |
Die Unix-Version aus dem Jahr 1971 unterstützte nach dem folgenden Modell Zugang zu sicherheitsrelevanten Benutzerdateien: |
||
Line 15: | Line 15: | ||
* Besitzer kann Datei lesen |
* Besitzer kann Datei lesen |
||
* Datei kann ausgeführt werden |
* Datei kann ausgeführt werden |
||
* Datei erhält den Status "uid" |
* Datei erhält den Status "set-uid" |
||
Diese Zugangsrechte sollten für jeden bekannt sein, denn sie sind |
Diese Zugangsrechte sollten für jeden bekannt sein, denn sie sind ähneln den heutigen Zugangsmodi, die ein Benutzer für seine Dateien beim Betriebssystem seiner Wahl heute einstellen kann. Beunruhigend ist, dass diese Konzept von Rechten bis heute fast der einzige wahre Kontrollmechanismus für einen User über seine Dateien geblieben ist: Ein Benutzer kann sich zwar dafür entscheiden, seine Dateien vor anderen Personen zu schützen, aber er hat keine wie auch immer geartete Kontrolle, was sein eigenes Programm mit seinen Dateien anstellen kann. |
||
Im Jahre 1971 war dies vielleicht noch |
Im Jahre 1971 war dies vielleicht noch akzeptabel: Dies war 20 Jahre vor Entstehung des Webs, und das Bedrohungs-Szenario für die meisten Computer war vollkommen anders als das, dem heutige Anwendungen ausgesetzt sind. Ist es unter diesen Voraussetzungen eine Überraschung, dass wir Viren und Malware heute nicht stoppen können, wenn unsere Art der Verteidigung seit über 35 Jahren unverändert ist? |
||
Die Krux liegt in der Annahme, dass alle durch den Benutzer gestarteten Programme auf einem System die gleichen Fähigkeiten und Rechte haben sollen. 1971 war sieben Jahre bevor das erste internationale paket-orientierte Netzwerk entstand. Das erste Großnetz, das TCP/IP (das heute im Internet verwendeten Protokoll) verwendet, wurde nicht vor 1983 entwickelt. Das war zwölf Jahre, nachdem Thompson und Ritchie das erste Design für Datei-Zugangsrechte diskutierten. Im Ausgangsjahr 1971 gab es keine andere vorstellbare Möglichkeit, ein Programm in den Computer "einzuspeisen", außer der Zugangsberechtigte - der Benutzer - transportierte es physisch in die Maschine (z.B. indem er Lochkarten einlas), oder er gab den Code von Hand ein. Aufgrund dieses "Alles-oder-nichts"-Sicherheitskonzeptes hatten ausführbare Programme, welche die volle Kontrolle über das Benutzerkonto haben, Sinn: Jeder Code, den der Benutzer ausführte, war aus praktischen Gründen von Grund auf vertrauenswürdig. |
|||
Die Krux liegt in der Annahme, dass jedes, durch den Benutzer gestartete Programm auf einem System, |
|||
Im Vergleich mit heute könnte die Situation nicht unterschiedlicher sein: Der größte Unterschied zu damals ist vielleicht das Internet. Im Internet führt der Internetbrowser eines Benutzers auf fast jeder besuchten Seite ein nicht als vertrauenswürdig eingestuftes Skript aus! Browser sind zunehmend komplexe Sandbox-Systeme, die versuchen, die Fähigkeiten dieser Web-Skripte einzuschränken, aber selbst die neueste Browser-Version muss dauernd "Bugs" (also Programmierfehler) in seinem Skript-Ausführungscode beheben. Genauso wenig dürfen wir die Email-Nutzung vergessen. Jeder kann einem anderen Nutzer ausführbare Programme zusenden, und viele Jahre war die einzige Reaktion des Nutzers, den Anhang zu öffnen und das Programm zu starten. Nicht vertrauenswürdiger Code ist überall, und das einzige Verteidigungsmittel ist die aufwendige Schulung der Nutzer und der Einsatz von Antivirus-Software - natürlich unter der Voraussetzung, dass der Virenscanner auf dem neuesten Stand ist und dass die Anbieter von Virenscannern genug Zeit hatten, den neuesten Virus zu analysieren und ein Gegenmittel zu entwickeln. |
|||
The crux of the problem lies in the assumption that any program executing on |
|||
a system on the user's behalf should have the exact same abilities and |
|||
permissions as any other program executing on behalf of the same user. 1971 was |
|||
seven years before the first ever international packet-switched network came |
|||
into existence. And the first wide-area network using TCP/IP, the communication |
|||
suite used by the modern Internet, wasn't created until 1983, twelve years |
|||
after Thompson and Ritchie designed the file permissions we're discussing. The |
|||
bottom line is that in 1971, there was almost no conceivable way a program |
|||
could "come to exist" on a computer except if the account owner — the user — |
|||
physically transported it to a machine (for instance, on punched tape), or |
|||
entered it there manually. And so the "all or nothing" security approach, where |
|||
executing programs have full control over their owner's account, made quite a |
|||
lot of sense: any code the user executed, she ipso facto trusted for all |
|||
practical purposes. |
|||
Die meisten auf der Bitfrost-Plattform angewandten Technologien und Ansätze stellen keine vollkommen neue Forschung dar: Sie sind in der Sicherheitsliteratur schon seit Jahren bekannt. Einige wurden bereits in der Praxis eingesetzt, andere wurden bislang nur im Labor getestet. Was aber dennoch den XO-Laptop von OLPC zu etwas Besonderem macht, ist die Tatsache, dass erstmals all diese Sicherheitsmaßnahmen sorgfältig in ein System zusammengeführt wurden, das für zehn oder gar hundert Millionen Benutzer konzipiert wurde. Möglicherweise ist es auch das erste Mal, dass ein Laptop als Massenprodukt, bereitwillig seine Kompatibilität zu Altlasten aufgibt, um große Sicherheit zu erreichen. Zum Beispiel wird der Leser feststellen, dass Diskussionen über Antiviren- und Antispionage-Technology bei der Bitfrost-Spezifikation nicht geführt werden. Der Grund ist, dass die Sicherheitsplattform auf den XO-Laptops diese Fragen weitestgehend überflüssig macht. |
|||
Fast forward to today, and the situation couldn't be more different: the |
|||
starkest contrast is perhaps the Web, where a user's web browser executes |
|||
untrusted scripting code on just about every web page she visits! Browsers are |
|||
growing increasingly complex sandboxing systems that try to restrict the |
|||
abilities of such web scripts, but even the latest browser versions are still |
|||
fixing bugs in their scripting engine implementations. And don't forget e-mail: |
|||
anyone can send a user an executable program, and for many years the users' |
|||
instinctive reaction was to open the attachment and run the program. Untrusted |
|||
code is everywhere, and the only defense seems to be tedious user training and |
|||
anti-virus software — the latter assuming it's fully updated, and assuming the |
|||
anti-virus makers have had time to deconstruct each latest virus and construct a |
|||
defense for it. |
|||
Wir haben damit begonnen ein System zu entwickeln, das sowohl erheblich sicherer und auch erheblich benutzbarer ist, als jedes derzeit auf dem Markt verfügbare Standard-Sicherheitssystem. Ein Ergebnis unserer Ausrichtung auf Benutzbarkeit ist der Umstand, dass es nur einen Schutzmechanismus bei der Bitfrost-Plattform gibt, welche die Eingabe durch den Benutzer erfordert: Eine einfache "Ja-oder-nein"-Frage, die selbst von jungen Kindern verstanden werden kann. Alle sonstigen Maßnahmen finden hinter der Kulisse statt. Es ist eine große Herausforderung sowohl Sicherheit als auch Benutzbarkeit zu ermöglichen, und daher ist es wichtig darauf hinzuweisen, dass wir nicht versucht haben und auch nicht an die Möglichkeit glauben, ein "perfekt sicheres" System zu schaffen. Jede Äußerung hinsichtlich "perfekter Sicherheit" wäre dumm, und wir distanzieren uns von jeglichen Behauptungen dieser Art. |
|||
Most technologies and approaches that constitute the Bitfrost platform do not |
|||
represent original research: they have been known in the security literature |
|||
for years, some of them have been deployed in the field, and others are being |
|||
tested in the lab. What makes the OLPC XO laptops notable, however, is that |
|||
they represent the first time that all these security measures have been |
|||
carefully put together on a system slated to be introduced to tens or hundreds |
|||
of millions of users. The laptops are also possibly the first time that a |
|||
mainstream computing product has been willing to give up compatibility with |
|||
legacy programs in order to achieve strong security. As an example, you'll find |
|||
that talk about anti-virus and anti-spyware technology is conspicuously absent |
|||
from the Bitfrost specification, because the security platform on the XO laptops |
|||
largely renders these issues moot. |
|||
== Die Bitfrost-Methode == |
|||
We have set out to create a system that is both drastically more secure and |
|||
=== Prinzipien=== |
|||
provides drastically more usable security than any mainstream system currently |
|||
on the market. One result of the dedication to usability is that there is only |
|||
one protection provided by the Bitfrost platform that requires user response, |
|||
and even then, it's a simple 'yes or no' question understandable even by young |
|||
children. The remainder of the security is provided behind the scenes. But |
|||
pushing the envelope on both security and usability is a tall order, and it's |
|||
important to note that we have neither tried to create, nor do we believe we |
|||
have created, a "perfectly secure" system. Notions of perfect security in the |
|||
real world are foolish, and we distance ourselves up front from any such claims. |
|||
* Offenes Design |
|||
== The Bitfrost approach == |
|||
Laptop-Sicherheit muss nicht auf einem geheimen Design beruhen, sei es Hardware oder Software. |
|||
=== Principles === |
|||
* Keine Zugangssperren |
|||
* Open design |
|||
In seinen Standardeinstellungen kann das Sicherheitssystem des Laptops verschiedene Beschränkungen |
|||
The laptop's security must not depend upon a secret design implemented in |
|||
für Benutzereingaben auferlegen. Dennoch muss es einen Weg geben gegebenenfalls das Sicherheitssystem |
|||
hardware or software. |
|||
abzuschalten. Dann hat der Nutzer die volle Kontrolle über seine Maschine. |
|||
* Keine Lesefähigkeiten erforderlich |
|||
* No lockdown |
|||
Sicherheit kann nicht auf der Fähigkeit eines Nutzers beruhen, einen Hinweis vom Computer zu lesen |
|||
Though in their default settings, the laptop's security systems may impose |
|||
und dann informiert und vernünftig zu handeln. Eine Maschine muss bereits ab der Fabrik sicher sein, |
|||
various prohibitions on the user's actions, there must exist a way for these |
|||
selbst wenn ein Nutzer nicht lesen kann. Wenn jedoch das Sicherheitssystems ausgeschaltet wird, |
|||
security systems to be disabled. When that is the case, the machine will |
|||
kann Lesefähigkeit erforderlich sein. |
|||
grant the user complete control. |
|||
* Keine aufdringliche Sicherheit |
|||
* No reading required |
|||
Wann immer möglich, muss die Sicherheit auf den Maschinen hinter den Kulissen stattfinden. |
|||
Security cannot depend upon the user's ability to read a message from the |
|||
Das Sicherheitssystem soll sich nur durch subtile visuelle oder hörbare Hinweise bemerkbar machen, |
|||
computer and act in an informed and sensible manner. While disabling a |
|||
aber niemals, indem es den Benutzer behindert. Immer wenn ein Konflikt mit dem Prinip "nur leichte |
|||
particular security mechanism ''may'' require reading, a machine must be secure |
|||
Komforteinschränkung" besteht, sind nichtaufdringliche Maßnahmen vorzuziehen. Dann ist äußerste |
|||
out of the factory if given to a user who cannot yet read. |
|||
Sorgfalt darauf zu verwenden, nur diejenigen Einschränkungen zu erlauben, die nicht ernsthaft |
|||
oder deutlich die Nutzung der Maschine einschränken. Wenn beispielsweise ein Programm versucht, |
|||
die Sicherheitseinstellungen des Systems zu umgehen, soll der Benutzer nicht dazu aufgefordert |
|||
werden, die Aktion zuzulassen; die Aktion wird einfach durch das System selbst abgelehnt. Wenn |
|||
der Nutzer die Erlaubnis dazu ausdrücklich erteilen will, kann er dies durch die grafische |
|||
Schnittstelle des Sicherheitssystems einstellen. |
|||
=== Ziele === |
|||
* Unobtrusive security |
|||
Whenever possible, the security on the machines must be behind the scenes, |
|||
making its presence known only through subtle visual or audio cues, and never |
|||
getting in the user's way. Whenever in conflict with slight user convenience, |
|||
strong unobtrusive security is to take precedence, though utmost care must be |
|||
taken to ensure such allowances do not seriously or conspicuously reduce the |
|||
usability of the machines. As an example, if a program is found attempting to |
|||
violate a security setting, the user will not be prompted to permit the action; |
|||
the action will simply be denied. If the user wishes to grant permission for |
|||
such an action, she can do so through the graphical security center interface. |
|||
* Keine Nutzer-Passwörter |
|||
Bei fünfjährigen Benutzern kann sich ein Sicherheitssystem nicht darauf verlassen, |
|||
dass diese Nutzer in der Lage sind, sich an ihr Passwort zu erinnern. Es kann nicht |
|||
von Nutzern erwartet werden, ihr Passwort schon bei Entgegennahme des Computers zu wählen. |
|||
* Keine unverschlüsselte Authentifizierung |
|||
=== Goals === |
|||
Der Authentifizierungs-Mechanismus der Laptops wird sich nicht darauf verlassen, dass das |
|||
Identifizierungsmerkmal unverschlüsselt über das Netzwerk übertragen wird. Daher werden |
|||
niemals wie auch immer benutzte Passwörter im Klartext im OLPC-Protokoll und bei den |
|||
Ethernet-MAC-Adressen zur Authentifizierung verwendet. |
|||
* Sicherheit bereits bei Systemstart |
|||
* No user passwords |
|||
Der Laptop muss benutzbar und bereits beim erstmaligen Systemstart sicher sein. Dies muss, |
|||
With users as young as 5 years old, the security of the laptop cannot depend |
|||
selbst wenn dies möglich ist, ohne zusätzlichen Download von Sicherheits-Updates gegeben sein. |
|||
on the user's ability to remember a password. Users cannot be expected to |
|||
choose passwords when they first receive computers. |
|||
* Eingeschränkte Softwareschlüssel für die Institutionen |
|||
* No unencrypted authentication |
|||
Die Laptops werden mit öffentlichen Schlüsseln von OLPC, den Ländern oder den regionalen |
|||
Authentication of laptops or users will not depend upon identifiers that are |
|||
Behörden ausgerüstet (z.B. durch das Bildungsministerium oder Behörde für Ausbildung), |
|||
sent unencrypted over the network. This means no cleartext passwords of any |
|||
aber diese Schlüssel werden nur dazu geeignet sein, die Integrität der Softwarepakete |
|||
kind will be used in any OLPC protocol and Ethernet MAC addresses will never |
|||
und deren Inhalt zu bestätigen. Die Benutzer werden sich durch ein organisch-gewachsenes |
|||
be used for authentication. |
|||
PKI identifizieren, ohne dass dazu eine Kette des Vertrauens erforderlich ist - oder anders |
|||
ausgedrückt: Unser Konzept für PKI ist KCM, das "key continuity management". |
|||
* Keine ständigen Datenverluste |
|||
* Out-of-the-box security |
|||
Die Informationen auf dem Laptop werden durch einige zentralisierte Speicherstellen |
|||
The laptop should be both usable and secure out-of-the-box, without the need |
|||
wiederhergestellt, so dass der Schüler seine Daten im Falle eines Verlustes, Diebstahls |
|||
to download security updates when at all possible. |
|||
oder bei Zerstörung wiederherstellen kann. |
|||
Wenn Sie dieses Thema interessiert, dann lesen Sie bitte die vollständige Bitfrost-Spezifikation, melden Sie sich auf der Mailing-Liste "Sicherheit" von OLPC an, teilen Sie uns Ihre Überlegungen mit und nehmen Sie an der Diskussion teil. |
|||
* Limited institutional PKI |
|||
The laptop will be supplied with public keys from OLPC and the country or |
|||
regional authority (e.g. the ministry or department of education), but these |
|||
keys will not be used to validate the identity of laptop users. The sole |
|||
purpose of these keys will be to verify the integrity of bundled software and |
|||
content. Users will be identified through an organically-grown PKI without a |
|||
certified chain of trust — in other words, our approach to PKI is KCM, or |
|||
key continuity management. |
|||
* No permanent data loss |
|||
Information on the laptop will be replicated to some centralized storage |
|||
place so that the student can recover it in the event that the laptop is lost, |
|||
stolen or destroyed. |
|||
If this subject matter interests you, please read the complete Bitfrost |
|||
specification, join the OLPC security mailing list, share your thoughts, |
|||
and join the discussion. |
|||
[[Category:Software]] |
[[Category:Software]] |
||
[[Category:Developers]] |
[[Category:Developers]] |
||
[[Category:Security]] |
Latest revision as of 22:43, 18 November 2008
Bitfrost ist die Sicherheitsplattform von OLPC. In diesem Artikel versuchen wir eine nicht-technische Einführung zu Sicherheitsproblemen zu geben. Ansätze und Prinzipien zur deren Behebung folgen danach. Diese Lösungsansätze wurden der vollständigen Bitfrost-Spezifikation (oder seinem Wiki) entnommen. Wir laden dazu ein, diese Artikel genau durchzusehen und auf der öffentlichen, von OLPC bereitgestellten Mailing-Liste für Sicherheitsfragen zu diskutieren.
Einführung und Zusammenfassung
Im Jahre 1971 veröffentlichten die Programmierer Ken Thompson und Dennis Ritchie von der Firma AT&T die erste Version von Unix. Diesem Betriebssystem, welches im Jahre 1969 als unbezahltes Projekt namens UNICS begann, wurde ein anderer Name gegeben, und es wurde öffentlich von den Bell Labs finanziert, als die Programmierer anboten, Unterstützung zur Textverarbeitung hinzuzufügen. Viele der großen Designideen hinter UNIX bestehen noch heute: Populäre Server-Betriebssysteme wie Linux, FreeBSD und viele andere weisen alle das grundsätzliche UNIX-Design auf.
Die Unix-Version aus dem Jahr 1971 unterstützte nach dem folgenden Modell Zugang zu sicherheitsrelevanten Benutzerdateien:
- Nicht-Besitzer kann Datei verändern (schreiben)
- Nicht-Besitzer kann Datei lesen
- Besitzer kann Datei verändern (schreiben)
- Besitzer kann Datei lesen
- Datei kann ausgeführt werden
- Datei erhält den Status "set-uid"
Diese Zugangsrechte sollten für jeden bekannt sein, denn sie sind ähneln den heutigen Zugangsmodi, die ein Benutzer für seine Dateien beim Betriebssystem seiner Wahl heute einstellen kann. Beunruhigend ist, dass diese Konzept von Rechten bis heute fast der einzige wahre Kontrollmechanismus für einen User über seine Dateien geblieben ist: Ein Benutzer kann sich zwar dafür entscheiden, seine Dateien vor anderen Personen zu schützen, aber er hat keine wie auch immer geartete Kontrolle, was sein eigenes Programm mit seinen Dateien anstellen kann.
Im Jahre 1971 war dies vielleicht noch akzeptabel: Dies war 20 Jahre vor Entstehung des Webs, und das Bedrohungs-Szenario für die meisten Computer war vollkommen anders als das, dem heutige Anwendungen ausgesetzt sind. Ist es unter diesen Voraussetzungen eine Überraschung, dass wir Viren und Malware heute nicht stoppen können, wenn unsere Art der Verteidigung seit über 35 Jahren unverändert ist?
Die Krux liegt in der Annahme, dass alle durch den Benutzer gestarteten Programme auf einem System die gleichen Fähigkeiten und Rechte haben sollen. 1971 war sieben Jahre bevor das erste internationale paket-orientierte Netzwerk entstand. Das erste Großnetz, das TCP/IP (das heute im Internet verwendeten Protokoll) verwendet, wurde nicht vor 1983 entwickelt. Das war zwölf Jahre, nachdem Thompson und Ritchie das erste Design für Datei-Zugangsrechte diskutierten. Im Ausgangsjahr 1971 gab es keine andere vorstellbare Möglichkeit, ein Programm in den Computer "einzuspeisen", außer der Zugangsberechtigte - der Benutzer - transportierte es physisch in die Maschine (z.B. indem er Lochkarten einlas), oder er gab den Code von Hand ein. Aufgrund dieses "Alles-oder-nichts"-Sicherheitskonzeptes hatten ausführbare Programme, welche die volle Kontrolle über das Benutzerkonto haben, Sinn: Jeder Code, den der Benutzer ausführte, war aus praktischen Gründen von Grund auf vertrauenswürdig.
Im Vergleich mit heute könnte die Situation nicht unterschiedlicher sein: Der größte Unterschied zu damals ist vielleicht das Internet. Im Internet führt der Internetbrowser eines Benutzers auf fast jeder besuchten Seite ein nicht als vertrauenswürdig eingestuftes Skript aus! Browser sind zunehmend komplexe Sandbox-Systeme, die versuchen, die Fähigkeiten dieser Web-Skripte einzuschränken, aber selbst die neueste Browser-Version muss dauernd "Bugs" (also Programmierfehler) in seinem Skript-Ausführungscode beheben. Genauso wenig dürfen wir die Email-Nutzung vergessen. Jeder kann einem anderen Nutzer ausführbare Programme zusenden, und viele Jahre war die einzige Reaktion des Nutzers, den Anhang zu öffnen und das Programm zu starten. Nicht vertrauenswürdiger Code ist überall, und das einzige Verteidigungsmittel ist die aufwendige Schulung der Nutzer und der Einsatz von Antivirus-Software - natürlich unter der Voraussetzung, dass der Virenscanner auf dem neuesten Stand ist und dass die Anbieter von Virenscannern genug Zeit hatten, den neuesten Virus zu analysieren und ein Gegenmittel zu entwickeln.
Die meisten auf der Bitfrost-Plattform angewandten Technologien und Ansätze stellen keine vollkommen neue Forschung dar: Sie sind in der Sicherheitsliteratur schon seit Jahren bekannt. Einige wurden bereits in der Praxis eingesetzt, andere wurden bislang nur im Labor getestet. Was aber dennoch den XO-Laptop von OLPC zu etwas Besonderem macht, ist die Tatsache, dass erstmals all diese Sicherheitsmaßnahmen sorgfältig in ein System zusammengeführt wurden, das für zehn oder gar hundert Millionen Benutzer konzipiert wurde. Möglicherweise ist es auch das erste Mal, dass ein Laptop als Massenprodukt, bereitwillig seine Kompatibilität zu Altlasten aufgibt, um große Sicherheit zu erreichen. Zum Beispiel wird der Leser feststellen, dass Diskussionen über Antiviren- und Antispionage-Technology bei der Bitfrost-Spezifikation nicht geführt werden. Der Grund ist, dass die Sicherheitsplattform auf den XO-Laptops diese Fragen weitestgehend überflüssig macht.
Wir haben damit begonnen ein System zu entwickeln, das sowohl erheblich sicherer und auch erheblich benutzbarer ist, als jedes derzeit auf dem Markt verfügbare Standard-Sicherheitssystem. Ein Ergebnis unserer Ausrichtung auf Benutzbarkeit ist der Umstand, dass es nur einen Schutzmechanismus bei der Bitfrost-Plattform gibt, welche die Eingabe durch den Benutzer erfordert: Eine einfache "Ja-oder-nein"-Frage, die selbst von jungen Kindern verstanden werden kann. Alle sonstigen Maßnahmen finden hinter der Kulisse statt. Es ist eine große Herausforderung sowohl Sicherheit als auch Benutzbarkeit zu ermöglichen, und daher ist es wichtig darauf hinzuweisen, dass wir nicht versucht haben und auch nicht an die Möglichkeit glauben, ein "perfekt sicheres" System zu schaffen. Jede Äußerung hinsichtlich "perfekter Sicherheit" wäre dumm, und wir distanzieren uns von jeglichen Behauptungen dieser Art.
Die Bitfrost-Methode
Prinzipien
- Offenes Design
Laptop-Sicherheit muss nicht auf einem geheimen Design beruhen, sei es Hardware oder Software.
- Keine Zugangssperren
In seinen Standardeinstellungen kann das Sicherheitssystem des Laptops verschiedene Beschränkungen für Benutzereingaben auferlegen. Dennoch muss es einen Weg geben gegebenenfalls das Sicherheitssystem abzuschalten. Dann hat der Nutzer die volle Kontrolle über seine Maschine.
- Keine Lesefähigkeiten erforderlich
Sicherheit kann nicht auf der Fähigkeit eines Nutzers beruhen, einen Hinweis vom Computer zu lesen und dann informiert und vernünftig zu handeln. Eine Maschine muss bereits ab der Fabrik sicher sein, selbst wenn ein Nutzer nicht lesen kann. Wenn jedoch das Sicherheitssystems ausgeschaltet wird, kann Lesefähigkeit erforderlich sein.
- Keine aufdringliche Sicherheit
Wann immer möglich, muss die Sicherheit auf den Maschinen hinter den Kulissen stattfinden. Das Sicherheitssystem soll sich nur durch subtile visuelle oder hörbare Hinweise bemerkbar machen, aber niemals, indem es den Benutzer behindert. Immer wenn ein Konflikt mit dem Prinip "nur leichte Komforteinschränkung" besteht, sind nichtaufdringliche Maßnahmen vorzuziehen. Dann ist äußerste Sorgfalt darauf zu verwenden, nur diejenigen Einschränkungen zu erlauben, die nicht ernsthaft oder deutlich die Nutzung der Maschine einschränken. Wenn beispielsweise ein Programm versucht, die Sicherheitseinstellungen des Systems zu umgehen, soll der Benutzer nicht dazu aufgefordert werden, die Aktion zuzulassen; die Aktion wird einfach durch das System selbst abgelehnt. Wenn der Nutzer die Erlaubnis dazu ausdrücklich erteilen will, kann er dies durch die grafische Schnittstelle des Sicherheitssystems einstellen.
Ziele
- Keine Nutzer-Passwörter
Bei fünfjährigen Benutzern kann sich ein Sicherheitssystem nicht darauf verlassen, dass diese Nutzer in der Lage sind, sich an ihr Passwort zu erinnern. Es kann nicht von Nutzern erwartet werden, ihr Passwort schon bei Entgegennahme des Computers zu wählen.
- Keine unverschlüsselte Authentifizierung
Der Authentifizierungs-Mechanismus der Laptops wird sich nicht darauf verlassen, dass das Identifizierungsmerkmal unverschlüsselt über das Netzwerk übertragen wird. Daher werden niemals wie auch immer benutzte Passwörter im Klartext im OLPC-Protokoll und bei den Ethernet-MAC-Adressen zur Authentifizierung verwendet.
- Sicherheit bereits bei Systemstart
Der Laptop muss benutzbar und bereits beim erstmaligen Systemstart sicher sein. Dies muss, selbst wenn dies möglich ist, ohne zusätzlichen Download von Sicherheits-Updates gegeben sein.
- Eingeschränkte Softwareschlüssel für die Institutionen
Die Laptops werden mit öffentlichen Schlüsseln von OLPC, den Ländern oder den regionalen Behörden ausgerüstet (z.B. durch das Bildungsministerium oder Behörde für Ausbildung), aber diese Schlüssel werden nur dazu geeignet sein, die Integrität der Softwarepakete und deren Inhalt zu bestätigen. Die Benutzer werden sich durch ein organisch-gewachsenes PKI identifizieren, ohne dass dazu eine Kette des Vertrauens erforderlich ist - oder anders ausgedrückt: Unser Konzept für PKI ist KCM, das "key continuity management".
- Keine ständigen Datenverluste
Die Informationen auf dem Laptop werden durch einige zentralisierte Speicherstellen wiederhergestellt, so dass der Schüler seine Daten im Falle eines Verlustes, Diebstahls oder bei Zerstörung wiederherstellen kann.
Wenn Sie dieses Thema interessiert, dann lesen Sie bitte die vollständige Bitfrost-Spezifikation, melden Sie sich auf der Mailing-Liste "Sicherheit" von OLPC an, teilen Sie uns Ihre Überlegungen mit und nehmen Sie an der Diskussion teil.