1 <?xml version=
"1.0" encoding=
"ISO-8859-1"?>
2 <rss version='
2.0' xmlns:lj='http://www.livejournal.org/rss/lj/
1.0/'
>
4 <title>Petter Reinholdtsen - Entries from March
2014</title>
5 <description>Entries from March
2014</description>
6 <link>http://people.skolelinux.org/pere/blog/
</link>
10 <title>Public Trusted Timestamping services for everyone
</title>
11 <link>http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html
</link>
12 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html
</guid>
13 <pubDate>Tue,
25 Mar
2014 12:
50:
00 +
0100</pubDate>
14 <description><p
>Did you ever need to store logs or other files in a way that would
15 allow it to be used as evidence in court, and needed a way to
16 demonstrate without reasonable doubt that the file had not been
17 changed since it was created? Or, did you ever need to document that
18 a given document was received at some point in time, like some
19 archived document or the answer to an exam, and not changed after it
20 was received? The problem in these settings is to remove the need to
21 trust yourself and your computers, while still being able to prove
22 that a file is the same as it was at some given time in the past.
</p
>
24 <p
>A solution to these problems is to have a trusted third party
25 "stamp
" the document and verify that at some given time the document
26 looked a given way. Such
27 <a href=
"https://en.wikipedia.org/wiki/Notarius
">notarius
</a
> service
28 have been around for thousands of years, and its digital equivalent is
30 <a href=
"http://en.wikipedia.org/wiki/Trusted_timestamping
">trusted
31 timestamping service
</a
>.
<a href=
"http://www.ietf.org/
">The Internet
32 Engineering Task Force
</a
> standardised how such service could work a
33 few years ago as
<a href=
"http://tools.ietf.org/html/rfc3161
">RFC
34 3161</a
>. The mechanism is simple. Create a hash of the file in
35 question, send it to a trusted third party which add a time stamp to
36 the hash and sign the result with its private key, and send back the
37 signed hash + timestamp. Both email, FTP and HTTP can be used to
38 request such signature, depending on what is provided by the service
39 used. Anyone with the document and the signature can then verify that
40 the document matches the signature by creating their own hash and
41 checking the signature using the trusted third party public key.
42 There are several commercial services around providing such
43 timestamping. A quick search for
44 "<a href=
"https://duckduckgo.com/?q=rfc+
3161+service
">rfc
3161
45 service
</a
>" pointed me to at least
46 <a href=
"https://www.digistamp.com/technical/how-a-digital-time-stamp-works/
">DigiStamp
</a
>,
47 <a href=
"http://www.quovadisglobal.co.uk/CertificateServices/SigningServices/TimeStamp.aspx
">Quo
49 <a href=
"https://www.globalsign.com/timestamp-service/
">Global Sign
</a
>
50 and
<a href=
"http://www.globaltrustfinder.com/TSADefault.aspx
">Global
51 Trust Finder
</a
>. The system work as long as the private key of the
52 trusted third party is not compromised.
</p
>
54 <p
>But as far as I can tell, there are very few public trusted
55 timestamp services available for everyone. I
've been looking for one
56 for a while now. But yesterday I found one over at
57 <a href=
"https://www.pki.dfn.de/zeitstempeldienst/
">Deutches
58 Forschungsnetz
</a
> mentioned in
59 <a href=
"http://www.d-mueller.de/blog/dealing-with-trusted-timestamps-in-php-rfc-
3161/
">a
60 blog by David Müller
</a
>. I then found
61 <a href=
"http://www.rz.uni-greifswald.de/support/dfn-pki-zertifikate/zeitstempeldienst.html
">a
62 good recipe on how to use the service
</a
> over at the University of
65 <p
><a href=
"http://www.openssl.org/
">The OpenSSL library
</a
> contain
66 both server and tools to use and set up your own signing service. See
67 the ts(
1SSL), tsget(
1SSL) manual pages for more details. The
68 following shell script demonstrate how to extract a signed timestamp
69 for any file on the disk in a Debian environment:
</p
>
71 <p
><blockquote
><pre
>
74 url=
"http://zeitstempel.dfn.de
"
75 caurl=
"https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt
"
76 reqfile=$(mktemp -t tmp.XXXXXXXXXX.tsq)
77 resfile=$(mktemp -t tmp.XXXXXXXXXX.tsr)
79 if [ ! -f $cafile ] ; then
80 wget -O $cafile
"$caurl
"
82 openssl ts -query -data
"$
1" -cert | tee
"$reqfile
" \
83 | /usr/lib/ssl/misc/tsget -h
"$url
" -o
"$resfile
"
84 openssl ts -reply -in
"$resfile
" -text
1>&2
85 openssl ts -verify -data
"$
1" -in
"$resfile
" -CAfile
"$cafile
" 1>&2
86 base64
< "$resfile
"
87 rm
"$reqfile
" "$resfile
"
88 </pre
></blockquote
></p
>
90 <p
>The argument to the script is the file to timestamp, and the output
91 is a base64 encoded version of the signature to STDOUT and details
92 about the signature to STDERR. Note that due to
93 <a href=
"http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
742553">a bug
94 in the tsget script
</a
>, you might need to modify the included script
95 and remove the last line. Or just write your own HTTP uploader using
96 curl. :) Now you too can prove and verify that files have not been
99 <p
>But the Internet need more public trusted timestamp services.
100 Perhaps something for
<a href=
"http://www.uninett.no/
">Uninett
</a
> or
101 my work place the
<a href=
"http://www.uio.no/
">University of Oslo
</a
>
107 <title>Video DVD reader library / python-dvdvideo - nice free software
</title>
108 <link>http://people.skolelinux.org/pere/blog/Video_DVD_reader_library___python_dvdvideo___nice_free_software.html
</link>
109 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Video_DVD_reader_library___python_dvdvideo___nice_free_software.html
</guid>
110 <pubDate>Fri,
21 Mar
2014 15:
25:
00 +
0100</pubDate>
111 <description><p
>Keeping your DVD collection safe from scratches and curious
112 children fingers while still having it available when you want to see a
113 movie is not straight forward. My preferred method at the moment is
114 to store a full copy of the ISO on a hard drive, and use VLC, Popcorn
115 Hour or other useful players to view the resulting file. This way the
116 subtitles and bonus material are still available and using the ISO is
117 just like inserting the original DVD record in the DVD player.
</p
>
119 <p
>Earlier I used dd for taking security copies, but it do not handle
120 DVDs giving read errors (which are quite a few of them). I
've also
122 <a href=
"http://people.skolelinux.org/pere/blog/Ripping_problematic_DVDs_using_dvdbackup_and_genisoimage.html
">dvdbackup
123 and genisoimage
</a
>, but these days I use the marvellous python library
125 <a href=
"http://bblank.thinkmo.de/blog/new-software-python-dvdvideo
">python-dvdvideo
</a
>
126 written by Bastian Blank. It is
127 <a href=
"http://packages.qa.debian.org/p/python-dvdvideo.html
">in Debian
128 already
</a
> and the binary package name is python3-dvdvideo. Instead
129 of trying to read every block from the DVD, it parses the file
130 structure and figure out which block on the DVD is actually in used,
131 and only read those blocks from the DVD. This work surprisingly well,
132 and I have been able to almost backup my entire DVD collection using
133 this method.
</p
> So far, python-dvdvideo have failed on between
10 and
134 20 DVDs, which is a small fraction of my collection. The most common
136 <a href=
"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
720831">DVDs
137 using UTF-
16 instead of UTF-
8 characters
</a
>, which according to
138 Bastian is against the DVD specification (and seem to cause some
139 players to fail too). A rarer problem is what seem to be inconsistent
140 DVD structures, as the python library
141 <a href=
"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
723079">claim
142 there is a overlap between objects
</a
>. An equally rare problem claim
143 <a href=
"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
741878">some
144 value is out of range
</a
>. No idea what is going on there. I wish I
145 knew enough about the DVD format to fix these, to ensure my movie
146 collection will stay with me in the future.
</p
>
148 <p
>So, if you need to keep your DVDs safe, back them up using
149 python-dvdvideo. :)
</p
>
154 <title>Norsk utgave av Alaveteli / WhatDoTheyKnow på trappene
</title>
155 <link>http://people.skolelinux.org/pere/blog/Norsk_utgave_av_Alaveteli___WhatDoTheyKnow_p__trappene.html
</link>
156 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Norsk_utgave_av_Alaveteli___WhatDoTheyKnow_p__trappene.html
</guid>
157 <pubDate>Sun,
16 Mar
2014 09:
30:
00 +
0100</pubDate>
158 <description><p
>Det offentlige Norge har mye kunnskap og informasjon. Men hvordan
159 kan en få tilgang til den på en enkel måte? Takket være et lite
160 knippe lover og tilhørende forskrifter, blant annet
161 <a href=
"http://lovdata.no/dokument/NL/lov/
2006-
05-
19-
16">offentlighetsloven
</a
>,
162 <a href=
"http://lovdata.no/dokument/NL/lov/
2003-
05-
09-
31">miljøinformasjonsloven
</a
>
164 <a href=
"http://lovdata.no/dokument/NL/lov/
1967-
02-
10/
">forvaltningsloven
</a
>
165 har en rett til å spørre det offentlige og få svar. Men det finnes
166 intet offentlig arkiv over hva andre har spurt om, og dermed risikerer en
167 å måtte forstyrre myndighetene gang på gang for å få tak i samme
168 informasjonen på nytt.
<a href=
"http://www.mysociety.org/
">Britiske
169 mySociety
</a
> har laget tjenesten
170 <a href=
"http://www.whatdotheyknow.com/
">WhatDoTheyKnow
</a
> som gjør
171 noe med dette. I Storbritannia blir WhatdoTheyKnow brukt i
172 <a href=
"http://www.mysociety.org/
2011/
07/
01/whatdotheyknows-share-of-central-government-foi-requests-q2-
2011/
">ca
173 15% av alle innsynsforespørsler mot sentraladministrasjonen
</a
>.
174 Prosjektet heter
<a href=
"http://www.alaveteli.org/
">Alaveteli
</A
>, og
175 er takk i bruk en rekke steder etter at løsningen ble generalisert og
176 gjort mulig å oversette. Den hjelper borgerne med å be om innsyn,
177 rådgir ved purringer og klager og lar alle se hvilke henvendelser som
178 er sendt til det offentlige og hvilke svar som er kommet inn, i et
179 søkpart arkiv. Her i Norge holder vi i foreningen NUUG på å få opp en
180 norsk utgave av Alaveteli, og her trenger vi din hjelp med
181 oversettelsen.
</p
>
183 <p
>Så langt er
76 % av Alaveteli oversatt til norsk bokmål, men vi
184 skulle gjerne vært oppe i
100 % før lansering. Oversettelsen gjøres
185 på
<a href=
"https://www.transifex.com/projects/p/alaveteli/
">Transifex,
186 der enhver som registrerer seg
</a
> og ber om tilgang til
187 bokmålsoversettelsen får bidra. Vi har satt opp en test av tjenesten
188 (som ikke sender epost til det offentlige, kun til oss som holder på å
189 sette opp tjenesten) på maskinen
190 <a href=
"http://alaveteli-dev.nuug.no/
">alaveteli-dev.nuug.no
</a
>, der
191 en kan se hvordan de oversatte meldingen blir seende ut på nettsiden.
192 Når tjenesten lanseres vil den hete
193 <a href=
"https://www.mimesbrønn.no/
">Mimes brønn
</a
>, etter
194 visdomskilden som Odin måtte gi øyet sitt for å få drikke i. Den
195 nettsiden er er ennå ikke klar til bruk.
</p
>
197 <p
>Hvis noen vil oversette til nynorsk også, så skal vi finne ut
198 hvordan vi lager en flerspråklig tjeneste. Men i første omgang er
199 fokus på bokmålsoversettelsen, der vi selv har nok peiling til å ha
200 fått oversatt
76%, men trenger hjelp for å komme helt i mål. :)
</p
>
205 <title>Freedombox on Dreamplug, Raspberry Pi and virtual x86 machine
</title>
206 <link>http://people.skolelinux.org/pere/blog/Freedombox_on_Dreamplug__Raspberry_Pi_and_virtual_x86_machine.html
</link>
207 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Freedombox_on_Dreamplug__Raspberry_Pi_and_virtual_x86_machine.html
</guid>
208 <pubDate>Fri,
14 Mar
2014 11:
00:
00 +
0100</pubDate>
209 <description><p
>The
<a href=
"https://wiki.debian.org/FreedomBox
">Freedombox
210 project
</a
> is working on providing the software and hardware for
211 making it easy for non-technical people to host their data and
212 communication at home, and being able to communicate with their
213 friends and family encrypted and away from prying eyes. It has been
214 going on for a while, and is slowly progressing towards a new test
215 release (
0.2).
</p
>
217 <p
>And what day could be better than the Pi day to announce that the
218 new version will provide
"hard drive
" / SD card / USB stick images for
219 Dreamplug, Raspberry Pi and VirtualBox (or any other virtualization
220 system), and can also be installed using a Debian installer preseed
221 file. The Debian based Freedombox is now based on Debian Jessie,
222 where most of the needed packages used are already present. Only one,
223 the freedombox-setup package, is missing. To try to build your own
224 boot image to test the current status, fetch the freedom-maker scripts
226 <a href=
"http://packages.qa.debian.org/vmdebootstrap
">vmdebootstrap
</a
>
227 with a user with sudo access to become root:
230 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
232 sudo apt-get install git vmdebootstrap mercurial python-docutils \
233 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
235 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
238 <p
>Root access is needed to run debootstrap and mount loopback
239 devices. See the README for more details on the build. If you do not
240 want all three images, trim the make line. But note that thanks to
<a
241 href=
"https://bugs.debian.org/
741407">a race condition in
242 vmdebootstrap
</a
>, the build might fail without the patch to the
243 kpartx call.
</p
>
245 <p
>If you instead want to install using a Debian CD and the preseed
246 method, boot a Debian Wheezy ISO and use this boot argument to load
247 the preseed values:
</p
>
250 url=
<a href=
"http://www.reinholdtsen.name/freedombox/preseed-jessie.dat
">http://www.reinholdtsen.name/freedombox/preseed-jessie.dat
</a
>
253 <p
>But note that due to
<a href=
"https://bugs.debian.org/
740673">a
254 recently introduced bug in apt in Jessie
</a
>, the installer will
255 currently hang while setting up APT sources. Killing the
256 '<tt
>apt-cdrom ident
</tt
>' process when it hang a few times during the
257 installation will get the installation going. This affect all
258 installations in Jessie, and I expect it will be fixed soon.
</p
>
260 Give it a go and let us know how it goes on the mailing list, and help
261 us get the new release published. :) Please join us on
262 <a href=
"irc://irc.debian.org:
6667/%
23freedombox
">IRC (#freedombox on
263 irc.debian.org)
</a
> and
264 <a href=
"http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss
">the
265 mailing list
</a
> if you want to help make this vision come true.
</p
>
270 <title>How to add extra storage servers in Debian Edu / Skolelinux
</title>
271 <link>http://people.skolelinux.org/pere/blog/How_to_add_extra_storage_servers_in_Debian_Edu___Skolelinux.html
</link>
272 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/How_to_add_extra_storage_servers_in_Debian_Edu___Skolelinux.html
</guid>
273 <pubDate>Wed,
12 Mar
2014 12:
50:
00 +
0100</pubDate>
274 <description><p
>On larger sites, it is useful to use a dedicated storage server for
275 storing user home directories and data. The design for handling this
276 in
<a href=
"http://www.skolelinux.org/
">Debian Edu / Skolelinux
</a
>, is
277 to update the automount rules in LDAP and let the automount daemon on
278 the clients take care of the rest. I was reminded about the need to
279 document this better when one of the customers of
280 <a href=
"http://www.slxdrift.no/
">Skolelinux Drift AS
</a
>, where I am
281 on the board of directors, asked about how to do this. The steps to
282 get this working are the following:
</p
>
286 <li
>Add new storage server in DNS. I use nas-server.intern as the
287 example host here.
</li
>
289 <li
>Add automoun LDAP information about this server in LDAP, to allow
290 all clients to automatically mount it on reqeust.
</li
>
292 <li
>Add the relevant entries in tjener.intern:/etc/fstab, because
293 tjener.intern do not use automount to avoid mounting loops.
</li
>
295 </ol
></p
>
297 <p
>DNS entries are added in GOsa², and not described here. Follow the
298 <a href=
"https://wiki.debian.org/DebianEdu/Documentation/Wheezy/GettingStarted
">instructions
299 in the manual
</a
> (Machine Management with GOsa² in section Getting
302 <p
>Ensure that the NFS export points on the server are exported to the
303 relevant subnets or machines:
</p
>
305 <p
><blockquote
><pre
>
306 root@tjener:~# showmount -e nas-server
307 Export list for nas-server:
310 </pre
></blockquote
></p
>
312 <p
>Here everything on the backbone network is granted access to the
313 /storage export. With NFSv3 it is slightly better to limit it to
314 netgroup membership or single IP addresses to have some limits on the
315 NFS access.
</p
>
317 <p
>The next step is to update LDAP. This can not be done using GOsa²,
318 because it lack a module for automount. Instead, use ldapvi and add
319 the required LDAP objects using an editor.
</p
>
321 <p
><blockquote
><pre
>
322 ldapvi --ldap-conf -ZD
'(cn=admin)
' -b ou=automount,dc=skole,dc=skolelinux,dc=no
323 </pre
></blockquote
></p
>
325 <p
>When the editor show up, add the following LDAP objects at the
326 bottom of the document. The
"/
&" part in the last LDAP object is a
327 wild card matching everything the nas-server exports, removing the
328 need to list individual mount points in LDAP.
</p
>
330 <p
><blockquote
><pre
>
331 add cn=nas-server,ou=auto.skole,ou=automount,dc=skole,dc=skolelinux,dc=no
332 objectClass: automount
334 automountInformation: -fstype=autofs --timeout=
60 ldap:ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
336 add ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
338 objectClass: automountMap
341 add cn=/,ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
342 objectClass: automount
344 automountInformation: -fstype=nfs,tcp,rsize=
32768,wsize=
32768,rw,intr,hard,nodev,nosuid,noatime nas-server.intern:/
&
345 </pre
></blockquote
></p
>
347 <p
>The last step to remember is to mount the relevant mount points in
348 tjener.intern by adding them to /etc/fstab, creating the mount
349 directories using mkdir and running
"mount -a
" to mount them.
</p
>
351 <p
>When this is done, your users should be able to access the files on
352 the storage server directly by just visiting the
353 /tjener/nas-server/storage/ directory using any application on any
354 workstation, LTSP client or LTSP server.
</p
>
359 <title>Hvordan bør RFC
822-formattert epost lagres i en NOARK5-database?
</title>
360 <link>http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html
</link>
361 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html
</guid>
362 <pubDate>Fri,
7 Mar
2014 15:
20:
00 +
0100</pubDate>
363 <description><p
>For noen uker siden ble NXCs fri programvarelisenserte
365 <a href=
"http://www.nuug.no/aktiviteter/
20140211-noark/
">presentert hos
366 NUUG
</a
> (video
367 <a href=
"https://www.youtube.com/watch?v=JCb_dNS3MHQ
">på youtube
368 foreløbig
</a
>), og det fikk meg til å titte litt mer på NOARK5,
369 standarden for arkivhåndtering i det offentlige Norge. Jeg lurer på
370 om denne kjernen kan være nyttig i et par av mine prosjekter, og for ett
371 av dem er det mest aktuelt å lagre epost. Jeg klarte ikke finne noen
372 anbefaling om hvordan RFC
822-formattert epost (aka Internett-epost)
373 burde lagres i NOARK5, selv om jeg vet at noen arkiver tar
374 PDF-utskrift av eposten med sitt epostprogram og så arkiverer PDF-en
375 (eller enda værre, tar papirutskrift og lagrer bildet av eposten som
376 PDF i arkivet).
</p
>
378 <p
>Det er ikke så mange formater som er akseptert av riksarkivet til
379 langtidsoppbevaring av offentlige arkiver, og PDF og XML er de mest
380 aktuelle i så måte. Det slo meg at det måtte da finnes en eller annen
381 egnet XML-representasjon og at det kanskje var enighet om hvilken som
382 burde brukes, så jeg tok mot til meg og spurte
383 <a href=
"http://samdok.com/
">SAMDOK
</a
>, en gruppe tilknyttet
384 arkivverket som ser ut til å jobbe med NOARK-samhandling, om de hadde
387 <p
><blockquote
>
388 <p
>Hei.
</p
>
390 <p
>Usikker på om dette er riktig forum å ta opp mitt spørsmål, men jeg
391 lurer på om det er definert en anbefaling om hvordan RFC
392 822-formatterte epost (aka vanlig Internet-epost) bør lages håndteres
393 i NOARK5, slik at en bevarer all informasjon i eposten
394 (f.eks. Received-linjer). Finnes det en anbefalt XML-mapping ala den
396 &lt;URL:
<a href=
"https://www.informit.com/articles/article.aspx?p=
32074">https://www.informit.com/articles/article.aspx?p=
32074</a
> &gt;? Mitt
397 mål er at det skal være mulig å lagre eposten i en NOARK5-kjerne og
398 kunne få ut en identisk formattert kopi av opprinnelig epost ved
400 </blockquote
></p
>
402 <p
>Postmottaker hos SAMDOK mente spørsmålet heller burde stilles
403 direkte til riksarkivet, og jeg fikk i dag svar derfra formulert av
404 seniorrådgiver Geir Ivar Tungesvik:
</p
>
406 <p
><blockquote
>
407 <p
>Riksarkivet har ingen anbefalinger når det gjelder konvertering fra
408 e-post til XML. Det står arkivskaper fritt å eventuelt definere/bruke
409 eget format. Inklusive da - som det spørres om - et format der det er
410 mulig å re-etablere e-post format ut fra XML-en. XML (e-post)
411 dokumenter må være referert i arkivstrukturen, og det må vedlegges et
412 gyldig XML skjema (.xsd) for XML-filene. Arkivskaper står altså fritt
413 til å gjøre hva de vil, bare det dokumenteres og det kan dannes et
414 utrekk ved avlevering til depot.
</p
>
416 <p
>De obligatoriske kravene i Noark
5 standarden må altså oppfylles -
417 etter dialog med Riksarkivet i forbindelse med godkjenning. For
418 offentlige arkiv er det særlig viktig med filene loependeJournal.xml
419 og offentligJournal.xml. Private arkiv som vil forholde seg til Noark
420 5 standarden er selvsagt frie til å bruke det som er relevant for dem
421 av obligatoriske krav.
</p
>
422 </blockquote
></p
>
424 <p
>Det ser dermed ut for meg som om det er et lite behov for å
425 standardisere XML-lagring av RFC-
822-formatterte meldinger. Noen som
426 vet om god spesifikasjon i så måte? I tillegg til den omtalt over,
427 har jeg kommet over flere aktuelle beskrivelser (søk på
"rfc
822
428 xml
", så finner du aktuelle alternativer).
</p
>
432 <li
><a href=
"http://www.openhealth.org/xmtp/
">XML MIME Transformation
433 protocol (XMTP)
</a
> fra OpenHealth, sist oppdatert
2001.
</li
>
435 <li
><a href=
"https://tools.ietf.org/html/draft-klyne-message-rfc822-xml-
03">An
436 XML format for mail and other messages
</a
> utkast fra IETF datert
439 <li
><a href=
"http://www.informit.com/articles/article.aspx?p=
32074">xMail:
440 E-mail as XML
</a
> en artikkel fra
2003 som beskriver python-modulen
441 rfc822 som gir ut XML-representasjon av en RFC
822-formattert epost.
</li
>
445 <p
>Finnes det andre og bedre spesifikasjoner for slik lagring? Send
446 meg en epost hvis du har innspill.
</p
>