Quelloffener Code im Einsatz bei Verschlüsselungssoftware

hannes.huber2.uni-linz, 22. März 2017, 15:23

 

Beschreibung

Neben Einleitung und der Definitionen liegt der Hauptteil der Arbeit auf dem Einsatz von quelloffenem Code bei Verschlüsselungssoftware. Hier werden sowohl die Merkmale als auch Risiken und Chancen erläutert. Am Ende folgen Fallbeispiele zur Illustration.

 

Gliederung

  • Einleitung
  • Definition Quelloffener Code
  • Anwendungsgebiete
  • Definition Verschlüsselung
  • Merkmale offenen Codes bei Verschlüsselung
  • Risiken und Chancen von offenem Code bei Verschlüsselung
    • Risiken durch Erweiterungen (dritter) Autoren/Distributoren
    • Chance offenen Codes durch Fehlersuche Dritter
  • Fallbeispiele

 

Inhalt


Bildquelle: https://pixabay.com Lizenz: CC0 Public Domain

 

Definition quelloffener Code/Open Source(Q1)


Quelle: Open Source Initiative official SVG - Simon Phipps, former president of OSI, Creative Commons Attribution 2.5 License

Grudsätlich ist quelloffener Code und Open Source nicht das selbe. Vielmehr hat die Open Source Initiative regeln festgelegt, unter denen sich eine Software als Open Source bezeichnen darf. Auch wenn die Definition von Open Source seitens der Open Source Initiative aufgestellt wurde, besteht kein Markenschutz. Daher kann Jeder Open Source Definieren und Anwenden wie er will.(Q5) Unter quelloffenem Code hingegen wird lediglich verstanden, dass der Code einsehbar ist.

Neben der Eigenschaft, welche der Name bereits besagt, dass Zugriff auf den Code gewährleistet sein muss, müssen weitere Kriterien erfüllt sein, damit der Code als Open Source im Sinne der Open Source Initiative gilt:

Unbeschränkte Weitergabe

Die Lizenz darf nicht verhindern, dass die Software oder Teile daraus verkauft oder  weitergegeben werden. Weiters dürfen keine Abgaben oder sonstige Leistungen bei Weitergabe entstehen.

Quellcode

Das Programm muss in Form von Quellcode vorliegen, welcher sowohl als solcher, als auch im kompilierter Form weitergegeben werden darf. Zwischenformen oder verschleierter Quellcode ist nicht zulässig.

Abgeleitete Werke

Die Lizenz muss die Veränderung, sowie die Weitergabe dieser unter gleichen Lizenzbedingungen erlauben.

Integrität des ursprünglcihen Codes

Eine Weitergabe des Veränderten Codes darf nur dann verboten werden, wenn sie die Weitrergabe von Patch-Dateien (=Korrekturauslieferung) samt Quellcode erlaubt.

Keine Diskriminierung von Personen oder Gruppen

Die Lizenz darf keine Personen oder Gruppen diskriminieren.

Keine Diskriminierung von Einsatzbereichen

Die Lizenz darf keien Einschränkungen zum Einsatzbereich (z.B. nur geschäftlich) geben. 

Weitergabe der Lizenz

Die mit dem Programm verbundenen Rechte müssen unabhängig von eionem Lizenzerwerb für jeden gelten.

Produktunabhängige Lizenz

Die mit dem Programm verbundenen Rechte dürfen nicht davon abhängen, ob das Programm Teil einer Softwareverteilung ist.

Keine Auswirkungen auf andere Software

Die Lizenz darf keine Einschränkungen enthalten, welche auf andere Software auswirken haben.

Technologieneutrale Lizenz

Die Lizenz mut sowohl Technologie- als auch Schnittstellenneutral sein.

 

 

Anwendungsgebiete Open Source(Q2)

Open Source basiert letztlich auf dem Prinzip des "Community-Prozesses". Sie ist auf einen großen Nutzerkreis ausgerichtet. Daher kommt Offener Code in spezialisierte Software weniger oft vor, als in Bereichen die von einer vielzahl von Anwendern verwendet werden.

Alternative für herkömmliche Software(Q3)

Open Source findet Anwendung in unzähligen Bereichen, so gibt es Alternativsoftware im Bereich von open Source Software unter anderem für

  • Acrobat
  • AutoCAD
  • Gmail
  • MATLAB
  • Minecraft
  • Picasa
  • Publisher
  • Slack
  • Trello
  • ...

Hierbei handelt es sich um eine lediglich um eine Beispielhafte und keinesfalls abschließende Aufzählung.

 

Definition Verschlüsselung (Q4)

"Unter Verschlüsselung versteht man Verfahren und Algorithmen, die Daten mittels digitaler bzw. elektronischer Codes oder Schlüssel inhaltlich in eine nicht lesbare Form umwandeln."(Q4)

 
Quelle: Eigene Darstellung

Das Verschlüsseln als Verfahren besteht aus der Verschlüsselung (links im Bild) und der Entschlüsselung (rechts im Bild). Es wird zwischen symmetrischer und unsymmetrischem Verschlüsselungsverfahren unterschieden. Bei der symmetrischen Verschlüsselung wird für den Ver-  und Entschlüsselungsvorgang ein identer Schlüssel verwendet, welcher den Originaltext mit Hilfe des Schlüssels in verschlüsselten Text und wieder zurück verwandelt. Asymmentrische Verschlüsselungsverfahren verwenden unterschiedliche Schlüssel für die Ver- und Entschlüsselung. Der Schlüssel zum Verschlüsseln wird hier als Private Key und der Entschlüsselungsschlüssel Public-Key bezeichnet.

Sicherheit von Verschlüsselung(Q4)

Als Qualtiätskriterium für das Verschlüsselungsverfahren wird die Anzahl möglicher Schlüssel herangezogen. Ein absolut Sicheres Verschlüsselungsverfahren gibt es nicht. Verschlüsselung setzt auf den Faktor Zeit, den jemand braucht um an die verschlüsselte Originalnachricht zu gelangen.

Doch selbst wenn die Verschlüsselung der Daten einwandfrei funtkioniert, gibt es weitere Probleme, so Beispielsweise das Man in the Middle Problem und das Problem der Metadaten.

 

Offener Code bei Verschlüsselung

Die Vorteile offenen Codes bei Verschlüsselugn liegen auf der Hand. Eingesetzer Quellcode der für Jeden zugänglich ist, kann auch überprüft werden. Für die prüfung von Quellcode ist jedoch Expertenwissen notwendig. Daher hat sich in der Praxis gezeigt, dass offener Code zwar von unzähligen Usern angewendet wird, der Quellcode aber kaum einer Prüfung unterzogen wird.(Q4) Ein weiterer Vorteil von quelloffener Software im Vergleich zu proprietärem Code ist, dass er im Regelfall weit verbreitet ist, es daher für die Entschlüsselung der Daten keine große Rolle spielt, ob das Projekt bzw. die Firma dahinter noch existiert. Denn was geschieht mit verschlüsselten Daten, wenn das hinter proprietäre Software zur Entschlüsselung steckende UNternehmen oder die Personen das Projekt einstellen?  

 

Seit den Enthüllungen von Edward Snowden steht mit an Sicherheit grenzender Wahrscheinlichkeit fest, dass sich in kommerziellen Produkten wie Bitlocker und Co. Hintertüren befinden. Dahinter verbirgt sich wohl der nächste Nachteil proprietärer Software.

 

Alternativen zu offenem Code bei Verschlüsselung (Q4)

Bei offenem Code kann icht nur der redliceh Benutrzwer den Code einsehen, sondern auch der potentielle Angreifer. Für diesen ist ein system, dessen Code er frei einsehen kann unter Umständen leichter zu knacken als eine Software mit nicht zugänglcihem System. Als Alternative könnte hier proprietärer Code, der einem unabhängigem Audit unterzogen wurde eingesetzt werden.

 

Fallbeispiele

Volksverschlüsselung(Q12)

Das Frauenhofer SIT hat sich zum Ziel gesetzt, eine Verschlüsselungslösung zu entwickeln, die dank der geringen komplexität für den Alltag einer breiten Bevölkerung anwendbar ist. Wie das Ganze funktioniert, soll nachfolgendes Video erläutern.

 

WhatsApp(Q9)

Über eine Milliarde Benutzer verwenden/vertrauen Whattsapp. Da drängt sich natürlcih die Frage auf ob dieses Vertrauen berechtigt ist. Whatsapp verswchlüsselt Ende zu Ende, soweit so gut. Dei Verschlüsseulng stammt von Signal, einem Open Source Messenger, der allgemein als Vorbildlich angesehen wird. Da Whattsapp jedoch nicht Open Source ist, können sich Anwender jedoch nie ganz sicher sein, und werden dem Anbieter wohl vertrauen müssen.

 

Pretty Good Privacy

Truecrypt

 

Cryptomator(Q11)

Cryptomator bietet eine auf dem eigenen Gerät stattfindende Verschlüsselung für die Cloud. Für diese plattformunabhängige, auch für Anwender einfach zu bedienende Lösung wurde Cryptomator mit dem CeBIT Innovation Award 2016 ausgezeichnet. Eine der Besonderheiten dieser Software ist der Anwendungskomfort bei der Verschlüsselung von Daten. So wird ein virtuelles Laufwerk erstellt, in dem der Benutzer die zu verschlüsselnden Dokumente speichert. Cryptomonitor verschlüsselt die Daten vor der Übertragung, so gelangen nur verschlüsselte Daten in die Cloud. Die Software ermöglicht es dem Anwender mit dem einfachen setzen eines Passwortes auszukommne. Es sind keien Accounts, Schlüsselverwaltung, Zugriffsrechte oder Verschlüsselungseinstellungen notwendig. Es handelt sich um eien quelloffene Software lizeniert unter der MIT / X Consortium Lizenz.

 

Quellen(Qn):

  1. https://opensource.org/osd
  2. Saleck, Chefsache Open Source - Kostenvorteile und Unabhängigkeit durch Open Source S87
  3. https://opensource.com/
  4. http://www.elektronik-kompendium.de/sites/net/1907041.htm
  5. https://www.heise.de/ct/artikel/Die-Woche-Was-ist-Open-Source-222121.html
  6. https://datenschmutz.net/truecrypt-am-ende-die-zukunft-der-open-source-verschluesselung/
  7. Reichenberger, Security Development in Open Source Projekten, 2015
  8. Spitz/Pramateftakis/Swoboda, Kryptographie und IT-Sicherheit, 2. Auflage 2011
  9. https://www.heise.de/security/artikel/Test-Hinter-den-Kulissen-der-WhatsApp-Verschluesselung-3165567.html
  10. http://www.ossdirectory.com/fileadmin/OSSStudieSchweiz2015.pdf
  11. https://cryptomator.org/de/
  12. https://www.volksverschluesselung.de/
  13. http://t3n.de/news/whatsapp-alternativen-blick-430632/
  14. https://www.kuketz-blog.de/conversations-sicherer-android-messenger/
  15. https://github.com/wireapp

0 comments :: Kommentieren


To prevent spam abuse referrers and backlinks are displayed using client-side JavaScript code. Thus, you should enable the option to execute JavaScript code in your browser. Otherwise you will only see this information.