{doctype}
{html {!
{head {!
{title "Stephan Beyer"}
{link {@ {rel "stylesheet"} {type "text/css"} {media screen}
{title "Grey"} {href "grey.css"}}}
{link {@ {rel "alternate stylesheet"} {type "text/css"} {media screen}
{title "Winter in Town"} {href "winterintown.css"}}}
{link {@ {rel "alternate stylesheet"} {type "text/css"} {media screen}
{title "Lemon"} {href "lemon.css"}}}}}
{body {!
{h1 {t "sbeyer on the Web."}}
{section pre "Preface" {!
{p {!
{t "My name is "}
{em {t "Stephan Beyer"}}
{extlinks {
{"audio/StephanBeyer.spx" spx}
{"audio/StephanBeyer.ogg" ogg}}}
{t " and this is my very outdated web page."}}}
{p {t "As most sites on the web, this one is always in development.
"Always" means "When I have time" ...and
this is not very often. In fact,
I am going to shut it down and replace it by something new."}}
{p {!
{t "The current default stylesheet is called "}
{em {t "Grey"}}
{t ". I hope you like it. If not, feel free to switch to one of the old
ones, like "}
{em {t "Winter in Town"}}
{t " or "}
{em {t "Lemon"}}
{t ". Yes, I like(d) the colors and that kind of eye-pepper\[tm\]."}}}
{p {!
{t "If you have JavaScript enabled,
the software and music
descriptions aren't displayed by default but will unfold when
you click on the names."}}}
{p {t "Enjoy."}}}}
{section sw "Software" {!
{p {!
{t "Here you can find "}
{em {t some}}
{t " of my programs, usually open-source and developed within an "}
{textlink "http://www.debian.org/" "Debian operating system"}
{t " environment. So please drop me a note if something does not work on
your platform, but should."}}}
{categories {
{sw:net "Network"
{catitems {
{netstiff netstiff
{desclist {
{License
{t "GNU General Public License (version 3)"}}
{Description
{code {t netstiff}}
{t " (formerly known as "}
{code {t webdiff}}
{t ") is a powerful "}
{em {t "Web and FTP site update checker"}}
{t ". It supports a variety of different methods
(diff, html, size, date, MD5 sum, regexp) to check for updates.
There are also sophisticated settings to make it useful for
partly dynamic Web pages.
Without any given arguments, netstiff will either run its
interactive configuration tool or check your sites for updates
and print the changes in a diff(1)-like manner."}}
{Screenshots
{t "see my "}
{textlink "./btwoftheday/?search=netstiff" "BTW of the day"}}
{Requirements
{em {t "Ruby"}}
{t " standard distribution (net::http, net::ftp, uri, pstore),
optional: GNU Readline for Ruby, OpenSSL for Ruby"}}
{Period
{t "2004-07-16 - 2008-03-31"}}
{Repository
{t "Get it with "}
{pre {t "git clone http://pkqs.net/~sbeyer/tools/netstiff/netstiff.git"}}
{t "You may also have an online look at it "}
{extlink "tools/netstiff/netstiff-git/" dir}
{t ", or at the manual page "}
{extlink "tools/netstiff/man/netstiff-git.pdf" pdf}
{t ", or download a tarball "}
{extlink "tools/netstiff/netstiff-git.tar.gz" tgz}
{t "."}}
{Archive
{swarchive {
{"2008-03-31"
{{"tools/netstiff/netstiff_20080331.orig.tar.gz" tgz}
{"tools/netstiff/netstiff_20080331-1_all.deb" deb}
{"tools/netstiff/man/netstiff_20080331.pdf" pdf}}
{t "fixed https support,
better documentation,
all test methods diffable,
internal changes (will reinit the cache!),
regexp method will prompt on match status change
instead on pure match,
changed default behavior to new command, ..."}}
{2007-06-21
{{"tools/netstiff/netstiff_20070621.orig.tar.gz" tgz}
{"tools/netstiff/netstiff_20070621-1_all.deb" deb}
{"tools/netstiff/man/netstiff_20070621.pdf" pdf}}
{t "(beta) FTP support, stderr is used as error output
by default, "}
{code {t "-S"}}
{t " option can be used to suppress it, minor fixes and enhancements"}}
{2007-03-22
{{"tools/netstiff/netstiff_20070322.orig.tar.gz" tgz}
{"tools/netstiff/netstiff_20070322-1_all.deb" deb}
{"tools/netstiff/man/netstiff_20070322.pdf" pdf}}
{t "no libalgorithm-diff-ruby needed anymore;
unified diff output format; "}
{code {t "-W DIR"}}
{t " option to specify workdir;
can use external HTML dump tools for better diffs in html methods;
bugfixes and internal changes"}}}}}
{"Archive webdiff"
{swarchive {
{2007-03-02
{{"tools/netstiff/webdiff_20070302.orig.tar.gz" tgz}}
{t "regexp'able ranges using "}
{code {t "diff/html"}}
{t " methods, bugfixes, better exception handling, exit codes"}}
{2007-02-27
{{"tools/netstiff/webdiff_20070227.tar.gz" tgz}}
{t "added "}
{code {t "html"}}
{t " test method"}}
{2004-08-01
{{"tools/netstiff/webdiff_20040801.tar.gz" tgz}}
{t "added "}
{code {t "-r/--reset"}}
{t " option"}}
{2004-07-27
{{"tools/netstiff/webdiff_20040727.tar.gz" tgz}}
{t "optional GNU readline support for interactive configuration"}}
{2004-07-21
{{"tools/netstiff/webdiff_20040721.tar.gz" tgz}}
{t "bugfixes, added "}
{code {t range}}
{t " option for test method "}
{code {t diff}}}
{2004-07-20
{{"tools/netstiff/webdiff_20040720.tar.gz" tgz}}
{t "initial release"}}}}}}}}
{webdiff webdiff
{extlink "tools/netstiff/" dir}
{desclist {
{2007-03-22
{code {t webdiff}}
{t " has been renamed to "}
{code {textlink "./#netstiff" netstiff}}}}}}}}}
{sw:snd "Sound"
{catitems {
{silence silence
{extlinks {
{"tools/silence/silence.tcl" tcl}
{"tools/silence/ChangeLog" log}}}
{desclist {
{License
{t "GNU General Public License (version 2)"}}
{Description
{t "detects silence in a sound file and splits it into several sound
files without silence."}}
{Requirements
{em {t Tcl}}
{t " 8.4, "}
{textlink "http://www.speech.kth.se/snack/" Snack}
{t " 2.2"}}
{Period
{t "2006-07-06 - 2006-07-07"}}
{Derivative
{t "(2006-07-09) "}
{textlink "tools/silence/silence-at-begin.tcl" silence-at-begin.tcl}
{t " removes silence only at the beginning of a file."}}
{Archive
{swarchive {
{2006-07-07
{{"tools/silence/silence-20060707.tcl" tcl}}
{t bugfixes}}
{2006-07-06
{{"tools/silence/silence-20060706.tcl" tcl}}
{t "initial test release"}}}}}}}}}}}
{sw:misc "Miscellaneous"
{catitems {
{bf bf
{extlinks {
{"tools/bf/bf.tgz" tgz}}}
{desclist {
{License
{t "GNU General Public License"}}
{Description
{t "a fast interpreter for the esoteric programming language Brainfuck"}}
{Requirements
{em {t "ANSI C"}}
{t " compiler"}}
{Period
{t "2003-10-30 - 2004-12-19"}}
{Repository
{pre {t "git clone http://pkqs.net/~sbeyer/tools/bf/bf.git"}}}
{Archive
{swarchive {
{2008-03-30
{{"tools/bf/bf_20080330.tar.gz" tgz}
{"tools/bf/bf_20080330.pdf" pdf}}
{t "rewritten engine, faster than ever, changed some options, removed some options, some new options"}}
{2004-12-19
{{"tools/bf/bf_20041219.tar.gz" tgz}}
{t "faster again, removed -d option"}}
{2004-08-28
{{"tools/bf/bf_20040828.tar.gz" tgz}}
{t "speed up, but still only the 2nd fastest bf interpreter"}}
{2004-07-28
{{"tools/bf/bf_20040728.tar.gz" tgz}}
{t "can be compiled without slang now, gcc optimizations"}}
{2004-07-04
{{"tools/bf/bf_20040704.tar.gz" tgz}}
{t "miiinor bugfix in manual page"}}
{2004-04-30
{{"tools/bf/bf_20040430.tar.gz" tgz}}
{t "bugfix: now Slang input really works;
new option: "}
{code {t -n}}
{t " to translate "}
{code {t "\\n"}}
{t " input to "}
{code {t "\\0"}}}
{2004-04-23
{{"tools/bf/bf_20040423.tar.gz" tgz}}
{t "optimized code, interpreting much faster"}}
{2004-04-08
{{"tools/bf/bf_20040408.tar.gz" tgz}}
{t "manual page, new options: "}
{code {t "-h -,<inputmode> -w"}}
{t ", needs S-Lang library"}}
{2003-10-30
{{"tools/bf/bf_20031030.tar.gz" tgz}}
{t "initial release, options: "}
{code {t "-c<num> -d -i"}}}}}}}}}
{morse-x morse-x
{extlinks {
{"tools/morse-x/" dir}}}
{desclist {
{License
{t "GNU General Public License (version 2)"}}
{Description
{t "In "}
{code {t "morse-x"}}
{t " you can use any key on your keyboard as morse key (except "}
{kbd {t q}}
{t ", which exits) and then it displays your morsed stuff
as readable letters on stdout. So you should start it
in an xterm and then follow the instructions."}}
{Requirements
{em {t {ANSI C}}}
{t " compiler, "}
{textlink "http://www.libsdl.org/" libSDL}
{t " 1.2 since version 20060819 (pure Xlib was used before)"}}
{Period
{t "2004-02-28 - 2006-09-04"}}
{Archive
{swarchive {
{2006-09-03
{
{"tools/morse-x/morse-x_0.20060903.orig.tar.gz" tgz}
{"tools/morse-x/morse-x_0.20060903-1_i386.deb" "i386 deb"}}
{t "removed calibration stuff and use wpm-based timings instead,
changed version scheme, "}
{code {t "-t"}}
{t " option shows morse code table used"}}
{2006-08-19
{{"tools/morse-x/morse-x_20060819.tar.gz" tgz}
{"tools/morse-x/morse-x_20060819_i386.deb" "i386 deb"}}
{t "SDL port/rewrite, audio output"}}
{2004-07-13
{{"tools/morse-x/morse-x_20040713.tar.gz" tgz}}
{t "20040415 with manual page"}}
{2004-04-15
{{"tools/morse-x/morse-x_20040415.tar.gz" tgz}}
{t "code cleanup; exitable using window manager"}}
{2004-04-14
{{"tools/morse-x/morse-x_20040414.tar.gz" tgz}}
{t "the first release I found on my harddisk :/"}}}}}}}}
{nudruff nudruff
{extlinks {
{"tools/nudruff/nudruff.tgz" tgz}}}
{desclist {
{License
{t "GNU General Public License (version 2)"}}
{Description
{code {t nudruff}}
{t " is a tool choosing files for equal-sized archives (e.g. CD-Rs),
using a standard 2-approximation for BinPacking.
Input is a file with a filename on each line.
Grouping is supported (this means, you can specify the files that are
always put into the "}
{em {t same}}
{t " archive). GUIs and wrapper scripts are could follow when I feel like it."}}
{Requirements
{em {t Haskell}}
{t " compiler/interpreter"}}
{Period
{t "2006-03-03 - 2006-03-08"}}
{Archive
{swarchive {
{2006-03-08
{{"tools/nudruff/nudruff-20060308.tar.gz" tgz}}
{t "initial release"}}}}}}}}
{turing turing
{extlinks {
{"tools/turing/turing.pas" pas}
{"tools/turing/email.txt" doc}}}
{desclist {
{Derivative
{textlink "http://www.stud.tu-ilmenau.de/~stbe-in/haskell/turing.hs" "There
is also a tiny Turing machine simulator in Haskell!"}}
{Note
{t "The program and its "documentation" is in German!"}}
{Beschreibung
{t "Implementation des Modells einer Turingmaschine, wie wir es in der
Schule gelernt hatten. Vielleicht eine nette kleine Spielerei."}}
{Voraussetzungen
{em {t FreePascal}}}
{Zeitperiode
{t "geschrieben 2003-12-10, letzte Änderung 2006-07-24"}}
{Beispielprogramme
{textlink "tools/turing/add1.tur" add1}
{t ", "}
{textlink "tools/turing/halb.tur" halbiere}
{t ", "}
{textlink "tools/turing/bin-inkr.tur" "binäres Inkrement"}
{t ", "}
{textlink "tools/turing/bin-add.tur" "binäre Addition"}}
{Archiv
{swarchive {
{2006-07-24
{{"tools/turing/turing.pas" pas}}
{t "wieder kompilierbare und lauffähige Version des Programms vom 10.12.2003"}}}}}}}}}}}}}}}
{section doc "Documents" {!
{p {t "Some published documents. This section should be extended. ;-)"}}
{categories {
{doc:sni "Snippets"
{catitems {
{bugnotfeature "A bug, not a feature?"
{t " (2007-04-13)" }
{extlink "doc/a_bug-not_a_feature.txt" txt}}}}}
{doc:sw "Software Documentation"
{catitems {
{gnupg "German WikiBook: GnuPG"
{extlink "http://de.wikibooks.org/wiki/GnuPG" wiki}}}}}
{doc:tri "Trivia"
{catitems {
{btwoftheday "BTW of the day..."
{extlink "btwoftheday/" web}}}}}}}}}
{section music "Noise" {!
{p {t "Bad taste "music". But I truly recommend "Just a Test"."}}
{categories {
{music:amateur "Amateur"
{catitems {
{sleep "sbeyer - Sleep"
{extlink "audio/sbeyer_-_sleep.ogg" ogg}
{desclist {
{Date
{t "2007-07-28"}}
{Tags
{t "heavy"}}
{Lyrics
{textlink "audio/sbeyer_-_sleep.txt" here}}
{Who
{t "guitars, vocals - sbeyer"}}
{Comments
{ulist {
{t "I wanted to try a melancholy guitar recording with only
two Guitar chords. But I couldn't deny switching to the
Overdrive channel and so it became a little heavier or
darker or call it as you want."}
{t "The recording is not what I had in mind. It is always the
same: I divide the play in several parts and record each
one 30 times and then I cut the stuff together as I like...
And again: you can hear the cuts and my timings are really,
really bad. I should've practiced it before..as usual. ;-)"}
{t "The lyrics came to my mind spontaneously... No further
comment about them!"}
{t "Ah, I'm still using only two chords, if I'm not wrong."}
{t "The song reminds me of "Typically Me". This means,
"Sleep" is a typically-me-song."}
{t "The song that I first had in mind was two or three times
shorter and can be realized with one guitar, without bad
cuts, and sounds less like "Typically Me".
I guess, I will never record it."}}}}}}}
{typically_me "sbeyer - Typically Me"
{extlink "audio/sbeyer_-_typically_me.ogg" ogg}
{desclist {
{Date
{t "2006-09-01"}}
{Tags
{t "heavy"}}
{Lyrics
{t "none"}}
{Who
{t "guitars - sbeyer"}}
{Comments
{ulist {
{! {t "This one was just a test for the amp adjustment. I didn't want
to improvise for that test so I started to write a short
composition"}
{extlink "audio/sbeyer_-_typically_me.mid" mid}
{t " using the Python/Tk tool "}
{code {t "songwrite"}}
{t "."}}
{t "I divided this into several parts, recorded each part several
times and chose one of these recordings. For the intro I liked
the version with the playing mistakes."}
{t "The result is cut badly. I was too slow for the faster solo
part and shortened each tone a bit. To my surprise, this sounded
disgusting, but I let it that way."}
{t "Because the whole thing was too short, I added some crap that I had
also recorded in that session. The result can be heard. I do not
like it very much, but I thought I have to put it online."}}}}}}}
{just_a_test "{tre,sbeyer} - Just a Test"
{extlink "audio/tre,sbeyer_-_just_a_test.ogg" ogg}
{desclist {
{Date
{t 2006-05-30}}
{Tags
{t "improvisation, german, psychedelic, rock"}}
{Lyrics
{t "none"}}
{Who
{ulist {
{t "acoustic guitar - tre"}
{t "electric guitar - sbeyer"}
{t "stupid drums - an unknown neighbor listening to techno music"}}}}
{Comments
{t "18 minutes of improvisation"}}}}}
{snat_is "SCC - Snat is"
{extlinks {
{"audio/scc_-_snat_is.mp3" mp3}
{"audio/scc_-_snat_is.ogg" ogg}}}
{desclist {
{Date
{t 2002-08-27}}
{Tags
{t "experimental"}}
{Lyrics
{textlink "audio/scc_-_snat_is.txt" here}}
{Comments
{t "This is the Bratwurst (see below) in reverse and a bit faster.
As a result we got politically and religiously critical lyrics in
a yet unknown language. Enjoy!"}}}}}
{bratwurst "SCC - Die Bratwurst tanzt"
{extlinks {
{"audio/scc_-_die_bratwurst_tanzt.mp3" mp3}
{"audio/scc_-_die_bratwurst_tanzt.ogg" ogg}}}
{desclist {
{Date
{t 2002-08-10}}
{Tags
{t "German"}}
{Lyrics {!
{t "by jag"}
{extlink "audio/scc_-_die_bratwurst_tanzt.txt" txt}}}
{Who
{ulist {
{t "vocals - jag"}
{t "guitar - sbeyer"}}}}
{Comments
{t "This song was around five hours of work for a silly
but nice song about a dancing bratwurst."}}}}}}}}}}}}
{section edu "Education" {!
{p {!
{t "I am studying computer science at the "}
{textlink "http://www.tu-ilmenau.de/" "Technische Universität Ilmenau"}
{t ".
You can have a look at my old schedules (German)."}
{extlink "university/stundenplan.alt.txt" txt}}}
{p {!
{t "Here are some of my held presentations at university and other stuff.
I uploaded them with TeX/LaTeX source, so that you can use it as a
LaTeX reference."}}}
{categories {
{edu:net "Presentations for Seminars (in chronological order)"
{catitems {
{gvs4 "Grundlagen verteilter Systeme, 4. Übung"
{desclist {
{Time
{t "20 minutes"}}
{Language
{t "German"}}
{Date
{t "2006-12-21"}}
{Course
{t "Grundlagen verteilter Systeme"}}
{Description
{t "Diese Präsentation stellt die Lösung einer Übungsaufgabe
zum Philosophenproblem dar (Analyse eines Algorithmus, der das Problem
hinreichend lösen soll). Der allgemeine Nutzen ist wohl recht
gering, aber es ist ein gutes Beispiel dafür, dass man es mit
Overlays in Folien nicht übertreiben sollte."}}
{Files
{swarchive {
{"Folien"
{{"university/pres/gvs.pdf" pdf}}
{t "Vorsicht: 2 MB!"}}
{"Source"
{{"university/pres/gvs.tex" tex}}
{t "erster Gehversuch mit "}
{code {t "pgf"}}
{t " bzw. "}
{code {t "TikZ"}}}
{"Java-Testprogramm 1"
{{"university/pres/gvs.v1/Test.java" java}}
{t "mit Essfehler (Philosophen fangen mit Essen an, wenn sie
Gabeln erhalten.)"}}
{"Java-Testprogramm 2"
{{"university/pres/gvs.v2/Test.java" java}}
{t "funktioniert. Darstellungen aber suboptimal. Reichte aber zum Zeigen."}}}}}
{Comment
{t "Lesson learned: Do not use overlays that much!"}}}}}
{clone "Klonerkennung nach Baxter"
{desclist {
{Time
{t "30 minutes"}}
{Language
{t "German"}}
{Date
{t "2007-05-25"}}
{Course
{t "Software-Reengineering"}}
{Description
{t "Diese Präsentation gibt einen kurzen Überblick
des Klonerkennungsverfahren (engl. Clone Detection) nach
Ira Baxter und zeigt die einzelnen Schritte idealisiert
am Beispiel "}
{code {textlink "http://www.jcraft.com/jsch/" "jsch"}}
{t "."}}
{Files
{swarchive {
{"Präsentationsfolien"
{{"university/pres/clone.pdf" pdf}}
{t "begleitend zum Vortrag, allein wenig aussagekräftig"}}
{"Handout"
{{"university/pres/clone-a4.pdf" pdf}}
{t "Handout mit Platz für Notizen"}}
{"alternatives Handout"
{{"university/pres/clone-a4.bad.pdf" pdf}}
{t "alternatives Handout, nur testweise"}}
{"Source"
{{"university/pres/clone.tar.gz" tgz}}
{t "LaTeX-Quellcode mit "}
{code {t "Makefile"}}
{t " und " }
{textlink "http://keyjnote.sourceforge.net/" "KeyJNote"}
{t "-Infodatei"}}}}}
{Comment
{t "Just few information on slides itself. Many things were just
shown during the lecture.
Overlays only where needed."}}}}}
{suffix Suffixbäume
{desclist {
{Time
{t "60 minutes"}}
{Language
{t "German"}}
{Date
{t "2007-06-14"}}
{Course
{t "Hauptseminar Automaten und Formale Sprachen"}}
{Description
{t "Diese Präsentation liefert einen Einsteigervortrag zur
Definition, Konstruktion und ersten Anwendungen von
Suffixbäumen (engl. suffix trees) im Rahmen des
Hauptseminars. Darauffolgend gab es zwei Vorträge
zu weiteren Anwendungen von Suffixbäumen."}}
{Files
{swarchive {
{"Präsentationsfolien"
{{"university/pres/suffix.beamer.pdf" pdf}}
{t "begleitend zum Vortrag"}}
{"Handout"
{{"university/pres/suffix.handout.pdf" pdf}}
{t "Beispiele für Ukkonen und Weiner fehlen"}}
{"Source"
{{"university/pres/suffix.tar.gz" tgz}}
{t "LaTeX-Quellcode mit "}
{code {t "Makefile"}}
{t " und " }
{textlink "http://keyjnote.sourceforge.net/" "KeyJNote"}
{t "-Infodatei"}}}}}
{Comment
{t "My first own Beamer styles. The dark red and dark green could
not really be distinguished from black using a projector."}}}}}
{hru-fernuni "Systemsicherheit, 2. Übung"
{desclist {
{Time
{t "20 minutes"}}
{Language
{t "German"}}
{Date
{t "2008-05-05"}}
{Course
{t "Systemsicherheit"}}
{Description
{t "Diese Präsentation stellt die Lösung einer
Übungsaufgabe für das Fach Systemsicherheit dar.
Die Aufgabe war das Abändern eines einfachen
Vorlesungsbeispiels zum HRU-Modell und Analysieren
der HRU-Safety."}}
{Files
{swarchive {
{"Folien"
{{"university/pres/hru-fernuni.pdf" pdf}}
{t "vortragsbegleitend"}}
{"Source"
{{"university/pres/hru-fernuni.tar.gz" tgz}}
{t "LaTeX-Quellcode plus Bilder und "}
{code {t ".git"}}}}}}}}}
{reputation "Manipulationsresistente Reputationssysteme"
{desclist {
{Time
{t "60-90 minutes"}}
{Language
{t "German"}}
{Date
{t "2008-06-26"}}
{Course
{t "Hauptseminar Automaten und Formale Sprachen"}}
{Description
{t "Diese Präsentation liefert einen Vortrag zu
manipulationsresistenten Reputationssystemen auf
spieltheoretischer Basis. Meine persönliche Meinung ist
allerdings, dass die theoretischen Erkenntnisse darin
nicht viel bringen."}}
{Files
{swarchive {
{"Präsentationsfolien"
{{"university/pres/reputation.pdf" pdf}}
{t "vortragsbegleitend"}}
{"Source"
{{"university/pres/reputation.tar.gz" tgz}}
{t "LaTeX-Quellcode"}}}}}}}}
{ban-logik "Systemsicherheit, 6. Übung"
{desclist {
{Time
{t "15-30 minutes"}}
{Language
{t "German"}}
{Date
{t "2008-06-30"}}
{Course
{t "Systemsicherheit"}}
{Description
{t "Diese Präsentation stellt die Lösung einer
Übungsaufgabe für das Fach Systemsicherheit dar.
Die Aufgabe war, mittels BAN-Logik zu beweisen, dass der
passive Teilnehmer einer mit dem
Needham/Schroeder-Authentisierungsprotokoll aufzubauenden
sicheren Kommunikation glaubt, dass er den symmetrischen
Sitzungsschlüssel mit dem aktiven Teilnehmer teilt."}}
{Files
{swarchive {
{"Folien"
{{"university/pres/ban-logik.pdf" pdf}}
{t "vortragsbegleitend, neben Tafel"}}
{"Source"
{{"university/pres/ban-logik.tar.gz" tgz}}
{t "LaTeX-Quellcode"}}}}}}}}}}}}}}}
{section pgp "OpenPGP" {!
{p {!
{t "My OpenPGP key is "}
{code {t "0x6EDDD207FCC5040F"}}
{t ". Here you can download "}}}
{ulist {
{! {t "my key, clean"}
{extlinks {
{"openpgp/fcc5040f.txt" txt}
{"openpgp/fcc5040f.asc" asc}}}}
{! {t "my policy"}
{extlink "openpgp/policy/" txt}}}}
{p {!
{t "I also own "}
{code {t "0x8AA3F9655088FFA3"}}
{t ". Information will perhaps not follow."}}}
{p {!
{t "Contact me if you want me to sign your OpenPGP key or to assure your identity for "}
{textlink "https://cacert.org/" "CAcert"}
{t ". We can meet around "}
{em {t Erfurt}}
{t ", "}
{em {t Ilmenau}}
{t ", "}
{em {t Saalfeld}}
{t ", "}
{em {t Jena}}
{t " in Thuringia, Germany."}}}}}
{section copy "Copyright Notice" {!
{p {!
{t "© 2006-2011, Stephan Beyer"}
{extlink "mailto:s-beyer gmx.net" mail}}}
{p {t "All rights reserved."}}
{p {!
{t "The XHTML code of this page is automatically generated."}
{extlink "index.t" src}}}
{script {@ {src index.js} {type text/javascript}} {t ""}}}}}}}}