Wie wir überwacht werden

Überwachung ist ja das große Thema dieser Tage, leider mal wieder. Überwachung gibt es schon ewig, aber sie wird immer offensichtlicher und damit immer enger. Die Polizei überwacht schon seit Ihrer Einführung im antiken Athen, denn das ist Ihr Job. Überwache die Bürger, daß Sie sie die Gesetze einhalten. Kläre auf, wenn Sie die Gesetze gebrochen haben.

Heute müßte es eigentlich lauten: „Überwache die Bürger, daß Sie sie die Gesetze einhalten. Schnappe Sie bevor Sie die Gesetze brechen.“ Da kommt einem unweigerlich der Minority Report in den Sinn. Verbrechen aufklären, bevor Sie stattfinden. Mit Hilfe der Vorratsdatenspeicherung ist das sogar theoretisch machbar. Natürlich nur im kleinen Kreise der Verbrechen, die sich durch bestimmte Aktivitäten vorher ankündigen. Beispiel: Aufbau eines kriminellen Netzwerkes.

Aber machen wir es mal eine Stufe einfacher : Ein Einbruch. Der könnte mit der Vorratsdatenspeicherung aufgeklärt werden, bevor er stattfindet. Nehmen wir mal an, Sie kaufen Online die Spitzhacke und ein „Moniereisen“ aka. Brecheisen. Dann beobachten Sie eine Weile ein Geschäft. Um sich die Zeit zu vertreiben, haben Sie Ihr Handy dabei. Aus dem Aufruf eines Onlineshops für Metallwerkzeuge und den Standortdaten könnte eine clevere Software schliessen, daß Sie einen Einbruch planen.

Nun wohnen Sie dummerweise in einem Hotel, daß dem Geschäft gegenüberliegt, weil Ihre Wohnung durch einen Wasserschaden unbewohnbar ist. Das Brecheisen hatten Sie für Ihren Schuppen im Garten Ihrer Familie gekauft, dann das Schloß ist derbe verrostet und ohne Gewalt nicht mehr zu öffnen. Das erklären Sie dann mal der Kripo, wenn sie Sie nach einer Woche zu Hause abholen kommen.

Klar, noch ist das Spinnerrei. In einem Jahr wird das wieder aktuell sein, wenn die technische Richtlinie zur Erfassung der elektronischen Kommunikation unter allen Beteiligten abgestimmt ist.

Fangen wir mal an uns vorzubereiten. Mehr dazu in Kürze in diesem Blog.

Tip: Update der Inhalte eines SQL Views

In einer Datenbank wie MySQL kann man sich Selects als Pseudotabellen anlegen und dann selbst wieder über den diese Tabelle einen Select bauen. So etwas nennt man einen View.

Beispiel:

SELECT a.vorname,a.name,b.beruf as beruf FROM Personen as a,Berufe as b WHERE a.berufsid=b.id;

Wenn man diesen Select als View anlegt, hat man drei Felder : Vorname,Name,Beruf

Nennen wir den View mal Test, wäre dieser Select möglich :

SELECT vorname,name FROM Test WHERE beruf = „Bäcker“;

Wenn man nun versucht den VIEW mit UPDATE zu ändern, geht das eigentlich nicht, weil es eine nicht eindeutige Beziehung der Datensätze untereinander ist.

Für mein aktuelles Pandora Projekt habe ich nun einen View gebaut, bei dem das Update tatsächlich möglich ist:

select `pa`.`id` AS `id`,`pa`.`vorname` AS `vorname`,`pa`.`nachname` AS `nachname`,`pa`.`server` AS `server`,`pc`.`value` AS `friendmode` from (`pandora`.`pandora_config` `pc` join `pandora`.`pandora_account` `pa`) where ((`pa`.`id` = `pc`.`uid`) and (`pc`.`name` = ‚michsuchen‘))

Das funktioniert aufgrund dieser Beziehung „((`pa`.`id` = `pc`.`uid`)“ , denn in beiden Tabellen gibt es exakt einen eindeutigen Datensatz. d.b. :

Für jede Person gibt es exakt einen Config Eintrag in der anderen Tabelle. Damit kann der Datenbankserver jetzt die logische Verbindung der Datensätze „rückwärts“ auflösen und in der richtigen Tabelle den richtigen Eintrag ändern:

UPDATE `pandora_userliste` SET friendmode = ‚erlauben‘ WHERE vorname =’meinvorname‘;

Damit ist der View Read/Writeable geworden was es man mit Hilfe des ORDB Frameworks ausnutzen kann, denn Views werden ein Java Datenobjekte erzeugt. Über Views lassen sich schlanke Strukturen und Datenbankobjekte erzeugen, die dazu noch updatefähig sein können (aber nicht müssen). Als Folge davon erhält man übersichtliche Datenbankstrukturen, die von einem Menschen leicht gelesen und verstanden werden können, aber trotzdem Datenbanktechnisch höchst performant gestaltet sein können.

VOIP Apps

Keine Panik, dies ist nicht die versprochene VOIP Lösung vom letzten Beitrag 🙂

Ich bin im Repository von Linux über eine VOIP Anwendung gestoßen namens Seren. Die versprochenen Eigenschaften der Anwendung sind ein lokales Ad-HocNetzwerk, ein Chat, eine Verfügbarkeit auf jedem Linux in der Konsole und eingebaute Verschlüsselungscodecs.

All diese Aussagen stimmen. Die Anwendung verschlüsselt den Datentransfer wahlweise mit verschiedenen freien Codecs wie Blowfish, daß auch von SSH eingesetzt wird. Da jeder Linux Rechner in einem LAN eine IP Adresse hat, kann ein Anruf an diese IP aufgebaut werden, das heißt theoretisch kann man in einer Firma in einem größeren WLAN Netzwerk sofort spontan mit jedem anderen Rechner reden. Neben dem Anruf und einer Konferenz, kann man auch einen Chat durchführen. Die Software muss lediglich in Bezug auf den Verschlüsselungsalgorithmus eingestellt werden, ansonsten ist sie sofort einsatzbereit. Dabei ist die App gerade mal 96 kilobyte groß. Das sind eigentlich die besten Voraussetzungen dafür extrem erfolgreich zu sein. Leider patzt die Anwendung bei der Sprachqualität, denn die ist unter aller ***zensiert*** .

Zum Glück gibt es bessere Alternativen. Einige Jabber Anwendungen erlauben es, im lokalen Netzwerk ein spontanes Netzwerk aufzubauen indem einfach nach benachbarten Rechnern gesucht wird. Das unter Fedora vorinstallierte Empathy, liefert genau diese Möglichkeit und kommt mit einem Gui-Interface daher. Empathy benötigt dazu leider mehr Ressourcen, bietet aber natürlich auch viel mehr Funktionen, zum Beispiel einen Videochat und vernünftige Sprachqualität. Die Gesprächspartner, also alle die zum Beispiel Empathy auf ihrem Linux Rechner laufen haben, werden automatisiert in eine Liste eingetragen, wenn der Rechner gefunden wurde. Ihr spielt natürlich in die Netzwerke Topologie des Lans eine große Rolle.

Empathy hat natürlich auch seine Fehler, unter anderem patzt es in der Videokonferenz. Für den Alltagsgebrauch ist es aber ein zuverlässiger Helfer. Allerdings werden Ihnen vermutlich die nötigen Chatpartner fehlen. Da wo ein ad hoc Netzwerk für Audiochats im Praxisbetrieb extrem sinnvoll wäre, zum Beispiel im Büro, wird man allerdings kaum Desktop Linux Rechner finden. Natürlich gibt es für Windows Desktop Rechner auch eine Alternative. Die meisten Chefs werden es allerdings nicht einsehen, das es sehr praktisch wäre so ein ab hoc Netzwerk aufzubauen. Sehr wahrscheinlich werden diese Chefs damit argumentieren, dass die Arbeitsproduktivität sinken würde, wenn jeder Mitarbeiter mit jedem anderen Mitarbeiter einfach so chatten könnte. Das Film Vorurteil, dass alle Sekretärinnen Quatschtanten sind, ist natürlich völliger Blödsinn. Mitarbeiter setzen solche Kommunikationsmöglichkeiten durchaus mit Bedacht ein, wenn sie sinnvoll sind.

Der große Vorteil so eines ad hoc Netzwerk, besteht gerade darin dass es nicht administriert werden muss. Zum Beispiel erspart dies auch das interne Telefonbuch, welches sowieso nie auf Stand ist. Logischerweise benötigen die Mitarbeiter kein Telefon mehr um miteinander zu telefonieren. Dafür müssen die Computer natürlich mit einem Mikrofon und einer Kamera ausgestattet sein, wobei letzteres nicht unbedingt zwingend notwendig ist. Über die Anbindung eines IP Telefonanschlusses an das entsprechende VOIP Tool auf dem Desktop PC, kann auch normal und vor allen Dingen günstig telefoniert werden. Viele IP Telefonanschluss Anbieter liefern eine Festnetznummer dazu.

Unter Linux gibt es eine sehr große Auswahl an VOIP fähiger Software. Darunter wird auch sicher eine Software sein, die Ihnen gefällt. Es bleibt zu hoffen, dass sich in Büros mehr Linux-Rechner durchsetzen, damit diese Möglichkeiten besser und vor allen Dingen kostengünstiger als zum Beispiel durch Lösungen von Cisco genutzt werden können.

Hier noch einige bekannte Anwendungen, die es u.a. auch für Windows gibt: Pidgin, Empathy, Spark, Chatsecure, Textsecure.