Skip to content

OpenSSL 1.0 ist fertig

Man höre und staune: Heute wurde OpenSSL 1.0 veröffentlicht. Aus der Meldung:

The OpenSSL project team is pleased to announce the release of version 1.0.0 of our open source toolkit for SSL/TLS. This new OpenSSL version is a major release and incorporates many new features as well as major fixes compared to 0.9.8n. For a complete list of changes, please see http://www.openssl.org/source/exp/CHANGES.

The most significant changes are:

  • RFC3280 path validation: sufficient to process PKITS tests.
  • Integrated support for PVK files and keyblobs.
  • Change default private key format to PKCS#8.
  • CMS support: able to process all examples in RFC4134
  • Streaming ASN1 encode support for PKCS#7 and CMS.
  • Multiple signer and signer add support for PKCS#7 and CMS.
  • ASN1 printing support.
  • Whirlpool hash algorithm added.
  • RFC3161 time stamp support.
  • New generalised public key API supporting ENGINE based algorithms.
  • New generalised public key API utilities.
  • New ENGINE supporting GOST algorithms.
  • SSL/TLS GOST ciphersuite support.
  • PKCS#7 and CMS GOST support.
  • RFC4279 PSK ciphersuite support.
  • Supported points format extension for ECC ciphersuites.
  • ecdsa-with-SHA224/256/384/512 signature types.
  • dsa-with-SHA224 and dsa-with-SHA256 signature types.
  • Opaque PRF Input TLS extension support.
  • Updated time routines to avoid OS limitations.

Vortrag zu git und Keysigning bei der LUG Jena

Nebenan im Ereignisblog ist es schon zu lesen. Die Linux User Group in Jena startet am Donnerstag mit einem Vortrag oder besser Workshop zu git. Wir wollen dort ein wenig über die Einführungsthemen hinaus schauen und diskutieren, wie man git effektiv einsetzt.

Danach ist ab ca. 21:00 Uhr Stammtisch. Thomas hat angeregt, ein Keysigning zu machen. Bringt also Ausdrucke eurer PGP-Schlüssel mit und vergleicht. :-)

Ausarbeitung zum AES-Vortrag

Ich hatte meine Vortragsunterlagen zu einem Seminarvortrag kürzlich verbloggt. Mittlerweile ist auch die dazugehörige Ausarbeitung fertig. Die 257 kB große PDF-Datei behandelt den AES-Algorithmus und Public-Key-Verfahren (RSA und Diffie-Hellman-Schlüsseltausch). Vielleicht ist es für den einen oder anderen von Nutzen.

Tip #14: E-Mails mit mutt automatisch verschlüsseln

Ich sinniere schon seit einiger Zeit, wie ich ausgehende E-Mails weitgehend automatisch verschlüsseln kann. Vor längerer Zeit stiess ich dabei auf das Perlskript von Martin Grandrath. Auf der Seite ist gut beschrieben, wie das einzurichten ist. Das problem am Skript ist die relativ lange Startzeit. Es vergehen in der regel mehrere Sekunden bis mutt einsatzfähig ist.

Vor kurzem unterhielt ich mich mit Jörg Sommer darüber. Er hat eine Lösung mit zsh-Mitteln gebastelt. Diese ist zudem noch wesentlich schneller als die obige Variante:


#!/bin/zsh

hook_name=send-hook
blacklist_file=$HOME/Mail/crypt_blacklist
output_file=$HOME/Mail/crypt_hook_list

setopt extendedglob

gpg_dump=( ${(f)“$(gpg --list-keys --with-colons)”} )

# filter out lines without @
people=( ${(f)"$(for line in ${(M)gpg_dump:#(pub|uid):*@*}; do 
  print ${“${(@s.:.)line}”[10]}; done)"} )

typeset -a -U addresses
# possible bad lines:
# • email@example.com  -- only an address
# • name (<…>) 
addresses=( ${${people%>}##*<} )

[[ -r $blacklist_file ]] &&
  addresses=( ${addresses:#${(j:|:)~${${(f)"$(<$blacklist_file)"}:#\#*}}} )

print -l "$hook_name\t~A\tunset crypt_autoencrypt" \
  "$hook_name\t'~t \""${(j:|:)addresses//./\\\\.}"\"'\tset crypt_autoencrypt" \
  > $output_file

Was macht das Skript? Anfangs werden zunächst ein paar Variablen festgelegt und das erweiterte Globbing der zsh eingeschalten. In der Variable gpg_dump wird alsdann die Ausgabe von gpg --list-keys --with-colons gespeichert. Nun folgt ein wenig zsh-Magic. ;-) Die Anweisung hinter people entspricht in etwa der Shellzeile awk -F: ‘/^(pub|uid)/ { print $10 }’ gpg_dump, d.h. dort liegen dann alle E-Mail-Adressen, die auf den Schlüsseln angegeben waren. Schließlich wird für alle Adressen auf der Blackliste ein enstprechender Eintrag erzeugt und die Konfiguration in die Variable output_file geschrieben.Die Adressen in der Blackliste werden entfernt. Was übrig bleibt, schreibt das Skript in Datei, deren Name in output_file gespeichert ist. Dabei muss man beachten, dass mutt nicht unendlich viele Einträge akzeptiert. Es scheint eine Begrenzung irgendwo bei 200 Einträgen zu geben.

Das ist aus meiner Sicht eine gute Alternative zu Martins Skript. Solltet ihr Anmerkungen, Fragen, Kommentare haben, schreibt mir es unten rein oder schreibt direkt eine E-Mail an Jörg.

Update: Eine Zeile im Beitrag war ungenau formuliert. Nach einem Hinweis von Jörg habe ich das verbessert.

Die Verschlüsselung und der Datenschutzbeauftragte

In den Kommentaren zur Videoüberwachung in Jena riet mir Gonzo mich mit dem Datenschutzbeauftragten des Landes in Verbindung zu setzen. Zu dem Zeitpunkt hatte ich das bereits getan und “interessante” Erfahrungen gesammelt.

Erfahrungsgemäß bieten die Datenschutzbeauftragten PGP-Schlüssel an und in der Tat fand ich auf der Kontaktseite einen zum “Download” und einen in “lesbarer” Form. Ich wähle den ersten und stutze als ich die URL sehe. Das Dokument heißt pgp_schluessel.doc und file bestätigt mir den Verdacht: pgp_schluessel.doc: Microsoft Word-Dokument. Na gut, es gibt ja noch den in lesbarer Form. Ich übergebe curl die URL und versuche das Ergebnis gleich zu GnuPG zu importieren. Doch auch hier erscheint eine Fehlermeldung. Ein Blick auf die lesbare Form enthüllt dann ein HTML-Dokument. Nachdem ich dann den Schlüssel manuell extahiert hatte, konnte ich auch meine E-Mail schreiben. Doch da hatte ich bereits einen Verdacht, wie die Antwort ausfallen würde ...

In der Tat erhielt ich nach ein paar Tagen die Antwort, dass man meine E-Mail (bzw. den Anhang) nicht öffnen könne. In den Headern der E-Mail stand etwas von Outlook und je nachdem welche Zusatzsoftware man verwendet, kann es Probleme mit den (an sich korrekt) verschlüsselten E-Mails geben. Also schickte ich die E-Mail nochmal und nutzte eine ältere Methode (Inline-Verschlüsselung), die von allen Programmen erkannt wird. Ihr dürft jetzt dreimal raten, wie die Antwort ausfiel. :-(

Im Anschluss wandte ich mich an das ULD in Schleswig-Holstein und bekam von dort eine sehr detaillierte, ausführliche Antwort.

Wie AES funktioniert

Wolltest du schon immer mal auf leicht verständliche Weise erfahren, wie der Verschlüsselungsalgorithmus AES funktioniert? Enrique Zabala hat seine Flashanimation zur Funktionsweise nochmals verbessert. Diese Animation erklärt Schritt für Schritt den Ablauf des Algorithmus’ und ist eine gute Einführung in das Thema. Unten seht ihr einen Screenshot.

Screenshot aus der Slashanimation

cronjob