aboutsummaryrefslogtreecommitdiff
path: root/da_DK.ISO8859-1/articles
diff options
context:
space:
mode:
authorMarc Fonvieille <blackend@FreeBSD.org>2004-07-12 13:09:30 +0000
committerMarc Fonvieille <blackend@FreeBSD.org>2004-07-12 13:09:30 +0000
commitfe5a5bb798bef2316f2624c5d08f6c77a603d634 (patch)
tree554bb53b94643babd016ca59e42aad819ef16ec5 /da_DK.ISO8859-1/articles
parent490c7741a06eb1e853d37213f123718b7b7eef1c (diff)
downloaddoc-fe5a5bb798bef2316f2624c5d08f6c77a603d634.tar.gz
doc-fe5a5bb798bef2316f2624c5d08f6c77a603d634.zip
Add a new translated article.
Submitted by: Laust S. Jespersen <Laust@doc.freebsd.dk>
Notes
Notes: svn path=/head/; revision=21454
Diffstat (limited to 'da_DK.ISO8859-1/articles')
-rw-r--r--da_DK.ISO8859-1/articles/Makefile1
-rw-r--r--da_DK.ISO8859-1/articles/ipsec-must/Makefile16
-rw-r--r--da_DK.ISO8859-1/articles/ipsec-must/article.sgml356
3 files changed, 373 insertions, 0 deletions
diff --git a/da_DK.ISO8859-1/articles/Makefile b/da_DK.ISO8859-1/articles/Makefile
index e9cd4f0226..43ee579ee1 100644
--- a/da_DK.ISO8859-1/articles/Makefile
+++ b/da_DK.ISO8859-1/articles/Makefile
@@ -1,6 +1,7 @@
# $FreeBSD$
SUBDIR = euro
+SUBDIR+= ipsec-must
SUBDIR+= pxe
diff --git a/da_DK.ISO8859-1/articles/ipsec-must/Makefile b/da_DK.ISO8859-1/articles/ipsec-must/Makefile
new file mode 100644
index 0000000000..0d1c646ab6
--- /dev/null
+++ b/da_DK.ISO8859-1/articles/ipsec-must/Makefile
@@ -0,0 +1,16 @@
+#
+# $FreeBSD$
+#
+# Article: Uafh&aelig;ngig Verifikation af IPsec Funktionalitet i FreeBSD
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/da_DK.ISO8859-1/articles/ipsec-must/article.sgml b/da_DK.ISO8859-1/articles/ipsec-must/article.sgml
new file mode 100644
index 0000000000..b31430b3c5
--- /dev/null
+++ b/da_DK.ISO8859-1/articles/ipsec-must/article.sgml
@@ -0,0 +1,356 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD Danish Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.12
+-->
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % misc PUBLIC "-//FreeBSD//ENTITIES DocBook Miscellaneous FreeBSD Entities//EN"> %misc;
+<!ENTITY % trademarks PUBLIC "-//FreeBSD//ENTITIES DocBook Trademark Entities//EN"> %trademarks;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//DK"> %translators;
+]>
+
+<article lang="da">
+ <articleinfo>
+ <title>Uafh&aelig;ngig Verifikation af IPsec Funktionalitet i
+ &os;</title>
+
+ <author>
+ <firstname>David</firstname>
+ <surname>Honig</surname>
+
+ <affiliation>
+ <address><email>honig@sprynet.com</email></address>
+ </affiliation>
+ </author>
+
+ <pubdate>3 Maj 1999</pubdate>
+
+ <legalnotice id="trademarks" role="trademarks">
+ &tm-attrib.freebsd;
+ &tm-attrib.opengroup;
+ &tm-attrib.general;
+ </legalnotice>
+
+ <abstract>
+ &trans.da.jespersen;
+
+ <para>Du installerede IPsec og det ser ud til at virke. Men
+ hvordan ved du det? Jeg beskriver en metode til
+ eksperimentalt at verificere at IPsec virker.</para>
+ </abstract>
+ </articleinfo>
+
+ <sect1>
+ <title>Problemet</title>
+
+ <para>Lad os antage, at du har <link linkend="ipsec-install">
+ installeret <emphasis>IPsec</emphasis></link>. Hvordan ved du
+ at det <link linkend="caveat">virker</link>?
+ Selvf&oslash;lgelig virker din forbindelse ikke hvis den er
+ miskonfigureret, og den vil virke n&aring;r du endelig laver det
+ rigtigt. &man.netstat.1; lister den. Men kan du verificere det
+ uafh&aelig;ngigt?</para>
+ </sect1>
+
+ <sect1>
+ <title>L&oslash;sningen</title>
+
+ <para>F&oslash;rst, noget krypto-relevant teoretisk
+ information:</para>
+
+ <orderedlist>
+ <listitem>
+ <para>krypterede data er uniformt distribueret, som f.eks. har
+ maksimal entropi pr. symbol;</para>
+ </listitem>
+
+ <listitem>
+ <para>r&aring;, ukomprimerede data er typisk redundant,
+ f.eks., har sub-maksimal entropi.</para>
+ </listitem>
+ </orderedlist>
+
+ <para>Hvis du kunne m&aring;le entropien af dataene til og fra dit
+ netv&aelig;rks interface. S&aring; kunne du se forskellen
+ mellem ukrypterede og krypterede data. Det ville v&aelig;re
+ tilf&aelig;ldet selvom nogle af dataene i <quote>krypteret
+ mode</quote> ikke var krypterede, som f.eks. den yderste IP
+ header skal v&aelig;re, hvis pakken skal kunne routes.</para>
+
+ <sect2 id="MUST">
+ <title>MUST</title>
+
+ <para>Ueli Maurers <quote>Universal Statistical Test for Random
+ Bit Generators</quote> (<ulink
+ url="http://www.geocities.com/SiliconValley/Code/4704/universal.pdf">
+ <acronym>MUST</acronym></ulink>) m&aring;ler hurtigt entropien
+ af en stikpr&oslash;ve. Den bruger en kompressionsagtig
+ algoritme. <link linkend="code">Forneden angives
+ kildekoden</link> til en variant der m&aring;ler successive
+ (~kvart megabyte) store bidder af en fil.</para>
+ </sect2>
+
+ <sect2 id="tcpdump">
+ <title>Tcpdump</title>
+
+ <para>Vi har ogs&aring; brug for en m&aring;de at opsamle de
+ r&aring; netv&aelig;rksdata. Et program kaldet
+ &man.tcpdump.1; lader dig gøre dette, hvis du har sl&aring;et
+ <emphasis>Berkeley Packet Filter</emphasis> interfacet til i
+ din <link linkend="kernel">kerne konfig fil</link>.</para>
+
+ <para>Kommandoen</para>
+
+ <screen><userinput><command>tcpdump</command> -c 4000 -s 10000 -w <replaceable>dumpfile.bin</replaceable></userinput></screen>
+
+ <para>vil opfange 4000 rå pakker til
+ <replaceable>dumpfile.bin</replaceable>. Op til 10.000 bytes
+ per pakke bliver opfanget i dette eksempel.</para>
+ </sect2>
+ </sect1>
+
+ <sect1>
+ <title>Eksperimentet</title>
+
+ <para>Her er eksperimentet:</para>
+
+ <procedure>
+ <step>
+ <para>&Aring;bn et vindue til en IPsec v&aelig;rt og et andet
+ vindue til en usikker v&aelig;rt.</para>
+ </step>
+
+ <step>
+ <para>Start nu med at <link linkend="tcpdump">opfange
+ pakker</link>.</para>
+ </step>
+
+ <step>
+ <para>I det <quote>sikre</quote> vindue, k&oslash;res &unix;
+ kommandoen &man.yes.1;, hvilket vil streame
+ <literal>y</literal> karakteren. Stop dette efter et stykke
+ tid. Skift til det usikre vindue, og gentag. Stop igen efter
+ et stykke tid.</para>
+ </step>
+
+ <step>
+ <para>K&oslash;r nu <link linkend="code">MUST</link> på de
+ opfangede pakker. Du skulle se noget lignende det
+ f&oslash;lgende. Det vigtige at notere sig er, at den sikre
+ forbindelse har 93% (6,7) af den ventede v&aelig;rdi (7.18),
+ og den <quote>normale</quote> forbindelse har 29% (2.1) af den
+ ventede v&aelig;rdi.</para>
+
+ <screen>&prompt.user; <userinput>tcpdump -c 4000 -s 10000 -w <replaceable>ipsecdemo.bin</replaceable></userinput>
+&prompt.user; <userinput>uliscan <replaceable>ipsecdemo.bin</replaceable></userinput>
+
+Uliscan 21 Dec 98
+L=8 256 258560
+Measuring file ipsecdemo.bin
+Init done
+Expected value for L=8 is 7.1836656
+6.9396 --------------------------------------------------------
+6.6177 -----------------------------------------------------
+6.4100 ---------------------------------------------------
+2.1101 -----------------
+2.0838 -----------------
+2.0983 -----------------</screen>
+ </step>
+ </procedure>
+ </sect1>
+
+ <sect1 id="caveat">
+ <title>Undtagelse</title>
+
+ <para>Dette eksperiment viser at, IPsec <emphasis>kan</emphasis>
+ se ud til at distribuere payload data
+ <emphasis>uniformt</emphasis>, som kryptering skal. Men det
+ eksperiment der er beskrevet her <emphasis>kan ikke</emphasis>
+ detektere mange mulige fejl i et system (ingen af hvilke jeg har
+ nogle beviser for). Disse inkluderer d&aring;rlig n&oslash;gle
+ generering eller udveksling, data eller n&oslash;gler der kan
+ ses af andre, brug af svage algoritmer, kernel undergravning,
+ osv. Studér kildekoden; kend kildekoden.</para>
+ </sect1>
+
+ <sect1 id="IPsec">
+ <title>IPsec---Definition</title>
+
+ <para>Internet Protokol sikkerheds udvidelser til IPv4;
+ kr&aelig;vet for IPv6. En protokol til at forhandle kryptering
+ og autentifikation p&aring; IP (v&aelig;rt-til-v&aelig;rt)
+ niveau. SSL sikrer kun en applikationssocket;
+ <application>SSH</application> sikrer kun et login;
+ <application>PGP</application> sikrer kun en specifik fil eller
+ besked. IPsec krypterer alting mellem to v&aelig;rter.</para>
+ </sect1>
+
+ <sect1 id="ipsec-install">
+ <title>Installering af IPsec</title>
+
+ <para>De fleste af de moderne versioner af &os; har IPsec
+ support i deres base kildekode. S&aring; du er sikkert
+ n&oslash;dt til at inkludere <option>IPSEC</option> optionen i
+ din kernel konfig og, efter genbygning og reinstallation af
+ kernel, konfigurere IPsec forbindelser ved hj&aelig;lp af
+ &man.setkey.8; kommandoen.</para>
+
+ <para>En udf&oslash;rlig guide om at k&oslash;re IPsec p&aring;
+ &os; er tilr&aring;dighed i <ulink
+ url="../../books/handbook/ipsec.html">FreeBSD
+ H&aring;ndbogen</ulink>.</para>
+ </sect1>
+
+ <sect1 id="kernel">
+ <title>src/sys/i386/conf/KERNELNAME</title>
+
+ <para>Dette skal v&aelig;re til stede i kernel konfig filen for at
+ v&aelig;re i stand til at opfange netv&aelig;rksdata med
+ &man.tcpdump.1;. V&aelig;r sikker p&aring; at k&oslash;re
+ &man.config.8; efter at tilf&oslash;je dette, og genbygge og
+ reinstallere.</para>
+
+ <programlisting>device bpf</programlisting>
+ </sect1>
+
+ <sect1 id="code">
+ <title>Maurers universelle statistiske test (for blok
+ st&oslash;rrelse=8 bits)</title>
+
+ <para>Du kan finde samme kode p&aring; <ulink
+ url="http://www.geocities.com/SiliconValley/Code/4704/uliscanc.txt">
+ dette link</ulink>.</para>
+
+<programlisting>/*
+ ULISCAN.c ---blocksize of 8
+
+ 1 Oct 98
+ 1 Dec 98
+ 21 Dec 98 uliscan.c derived from ueli8.c
+
+ This version has // comments removed for Sun cc
+
+ This implements Ueli M Maurer's "Universal Statistical Test for Random
+ Bit Generators" using L=8
+
+ Accepts a filename on the command line; writes its results, with other
+ info, to stdout.
+
+ Handles input file exhaustion gracefully.
+
+ Ref: J. Cryptology v 5 no 2, 1992 pp 89-105
+ also on the web somewhere, which is where I found it.
+
+ -David Honig
+ honig@sprynet.com
+
+ Usage:
+ ULISCAN filename
+ outputs to stdout
+*/
+
+#define L 8
+#define V (1&lt;&lt;L)
+#define Q (10*V)
+#define K (100 *Q)
+#define MAXSAMP (Q + K)
+
+#include &lt;stdio.h&gt;
+#include &lt;math.h&gt;
+
+int main(argc, argv)
+int argc;
+char **argv;
+{
+ FILE *fptr;
+ int i,j;
+ int b, c;
+ int table[V];
+ double sum = 0.0;
+ int iproduct = 1;
+ int run;
+
+ extern double log(/* double x */);
+
+ printf("Uliscan 21 Dec 98 \nL=%d %d %d \n", L, V, MAXSAMP);
+
+ if (argc &lt; 2) {
+ printf("Usage: Uliscan filename\n");
+ exit(-1);
+ } else {
+ printf("Measuring file %s\n", argv[1]);
+ }
+
+ fptr = fopen(argv[1],"rb");
+
+ if (fptr == NULL) {
+ printf("Can't find %s\n", argv[1]);
+ exit(-1);
+ }
+
+ for (i = 0; i &lt; V; i++) {
+ table[i] = 0;
+ }
+
+ for (i = 0; i &lt; Q; i++) {
+ b = fgetc(fptr);
+ table[b] = i;
+ }
+
+ printf("Init done\n");
+
+ printf("Expected value for L=8 is 7.1836656\n");
+
+ run = 1;
+
+ while (run) {
+ sum = 0.0;
+ iproduct = 1;
+
+ if (run)
+ for (i = Q; run && i &lt; Q + K; i++) {
+ j = i;
+ b = fgetc(fptr);
+
+ if (b &lt; 0)
+ run = 0;
+
+ if (run) {
+ if (table[b] &gt; j)
+ j += K;
+
+ sum += log((double)(j-table[b]));
+
+ table[b] = i;
+ }
+ }
+
+ if (!run)
+ printf("Premature end of file; read %d blocks.\n", i - Q);
+
+ sum = (sum/((double)(i - Q))) / log(2.0);
+ printf("%4.4f ", sum);
+
+ for (i = 0; i &lt; (int)(sum*8.0 + 0.50); i++)
+ printf("-");
+
+ printf("\n");
+
+ /* refill initial table */
+ if (0) {
+ for (i = 0; i &lt; Q; i++) {
+ b = fgetc(fptr);
+ if (b &lt; 0) {
+ run = 0;
+ } else {
+ table[b] = i;
+ }
+ }
+ }
+ }
+}</programlisting>
+ </sect1>
+</article>