Benutzer:Rumil/Rumpelkammer

Aus Wikibooks

Stille Post[Bearbeiten]

{
\new PianoStaff <<
\new Staff {\tempo 4=90 \clef violin \key e \major \time 4/4
  fis'2 gis'4. e'8 | dis'2 cis'2
| fis'2 gis'8. fis'8 e'16 dis'16 e'16 | dis'2 cis'2
| e'2 e'4. dis'8 | b1
| e'2 e'4. dis'8 | b1
}
\new Staff {\clef bass \key e \major \time 4/4
  fis1 | cis1
| fis1 | cis1
| a1 | e1
| a1 | e1
}
>>}

»La Valse d'Amélie« in cis-Moll, dem Gedächtnis nach. Man kann dies als mehr oder weniger schlimm ansehen. Im Vergleich zu einem 100 Jahre lang gespielten Stille Post hinterlässt es zwar nicht für jeden einen angenehmen Klang, dafür aber ein weit weniger unangenehmes Bauchgefühl.

Man betrachte das folgende Modell:

Sender Nachricht Empfänger
Gedächtnis Man-in-the-Middle Wahrnehmung Gedächtnis

Bemerkung: Das Modell kann wie folgt als abstrakt aufgefasst werden. Beim Man-in-the-Middle kann es sich um mehrere Personen bzw. um eine Kette von Personen handeln. Er kann außerdem auch mit dem Sender oder dem Empfänger übereinstimmen. Auch Sender und Empfänger können die selbe Person bzw. die selbe Gruppe von Personen sein.

Konklusion: Wenn etwas nicht in Vergessenheit geraten soll, dann muss es aufgeschrieben bzw. aufgezeichnet werden, und zwar möglichst vollständig und präzise. Es muss möglichst viele Kopien der Aufzeichnung geben, damit diese nicht verloren geht und nicht mit Absicht verfälscht werden kann. Auf eine wichtige Datensammlung sollte man sich einigen und dann von dieser den kryptologischen Hashwert speichern.

Ratschläge[Bearbeiten]

Ratschläge zur Sicherheit:

  1. Verwende ausschließlich typsichere Programmiersprachen. Behandle unsafe-Blöcke nicht mit allergrößter Sorgfalt, sondern paranoid.
  2. Verwende Mandatory Access Control. Beispiel: Wenn ein Unterprogramm vom Hauptprogramm das Recht bekommt, eine Datei öffnen zu dürfen, so muss dieses Recht für alle anderen Bibliotheksfunktionen unsichtbar sein.
  3. Verlasse dich nicht darauf, dass ein Programm vollständig sicher ist. Der Compiler kann fehlerhaft sein. Die Hardware kann fehlerhaft sein oder von Zeit zu Zeit falsche Zustände besitzen.

Ratschläge zur Programmierung:

  1. Verwende beim Quelltext-basierten Benutzer-Interface Vorgabe-Argumente. Das Zusammenfassen von benannten Argumenten zu Wörterbüchern sollte möglich sein, so dass individuelle Konfigurationen gespeichert und geladen werden können.
  2. Vermeide globale Variablen. Eine der wenigen Ausnahmen sind laufzeitkritische Prozeduren.