TLS: Eine kleine Übersicht

Der durschnittliche Internetbenutzer benutzt TLS (Transport Layer Security) mittlerweile auf fast allen größeren Websiten – ohne, dass sich dieser darüber bewusst wäre, in den allermeisten Fällen. Auch in meiner Ausbildung bei NETWAYS darf ich mich nun intensiv mit TLS beschäftigen. Doch was ist TLS? Dieser Text soll einen groben Umriss um die zugrunde liegenden Prinzipien und Techniken hinter TLS legen.

Warum brauchen wir TLS?

TLS wird benötigt, um drei Probleme zu lösen. Unsere Kommunikationen sollen verschlüsselt sein – wir wollen nicht, dass Pakete oder Informationen, die wir übertragen, abgehört werden. Außerdem wollen wir sicher gehen, dass der andere Teilnehmer dieser Kommunikation auch derjenige ist, mit dem wir diesen Austausch an Informationen vollziehen wollen. Darüber hinaus wäre es auch gut, sich darauf verlassen zu können, dass das, was von der einen Seite losgeschickt wurde, auch das ist, was der andere erhält. Um diese drei Probleme kümmert sich TLS. Doch wie macht es das?

Eine Beispielverbindung:

1. ClientHello

Ein Client verbindet sich mit einem Server und verlangt eine gesichertete Verbindung. Dazu wird die Version von TLS übertragen, und eine Chiffrensammlung, aus denen sich der Server die Verschlüsselungsmethode aussuchen kann.

2. ServerHello & Certificate & ServerKeyExchange

Der Server antwortet, welches Chiffre verwendet werden soll, und einem Zertifikat, welches den Server authentifizieren soll und einen öffentlichen Schlüssel enthält.

3. ClientKeyExchange

Dieses Zertifikat wird von dem Client verifiziert, und der öffentliche Schlüssel des Servers wird vom Client benutzt, um ein pre-master secret zu erstellen, welcher dann wieder an den Server geschickt wird.

Der Server entschlüsselt das pre-master secret, und beide Parteien nutzen es, um einen geheimen, geteilten Schlüssel zu erstellen, welcher als shared secret bezeichnet wird.

4. ChangeCipherSpec

Der Client versendet die erste, mit dem shared secret verschlüsselte Nachricht, welche der Server entschlüsseln soll, damit geprüft werden kann, ob die Verschlüsselung richtig initialisiert wurde. Wenn diese Verifizierung erfolgreich abgelaufen ist, kommunizieren dann der Client und der Server verschlüsselt untereinander. Dieser ganze Prozess wird als TLS-Handshake bezeichnet.



Geschichte: TLS wurde unter dem Vorläufernamen SSL (Secure Sockets Layer) in 1994 von Netscape für den damals sehr populären Browser Mosaic vorgestellt. Version 2.0 und 3.0 folgten jeweils ein Jahr später. 1999 wurde SSL 3.1 bei der Aufnahme als Standart von der Internet Engineering Task Force in TLS 1.0 umbenannt. 2006 folgte Version 1.1, 2008 1.2 und 2018 die heutige Version 1.3.


Asymmetrische & Symmetrische Verschlüsselung: TLS ist zunächst asymmetrisch, dann symmetrisch verschlüsselt. Was bedeutet das? Nun, hier kommen die Schlüsselpaare ins Spiel. TLS benötigt einen öffentlichen und einen privaten Schlüssel. Der öffentliche Schlüssel wird benutzt, damit der Gegenpart einen Vorschlüssel erstellen kann, welcher dann von dem privaten Schlüssel wieder decodiert wird. Das ist eine asymmetrische Verschlüsselung – welche allerdings deutlich kostenintensiver und aufwändiger ist, und sich dementsprechend nicht für die zahlreichen Anwendungsmöglichkeiten für eine TLS-Verbindung eignet. Dank’ dem Vorschlüssel können allerdings beide Seiten des Austausches einen gemeinsamen, geheimen Schlüssel berechnen, mit Hilfe dessen die verschlüsselten Nachrichten auf jeweils beiden Seiten entschlüsselt werden können. Somit ist der Kern von TLS eine symmetrische Verschlüsselung; der Austausch der tatsächlichen Information passiert über diesen Kanal. Um aber an diesen Punkt zu kommen, sind asymmetrische Verschlüsselungsprinzipien im Einsatz.


Zertifikate: Wie in dem TLS-Handshake betrachtet, sind Zertifkate elementar zur Ausweisung und Identifikation von Server und Client – und wohl der kritischste Punkt in dem ganzen TLS-Ablauf. Damit ein Kommunikationspartner identifiziert werden kann, muss er sein Zertifikat ausweisen, welches seine Identiät beweist. Ausgestellt wird ein Zertifikat von einer certificate authority, einem vertrauenswürdigen Aussteller dieser Zertifikate, was verschiedenste Dinge bedeuten kann: Viele multinationale Konzerne stellen kommerziell Zertifikate aus, darunter fallen Firmen wie IdenTrust, Sectigo und DigiCert Group. Es existieren allerdings auch einige non-profit organisations, wie CAcert und Let’s Encrypt, die als Zertifizierungsstelle auftreten. Darüber hinaus gibt es natürlich auch jede Menge Zertifikatsaussteller innerhalb von Netzen, welche in der Hand von einem vertrauenswürdigen Admin liegen.


Chiffrensammlung: Eine Chiffrensammlung ist eine Auflistung aus den Verschlüsselungsmethoden, die bei einer TLS-Verbindung eingesetzt werden können. Beispiele dafür wären RSA, MD5, SHA. Bei einer TLC-Verbindung wird in ClientHello und ServerHello unter den beiden beteiligten Parteien kommuniziert, welche dieser Methoden zur Verfügung für den Aufbau der Verbindung stehen.


https: Doch was hat es nun mit https auf sich? Ganz einfach: https (HyperText Transfer Protocol Secure) ist eine Extension von http, bei der http über eine verschlüsselte TLS-Verbindung versendet wird, was sie im Gegensatz zu Klartext-http vor unerwünschten Abschnorchelungen und sonstigen Attacken schützt.


Verbreitung: Laut der regelmäßig auf einen neuen Stand gebrachten Auswertung von SSL Labs von rund 140.000 Webpages bieten gerade mal 67.2% eine adequate TLS-Ausstattung. Das mag im ersten Moment etwas niedrig erscheinen, man darf aber auch nicht vergessen, dass diese Lage vor nicht allzu langer Zeit noch deutlich, deutlich schlimmer war, und durch Maßnahmen wie einer automatischen Warnung von Chrome verbessert wurde. So hat sich auch laut Firefox Telemetry die Anzahl der per https aufgerufenen Websiten sich von 25% auf 75% erhöht. Ebenso bemerkenswert: Einem Jahr nach Einführung von TLS 1.3 unterstützen gerade mal 15% den aktuellen Standart, der absolut überwiegende Teil bietet noch hauptsächlich TLS 1.2 an. Man darf gespannt sein, wie lange es dauert, bis der Großteil den Wechsel vollzogen hat. Auf der anderen Seite bieten 7.5% der Webpages noch Unterstüztung für SSL 3.0 an, einem Standart, der mittlerweile fast so alt ist wie ich selbst, und als nicht sicher gilt.

 

 

 

Henrik Triem
Henrik Triem
Junior Developer

Henrik is Anwendungsentwickler in Ausbildung, verhindeter Rockstar, kaffeegetrieben und Open Source-begeistert. Zuhause lässt er es auch mal ruhiger mit Tee angehen, entspannt an Klavier oder Gitarre, erkundet neue Musik oder treibt sich mit seinen Freunden in Deutschland herum.

SSL/TLS Zertifikate für die Nutzung im internen Netz (apache)

Um verschiedene Dienste im LAN sicher zu nutzen, werden SSL-Zertifikate benötigt. Wir verwenden dafür in manchen Fällen ein selbstsigniertes Zertifikat. Das SSL-Zertifikat enthält Informationen über den Namen des Inhabers, den öffentlichen Schlüssel, eine Gültigkeitsdauer und gegebenenfalls den Namen der Zertifizierungsstelle. Mit dem öffentlichen Schlüssel kann das Zertifikat der Zertifizierungsstelle überprüft werden.

Das SSL-Zertifikat muss zuerst als vertrauenswürdig eingestuft werden, dazu sind bestimmte Rangordnungen der Autoritäten notwendig. Der Browser verfügt über Listen mit Zertifizierungsstellen deren SSL-Zertifikate bedingungslos vertraut werden. Beim Aufrufen einer SSL-verschlüsselten Website, prüft der Browser das Zertifikat auf Gültigkeit der Referenzen und des Herausgebers der Webadresse. Kennt der PC oder Browser den Herausgeber des Zertifikates nicht, meldet er einen Zertifikatsfehler. Diesen Fehler kann man übergehen und seinen Besuch auf der Website fortsetzen.

Selbstsignierte Zertifikate geben diesen Fehler logischerweise immer, da sie nicht von einer Zertifizierungsstelle als gültig und sicher geprüft wurden. Hier signiert der Server selbst für seine Dienste, die von den jeweiligen Clients besucht werden.

Ich zeige euch, wie wir das Zertifikat erstellen und manuell in den Firefox-Browser hinterlegen.

Zuerst müssen wir einen Private-Key erstellen, der immer bei uns verbleibt. Niemand außer uns sollte Zugriff auf diese Datei haben, da der Private-Key später untrennbar von unserem Zertifikat ist. Dazu wechseln wir in das Verzeichnis, indem wir den Schlüssel gerne haben wollen:

openssl genrsa -aes256 -out ca-key.pem 2048

Mit dem Argument -aes256 (Abkürzung für „Advanced Encryption Standard“) verschlüsseln wir unsere Datei mit einer 256Bit Schlüssellänge. Der Key muss eine Länge von 2048bit haben und in unserem Beispiel nenne ich ihn ca-key.pem (nehmt einen Namen, den ihr später leicht eurer Seite hinzufügen könnt). Das pass phrase muss mindestens 4 Zeichen lang sein und darf keine Sonderzeichen enthalten.

Nun kommt die CA-Datei, die die Antragsdaten sowie den öffentlichen Schlüssel zu unserem Private-Key enthält:

openssl req -x509 -new -nodes -extensions v3_ca -key ca-key.pem -days 1024 -out ca-root.pem -sha512

Benennt eure Dateien wieder mit einem beliebigen Namen. Ich nutze hier einige Argumente: -nodes (noDES) encrypted den Private-Key nicht, -x509 gibt das Certificate Data Management an, dass uns dann auch zu -extensions v3-ca führt. Hier wird eine Cryptographie erstellt und es werden Erweiterungen für policies verwendet.

Bei der Erstellung der CA werdet ihr nach einigen Details gefragt, die ihr angeben könnt um das Zertifikat eindeutig zu machen (oder aus Testzwecken einfach leer lassen).

Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:

Wir brauchen jetzt noch einen Zertifikats-Key…

openssl genrsa -out zertifikat-key.pem 4096

…erstellen dann unsere CSR-Datei…

openssl req -new -key zertifikat-key.pem -out zertifikat.csr -sha512

…und signieren sie mit unserem eben erstellten Key.

openssl x509 -req -in zertifikat.csr -CA ca-root.pem -CAkey ca-key.pem -CAcreateserial -out zertifikat-pub.pem -days 365 -sha512

Gleiche Vorgehensweise wie zuvor beschrieben, pass phrase eingeben und bei belieben eure Details noch eintragen.

Wir sind fertig!

Jetzt bindet ihr das Zertifikat nur noch in euren Browser mit ein, in meinem Falle nutze ich den Firefox-Browser. Öffnet die Einstellungen und geht auf den linken Reiter “Datenschutz & Sicherheit”. Nun scrollt ihr ganz nach unten bis ihr die Option “Zertifikate” seht. Klickt auf den Button “Zertifikate anzeigen…”, dort öffnet sich ein neues Fenster in dem ihr nun euer erstelltes Zertifikat einpflegen könnt.

Der Browser muss nun geschlossen werden um die Veränderungen anzunehmen. Startet ihn neu und verbindet euch mit eurer Website. Nun müsstet ihr sehen können, dass ein https:// angezeigt wird.

Aleksander Arsenovic
Aleksander Arsenovic
Junior Consultant

Aleksander macht eine Ausbildung zum Fachinformatiker für Systemintegration in unserem Professional Service. Wenn er nicht bei NETWAYS ist, schraubt er an seinem Desktop-PC rum und übertaktet seine Hardware. Er ist immer für eine gute Konversation zu haben.

Aufmerksamkeit – ein super Mittel gegen schädliche Emails

Vor etwa einem halben Jahr stand der Autor im Kontakt mit einer lokalen Metzgerei im Vorwahlbereich 0911. Es ging um leckere Weißwürste mit ebenso leckeren Brezen.

Diese wurden geliefert und NETWAYS-typisch mit vollem Einsatz verzehrt.

Wir nehmen an, es wäre Mittwoch, 20.02.19, 09:19. Emaileingang am persönlichen Postfach:

Erstmal verblüffend:

a) Ich hatte keine Rechnungskopie angefordert.

b) Der Absender hat nichts mit der Metzgerei meines Vertrauens zu tun – die zensierte Emailadresse in der Signatur wäre allerdings korrekt.

c) Die Vorwahl in der Signatur zeigt ins Nirvana

Nun gut, aber man will ja ein verlässlicher Geschäftspartner sein, eventuell liegt es ja nur am “von meinem Samsung gesendet”?

Also klicken wir fröhlich den Link und landen auf einer Seite aus Beheshti Avenue,Tehra,1577837414,Iran??

Außerdem wird eine .doc-Datei angeboten. Auch die kleinste Metzgerei hat es mittlerweile hinbekommen, Rechnungen per pdf zu verschicken.

Aber gut, schauen wir doch mal, was LibreOffice damit so anfängt:

Hier habe ich dann das Experiment abgebrochen.

Es waren zuvor schon viele “Red Flags”, die einen aufmerksamen Emailbenutzer stutzig machen sollten.

Und im Zweifelsfall kann man seinen Geschäftskontakt auch schlicht anrufen, wenn man denn auf Nummer Sicher gehen will.

Wer sich weitere Beispiele anschauen möchte, kann bspw. hier klicken.

edit (TA): typos

Tim Albert
Tim Albert
System Engineer

Tim kommt aus einem kleinen Ort zwischen Nürnberg und Ansbach, an der malerischen B14 gelegen. Er hat in Erlangen Lehramt und in Koblenz Informationsmanagement studiert, wobei seine Tätigkeit als Werkstudent bei IDS Scheer seinen Schwenk von Lehramt zur IT erheblich beeinflusst hat. Neben dem Studium hat Tim sich außerdem noch bei einer Werkskundendienstfirma im User-Support verdingt. Blerim und Sebastian haben ihn Anfang 2016 zu uns ins Managed Services Team geholt, wo er sich nun insbesondere...

NoCode, Security by Design

NoPicture

Bei Netways sind wir immer am Puls der Zeit und probieren für euch den neuesten heißen Sch**ß aus. Heute möchte ich euch deswegen NoCode vorstellen. Wenn man NoCode noch nicht kennt; es kann als logische Fortsetzung aller aktuellen Cloud Technologien und Everything as Code Initiativen gesehen werden. So konnte sich NoCode innerhalb kurzer Zeit einen zentralen Platz auf der CloudNative Landscape sichern
Am Anfang steht die Lochkarte. Auf dieser sind Programme binär abgespeichert und werden von damaligen Großrechnern ausgeführt. Leider enthält der Code dieser Anwendungen einige wenige Bugs, was allgemein Verunsericherung führte. Lochkarten werden nach kurzer Zeit wieder abgeschafft.

Weiter geht es mit solide programmierten Unix und Windows Serveranwendungen, die innerhalb von vielen Unternehmen hervorragende Dienste leisteten. Da mit zunehmender Vernetzung die Probleme dieser Lösungen offensichtlicher wurden und man nicht schnell genug hinterher kam einen Fehler immer wieder durch zwei neue zu ersetzen, schaffte man vielerorts diese Insellösungen wieder ab und setzte auf Standards. Das Glück für die schon beinahe von Arbeitslosigkeit bedrohten Admins, es gibt derlei sehr viele.
Mittlerweile haben wir Virtualisierung und können mit P(roblem)aaS, I(nsecure)aaS und S(anduhr)aaS fast alle Kundenwünsche im keim … erfüllen. Ab diesem Zeitpunkt, wo man dank DevOps und dezentralen verbindungslosen Orchestrierungstools seine Bugfixes auf tausende Container gleichzeitig deployen kann, wird es Zeit sich von diesen noch beinah beherrschbaren Problem Factories zu verabschieden.
Jetzt können papierlos, hardwareless, connectionless und configurationless einpacken. Wir machen serverless und führen Funktionen ‘direkt in der Cloud’ aus.
Da wir alles vom Strom, über das Netzwerk bis zum Server abschaffen, fehlt nur noch der Code.
Genau hier springt NoCode ein. Mit wenigen Zeilen NoCode kann man sich fast alle Anwendungsfälle moderner Applikationen vorstellen. Das beste an NoCode, es enthält niemals Bugs und kann für die verschiedensten Einsatzzwecke genutzt werden. Als erste Enterprise Monitoring Lösung hat auch icinga2 die NoCode notation eingeführt. Jedes in NoCode geschriebene config file wird klaglos von der Syntax Prüfung akzeptiert. Ein Kollege arbeitet gerade daran ein neues Backend Feature in NoCode zu implementieren. Ich habe noch keine Details gesehen, aber es rennt wie Sau.

Schaut euch unbedingt das NoCode github Repo von Kelsey Hightower, dem verantwortlichen google Hacker, an. Hier könnt ihr das Projekt auschecken und mit docker testen.

Wer jetzt heiß ist und mal eine Anwendung im live Betrieb sehen möchte. Die vom führenden Crypto Anbieter ROT26 angeboteny Crpyto API ist gerüchteweise in NoCode implementiert. Probiert es direkt aus

Christoph Niemann
Christoph Niemann
Senior Consultant

Christoph hat bei uns im Bereich Managed Service begonnen und sich dort intensiv mit dem internen Monitoring auseinandergesetzt. Seit 2011 ist er nun im Consulting aktiv und unterstützt unsere Kunden vor Ort bei größeren Monitoring-Projekten und PERL-Developer-Hells.

Was mein ist, bleibt mein

Auch wenn mich das als Egoist darstellt, sollte das jeder in Betracht ziehen. Jedenfalls wenn es um potentiell sensible Daten geht.

Ein Beispiel

Jeder der häufig im Internet unterwegs ist, sei es nun privat oder geschäftlich, kennt das. Eine Anmelde-Maske.

Wer auf Sicherheit wert legt, nutzt hoffentlich überall ein anderes Passwort. Selbstverständlich sind die auch in einem Passwort-Manager wie Keepass oder Enpass hinterlegt und mit einem sicheren Master-Passwort gesichert.

Aber mal ganz ehrlich, wer klickt im Browser bei der Frage “Soll dieses Passwort gespeichert werden?” nicht gerne auf Ja? Nun, ich hab es eine Zeit lang vermieden war aber jedes Mal traurig nicht auf Ja geklickt zu haben.

Warum? Weil ich eine üble Angewohnheit, wie viele andere wohl auch, habe.

Bequemlichkeit

Ich nutze ein Passwort niemals ein zweites Mal. Ich habe alle meine Passwörter in Keepass gespeichert. Diese Datenbank ist mit einem relativ komplexen jedoch noch leicht zu merkendem Master-Passwort versehen und mit meinem Yubikey gekoppelt. 2-Faktor Authentifizierung wie aus dem Buche.

Aber ich bin bequemlich. Jedes Mal Keepass aufzumachen und diese Prozedur durchzuführen, für jede Anmelde-Maske die ich im Laufe des Tages benutzen muss? Ein Graus. Selbstverständlich kann ich Keepass im Hintergrund offen lassen, aber das würde dem Gedanken der 2-Faktor Authenfizierung widersprechen. Sicher, Keepass schützt die Passwörter vor unerlaubten Speicherzugriffen und derlei Späßen, jedoch hab ich dennoch kein gutes Gefühl dabei.

Aber warum speichere ich dann nicht einfach die Passwörter mit Hilfe des Browsers? Werden die dort nicht auch sicher gespeichert? Na, selbstverständlich werden sie das. Doch das Problem ist ein ganz anderes.

Das schwache Glied

Die Frage ist nämlich nicht wie die Passwörter vom Browser gespeichert werden, sondern wie erneut auf sie zugegriffen wird.

Ich setze Ubuntu 18 ein. Hier werden derart gespeicherte Passwörter im GnuPG-Schlüsselbund hinterlegt. Dieser wird bei jedem Login auf dem System entsperrt. (Oder beim entsperren des Systems.)

Nun, der aufmerksame Leser wird sich nun denken können weshalb ich das als schwaches Glied in der Kette ansehe. Ich bin bequemlich, welch Überraschung. Wenn ich das System entsperren muss, möchte ich nicht erst ein super sicheres Passwort eintippen müssen. Erst recht nicht während jemand daneben steht/sitzt. Je komplexer das Passwort nämlich, desto langsamer tippe ich es. Je langsamer ich tippe, desto eher steigt die Gefahr mir schaut jemand dabei zu. (Kollegen vertraue ich selbstverständlich, aber man weiß ja nie wo man sonst ist.) Deshalb: Es ist ein einfaches Passwort das super schnell getippt ist.

Falls aber doch jemand, oder etwas, Kenntnis von diesem Passwort erlangt war alles für die Katz. Sofort sind alle Passwörter aus dem GnuPG-Schlüsselbund gefährdet. Da hilft nur eines.

Die Lücke schließen

Zum Glück hat meine Bequemlichkeit doch ihre Grenzen. Denn ich fahre mein DELL XPS 13 grundsätzlich immer herunter wenn ich es länger aus den Augen lasse.

Somit ist diese Lücke auf einen Schlag verschlossen sobald der gesamte Festplatten-Inhalt verschlüsselt ist. Und das ist er inzwischen. LUKS sei dank.

Auch hier kommt es auf die Qualität der gewählten Passwörter an, schließlich muss vor dem Start des Systems erst einmal alles entschlüsselt werden können. Aber Achtung: Ein zu schwaches Passwort ist erneut das schwache Glied.

Hier habe ich einen Kompromiss mit meiner Bequemlichkeit geschlossen. Ich habe zwei Möglichkeiten meine Festplatte zu entschlüsseln. Zum einen ein super sicheres Passwort (das nicht im Wörterbuch zu finden ist), zum anderen aber auch ein leicht zu merkendes. (Das aber auch nicht im Wörterbuch zu finden ist, jedenfalls nicht 1:1) Der Clou jedoch ist, das zweite (einfache) Passwort ist mit dem Yubikey gekoppelt.

Ein Hoch auf die 2-Faktor Authentifizerung

Man merkt es vielleicht. Ich bin ein Fan meines Yubikeys. Besser gesagt, meiner zwei Yubikeys. (Es könnte ja einer abhanden kommen) Auf die technischen Details gehe ich jetzt nicht mehr ein, das macht zum Teil bereits Marius. Doch kurz auflisten wofür ich ihn noch einsetze möchte ich:

  • GPG (Private subkeys auf dem Yubikey)
  • SSH (Dank GPG, Gunnar hatte hierzu bereits etwas geschrieben)
  • Github (FIDO U2F)

Außerdem ist mein zweiter (privater) Yubikey NFC fähig, ich kann ihn also super easy mit der Keepass App auf dem Smartphone nutzen.

Was mein ist, bleibt mein!

Johannes Meyer
Johannes Meyer
Developer

Johannes ist seit 2011 bei uns und hilft bei der Entwicklung zukünftiger Knüller (Icinga2, Icinga Web 2, ...) aus dem Hause NETWAYS.

RFID & NFC

Die Namen RFID und NFC sind uns bestimmt irgendwo schon mal begegnet, aber viele wissen gar nicht was das ist oder was diese zwei “Dinge” machen.
RFID steht für “radio frequency identification” und ist eine Technologie (Sender-Empfänger) mit der man Daten kontaktlos speichern, lesen und verändern kann.
NFC steht für “Near Field Communication”, basiert auf RFID und ist auch eine Art mit der man Daten über wenige Zentimeter austauschen kann. Merke: NFC ist eine spezielle RFID Technik.
Einsatz
Immer mehr Banken statten die Kredit- und Debitkarten mit NFC-Chips aus, damit die Kunden an den Kassenterminals der Märkte kontaktlos zahlen können. Zu erkennen ist es am WLAN-ähnlichem Symbol.

Natürlich gibt es diese Technologie auch woanders, zum Beispiel bei Zutrittskontrollen oder für die Zeiterfassung. Auch zwei NFC-fähige Smartphones können untereinander Musik, Bilder, Videos usw. austauschen. Im Teil “Projekte” dieses Blogpost werde ich ein paar Projekte ansprechen, die man auch zu Hause nachmachen kann.
Aber wie funktioniert das Ganze?
RFID arbeitet in drei verschiedenen Frequenzen: 125 kHz – 135 kHz, 13,56 MHz und 860 MHz – 960 MHz. Beim Hinhalten des Transponder erzeugt das Lesegerät ein elektromagnetisches Wechselfeld. Das dient während der Kommunikation als Stromquelle für den Chip. NFC arbeitet dagegen mit einer Frequenz von 13,56 MHz. Haben beide NFC-Chips, so muss man diese einfach nah aneinanderhalten und die Kommunikation kann beginnen.
Vorteile
RFID: mehrere Meter Reichweite. NFC: schnelles, bequemes Bezahlen an Kassen.
Nachteile
RFID: über größere Distanzen auslesbar (je nach Frequenz). NFC: nicht an jeder Kasse verfügbar.
Schutz
Wer denkt, dass diese Technologie sicher ist, der denkt falsch. Denn es gibt viele Angriffsmethoden. Beim “Sniffing” werden während der Übertragung die Daten mit einem Lesegerät ausgelesen. So können Kriminelle auch neuere Autoschlüssel kopieren und ins Auto einsteigen. Sie können sich auch zwischen Sender und Empfänger reinhängen, die zu übertragenden Daten ändern und dem Empfänger weiterschicken. Dagegen hilft ein Schreibschutz. Wer aber eine Bankkarte besitzt, die eine NFC-Funktion hat, der kann sich eine spezielle Hülle oder einen speziellen Geldbeutel kaufen (z. B. auf ebay: RFID-, NFC-Blocker). Wer aber keine Lust hat Geld auszugeben, kann die Karte auch mit Alufolie einwickeln. 🙂  Was wir also wissen ist, dass noch viel in der Sicherheit verbessert werden muss.
Projekte
Im Internet gibt es zahlreiche Projekte, unteranderem mit einem Raspberry Pi in Verbindung mit einem RFID-Reader. Man könnte für Zuhause mit Hilfe einer App einen NFC-Tag (oder auch Transponder genannt) so programmieren, sodass er beim Hinhalten an das Handys eine WLAN-Verbindung für das Gerät herstellt. Auch sehr beliebt ist ein Schließmechanismus für eine Box, der nur aufgeht, wenn man seinen Transponder dabei hat.

Loei Petrus Marogi
Loei Petrus Marogi
Junior Developer

Loei ist Fachinformatik-Azubi im ersten Lehrjahr und lernt momentan unseren Toolstack kennen. Nach der Linux-Schulung freut er sich besonders aufs Programmieren. Wenn er mal nicht bei NETWAYS ist, spielt er Fußball im Verein oder geht ins Fitnessstudio.