git: d6c52283a7 - main - [doc-es][articles/ipsec-must] Translate article

Fernando Apesteguía <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
The branch main has been updated by fernape:

URL: https://cgit.FreeBSD.org/doc/commit/?id=d6c52283a77f7ec9ee15f8cb2a9704d52efde2e0

commit d6c52283a77f7ec9ee15f8cb2a9704d52efde2e0
Author:     Fernando Apesteguía <[email protected]>
AuthorDate: 2022-08-08 15:06:28 +0000
Commit:     Fernando Apesteguía <[email protected]>
CommitDate: 2022-08-09 15:03:50 +0000

    [doc-es][articles/ipsec-must] Translate article
---
 .../content/es/articles/ipsec-must/_index.adoc     |  50 +-
 .../content/es/articles/ipsec-must/_index.po       | 746 +++++++++++++++++++++
 2 files changed, 772 insertions(+), 24 deletions(-)

diff --git a/documentation/content/es/articles/ipsec-must/_index.adoc b/documentation/content/es/articles/ipsec-must/_index.adoc
index e584b3d893..94bc14311f 100644
--- a/documentation/content/es/articles/ipsec-must/_index.adoc
+++ b/documentation/content/es/articles/ipsec-must/_index.adoc
@@ -1,8 +1,11 @@
 ---
-title: Verificación independiente de la funcionalidad de IPsec en FreeBSD
 authors:
-  - author: David Honig
+  - 
+    author: 'David Honig'
     email: [email protected]
+description: 'Verificación independiente de la funcionalidad de IPsec en FreeBSD'
+tags: ["IPsec", "verification", "FreeBSD"]
+title: 'Verificación independiente de la funcionalidad de IPsec en FreeBSD'
 trademarks: ["freebsd", "opengroup", "general"]
 ---
 
@@ -40,62 +43,61 @@ endif::[]
 [.abstract-title]
 Resumen
 
-Instaló IPsec y parece estar funcionando. ¿Cómo lo sabe? Describo un método para verificar de forma experimental que IPsec está funcionando.
+Has intalado IPsec y parece estar funcionando. ¿Cómo lo sabes? Describo un método para verificar de forma experimental que IPsec está funcionando.
 
 '''
 
 toc::[]
 
 [[problem]]
-== El problema
+== El Problema
 
-Primero, asumamos que ha <<ipsec-install>>. ¿Cómo sabe que está <<caveat>>? Claro, su conexión no funcionará si está mal configurada, y funcionará cuando finalmente lo haga bien. man:netstat[1] la listará. ¿Pero puede confirmarlo de forma independiente?
+Primero, asumamos que has <<ipsec-install>>. ¿Cómo sabes que está funcionando? (<<caveat>>) Claro, tu conexión no funcionará si está mal configurado y funcionará cuando finalmente lo hagas bien. man:netstat[1] lo mostrará. ¿Pero puedes confirmarlo de forma independiente?
 
 [[solution]]
-== La solución
+== La Solución
 
 Primero, alguna información teórica relevante sobre criptografía:
 
 . Los datos cifrados se distribuyen uniformemente, es decir, tienen una entropía máxima por símbolo;
 . Los datos sin procesar y sin comprimir suelen ser redundantes, es decir, tienen una entropía submáxima.
 
-Suponga que usted pudiera medir la entropía de los datos que van hacia -y desde- su interfaz de red. Entonces podría ver la diferencia entre los datos no cifrados y los cifrados. Esto sería verdad incluso si algunos de los datos en "modo cifrado" no lo estuvieran---ya que el encabezado IP más externo debe estarlo para que el paquete sea enrutable.
+Imagina que pudieras medir la entropía de los datos que van hacia -y desde- tu interfaz de red. Entonces podrías ver la diferencia entre los datos no cifrados y los cifrados. Esto sería verdad incluso si algunos de los datos en "modo cifrado" no lo estuvieran---ya que el encabezado IP más externo debe estarlo para que el paquete sea enrutable.
 
 [[MUST]]
 === MUST
 
-El "Universal Statistical Test for Random Bit Generators" (https://web.archive.org/web/20011115002319/http://www.geocities.com/SiliconValley/Code/4704/universal.pdf[MUST]) de Ueli Maurer mide rápidamente la entropía de una muestra. Utiliza un algoritmo de compresión. <<code>> para una variante que mide partes sucesivas (~cuarto de megabyte) de un archivo
+Ueli Maurer's "Universal Statistical Test for Random Bit Generators"(https://web.archive.org/web/20011115002319/http://www.geocities.com/SiliconValley/Code/4704/universal.pdf[MUST]) calcula rápidamente la entropía de una muestra. Utiliza un algoritmo de tipo compresión. <<code>> para una variante que mide trozos sucesivos (~ un cuarto de megabyte) de un fichero.
 
 [[tcpdump]]
 === Tcpdump
 
-También necesitamos una forma de capturar los datos de red sin procesar. Un programa llamado man:tcpdump[1] le permite hacerlo, si tiene habilitada la interfaz de _Berkeley Packet Filter_ en el <<kernel>>.
+También necesitamos una forma de capturar datos de red en crudo. Un programa llamado man:tcpdump[1] te permite hacer esto si tienes configurado el interfaz _Berkeley Packet Filger_ en tu <<kernel>>.
 
 El comando:
 
-[source,shell]
+[source, shell]
 ....
  tcpdump -c 4000 -s 10000 -w dumpfile.bin
 ....
 
-capturará 4000 paquetes sin procesar en el fichero _dumpfile.bin_. En este ejemplo se capturarán hasta 10.000 bytes por paquete.
+capturará 4000 paquetes en crudo y los guardará en _dumpfile.bin_. Se capturarán hasta 10,000 bytes por cada paquete en este ejemplo.
 
 [[experiment]]
-== El experimento
+== El Experimento
 
 Aquí está el experimento:
 
 [.procedure]
 ====
-. Abra una ventana a un host IPsec y otra ventana a un host inseguro.
-. Ahora empiece a <<tcpdump>>.
-. En la ventana "segura", ejecute el comando UNIX(R) man:yes[1], que transmitirá el carácter `y`. Después de un rato, detenga el comando. Cambie a la ventana insegura, y repita. Espere un poco, detenga el comando.
-. Ahora ejecute <<code>> en los paquetes capturados. Debería ver algo como lo siguiente. Lo importante a tener en cuenta es que la conexión segura tiene un 93% (6,7) del valor esperado (7,18), y la conexión "normal" tiene un 29% (2,1) del valor esperado.
+. Abre una ventana a un host IPsec y otra ventana a un host inseguro.
+. Ahora arranca <<tcpdump>>.
+. En la ventana "segura", arranca el comando UNIX(R) man:yes[1], que mostrará continuamente el carácter `y`. Después de un rato, páralo. Cambia a la ventana insegura y ejecútalo de nuevo. Después de un rato, páralo.
+. Ahora ejecuta <<code>> en los paquetes capturados. Deberías ver algo como lo que se muestra a continuación. El punto importante en que fijarse es que la conexión segura tiene un 93% (6.7) de los valores esperados (7.18) y que la conexión "normal" tiene un 29% (2.1) de los valores esperados.
 +
-[source,shell]
+[source, shell]
 ....
 % tcpdump -c 4000 -s 10000 -w ipsecdemo.bin
-
 % uliscan ipsecdemo.bin
 Uliscan 21 Dec 98
 L=8 256 258560
@@ -114,7 +116,7 @@ Expected value for L=8 is 7.1836656
 [[caveat]]
 == Advertencia
 
-Este experimento muestra que IPsec _parece_ estar distribuyendo los datos de la carga útil __uniformemente__, como debe hacerlo el cifrado. Sin embargo, el experimento aquí descrito _puede no_ detectar muchas de las posibles fallas del sistema (para las cuales no tengo evidencias). Esto incluye la generación o intercambio de claves deficientes, datos o claves visibles para otros, uso de algoritmos débiles, subversión del kernel, etc. Estudie el código; conozca el código.
+Este experimento muestra que IPsec _parece_ estar distribuyendo los datos de la carga útil _uniformemente_, como debe hacerlo el cifrado. Sin embargo, el experimento aquí descrito _no puede_ detectar muchas de las posibles fallos del sistema (para los cuales no tengo evidencias). Esto incluye la generación o intercambio de claves deficientes, datos o claves visibles para otros, uso de algoritmos débiles, subversión del kernel, etc. Estudia el código; conoce el código.
 
 [[IPsec]]
 == IPsec---Definición
@@ -124,14 +126,14 @@ Extensiones de seguridad del Protocolo de Internet para IPv4; requerido para IPv
 [[ipsec-install]]
 == Instalando IPsec
 
-La mayoría de las versiones modernas de FreeBSD soportan IPsec en su código base. Por lo tanto, deberá incluir la opción `IPSEC` en la configuración de su kernel y, después de recompilar y reinstalar el kernel, configure las conexiones de IPsec usando el comando man:setkey[8].
+La mayoría de las versiones modernas de FreeBSD tienen soporte para IPsec en su código fuente. Así que tendrás que incluir la opción `IPSEC` en la configuración del kernel y después de recompilar y reinstalar, configurar conexiones IPsec utilizando el comando man:setkey[8].
 
-En el extref:{handbook}security[Manual de FreeBSD, ipsec] se proporciona una guía completa sobre cómo ejecutar IPsec en FreeBSD.
+En el extref:{handbook}[FreeBSD Handbook, ipsec] se proporciona una guía completa sobre cómo ejecutar IPsec en FreeBSD.
 
 [[kernel]]
 == src/sys/i386/conf/KERNELNAME
 
-Esto debe estar presente en el archivo de configuración del kernel para capturar datos de red con man:tcpdump[1]. Asegúrese de ejecutar man:config[8] después de agregar esto, recompilar y reinstalar.
+Esto necesita estar en el fichero de configuración del kernel para poder capturar datos de red con man:tcpdump[1]. Asegúrate de ejecutar man:config[8] después de añadir esto y recompilar y reinstalar.
 
 [.programlisting]
 ....
@@ -141,7 +143,7 @@ device	bpf
 [[code]]
 == Maurer's Universal Statistical Test (tamaño de bloque=8 bits)
 
-Puede encontrar el mismo código fuente en https://web.archive.org/web/20031204230654/http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc.txt[este enlace].
+Puedes encontrar el mismo código en https://web.archive.org/web/20031204230654/http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc.txt[este enlace].
 
 [.programlisting]
 ....
@@ -152,7 +154,7 @@ Puede encontrar el mismo código fuente en https://web.archive.org/web/200312042
   1 Dec 98
   21 Dec 98       uliscan.c derived from ueli8.c
 
-  This version has // comments removed for Sun cc
+  En esta versión se han quitado // comentarios por el cc de Sun
 
   This implements Ueli M Maurer's "Universal Statistical Test for Random
   Bit Generators" using L=8
diff --git a/documentation/content/es/articles/ipsec-must/_index.po b/documentation/content/es/articles/ipsec-must/_index.po
new file mode 100644
index 0000000000..af9d787152
--- /dev/null
+++ b/documentation/content/es/articles/ipsec-must/_index.po
@@ -0,0 +1,746 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# Fernando  Apesteguía <[email protected]>, 2021, 2022.
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2022-02-01 09:21-0300\n"
+"PO-Revision-Date: 2022-08-08 15:04+0000\n"
+"Last-Translator: Fernando  Apesteguía <[email protected]>\n"
+"Language-Team: Spanish <https://translate-dev.freebsd.org/projects/"
+"documentation/articlesipsec-must_index/es/>\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.10.1\n"
+
+#. type: Title =
+#: documentation/content/en/articles/ipsec-must/_index.adoc:1
+#: documentation/content/en/articles/ipsec-must/_index.adoc:11
+#, no-wrap
+msgid "Independent Verification of IPsec Functionality in FreeBSD"
+msgstr "Verificación independiente de la funcionalidad de IPsec en FreeBSD"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:44
+msgid "Abstract"
+msgstr "Resumen"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:47
+msgid ""
+"You installed IPsec and it seems to be working.  How do you know? I describe "
+"a method for experimentally verifying that IPsec is working."
+msgstr ""
+"Has intalado IPsec y parece estar funcionando. ¿Cómo lo sabes? Describo un "
+"método para verificar de forma experimental que IPsec está funcionando."
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:49
+msgid "'''"
+msgstr "'''"
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:53
+#, no-wrap
+msgid "The Problem"
+msgstr "El Problema"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:58
+msgid ""
+"First, lets assume you have <<ipsec-install>>.  How do you know it is "
+"<<caveat>>? Sure, your connection will not work if it is misconfigured, and "
+"it will work when you finally get it right.  man:netstat[1] will list it. "
+"But can you independently confirm it?"
+msgstr ""
+"Primero, asumamos que has <<ipsec-install>>. ¿Cómo sabes que está "
+"funcionando? (<<caveat>>) Claro, tu conexión no funcionará si está mal "
+"configurado y funcionará cuando finalmente lo hagas bien. man:netstat[1] lo "
+"mostrará. ¿Pero puedes confirmarlo de forma independiente?"
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:60
+#, no-wrap
+msgid "The Solution"
+msgstr "La Solución"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:63
+msgid "First, some crypto-relevant info theory:"
+msgstr "Primero, alguna información teórica relevante sobre criptografía:"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:65
+msgid ""
+"Encrypted data is uniformly distributed, i.e., has maximal entropy per "
+"symbol;"
+msgstr ""
+"Los datos cifrados se distribuyen uniformemente, es decir, tienen una "
+"entropía máxima por símbolo;"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:66
+msgid ""
+"Raw, uncompressed data is typically redundant, i.e., has sub-maximal entropy."
+msgstr ""
+"Los datos sin procesar y sin comprimir suelen ser redundantes, es decir, "
+"tienen una entropía submáxima."
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:70
+msgid ""
+"Suppose you could measure the entropy of the data to- and from- your network "
+"interface.  Then you could see the difference between unencrypted data and "
+"encrypted data.  This would be true even if some of the data in \"encrypted "
+"mode\" was not encrypted---as the outermost IP header must be if the packet "
+"is to be routable."
+msgstr ""
+"Imagina que pudieras medir la entropía de los datos que van hacia -y desde- "
+"tu interfaz de red. Entonces podrías ver la diferencia entre los datos no "
+"cifrados y los cifrados. Esto sería verdad incluso si algunos de los datos "
+"en \"modo cifrado\" no lo estuvieran---ya que el encabezado IP más externo "
+"debe estarlo para que el paquete sea enrutable."
+
+#. type: Title ===
+#: documentation/content/en/articles/ipsec-must/_index.adoc:72
+#, no-wrap
+msgid "MUST"
+msgstr "MUST"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:77
+msgid ""
+"Ueli Maurer's \"Universal Statistical Test for Random Bit Generators"
+"\"(https://web.archive.org/web/20011115002319/http://www.geocities.com/"
+"SiliconValley/Code/4704/universal.pdf[MUST]) quickly measures the entropy of "
+"a sample.  It uses a compression-like algorithm.  <<code>> for a variant "
+"which measures successive (~quarter megabyte) chunks of a file."
+msgstr ""
+"Ueli Maurer's \"Universal Statistical Test for Random Bit Generators\""
+"(https://web.archive.org/web/20011115002319/http://www.geocities.com/"
+"SiliconValley/Code/4704/universal.pdf[MUST]) calcula rápidamente la entropía "
+"de una muestra.  Utiliza un algoritmo de tipo compresión.  <<code>> para una "
+"variante que mide trozos sucesivos (~ un cuarto de megabyte) de un fichero."
+
+#. type: Title ===
+#: documentation/content/en/articles/ipsec-must/_index.adoc:79
+#, no-wrap
+msgid "Tcpdump"
+msgstr "Tcpdump"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:83
+msgid ""
+"We also need a way to capture the raw network data.  A program called man:"
+"tcpdump[1] lets you do this, if you have enabled the _Berkeley Packet "
+"Filter_ interface in your <<kernel>>."
+msgstr ""
+"También necesitamos una forma de capturar datos de red en crudo. Un programa "
+"llamado man:tcpdump[1] te permite hacer esto si tienes configurado el "
+"interfaz _Berkeley Packet Filger_ en tu <<kernel>>."
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:85
+msgid "The command:"
+msgstr "El comando:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:89
+#, no-wrap
+msgid " tcpdump -c 4000 -s 10000 -w dumpfile.bin\n"
+msgstr " tcpdump -c 4000 -s 10000 -w dumpfile.bin\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:93
+msgid ""
+"will capture 4000 raw packets to _dumpfile.bin_.  Up to 10,000 bytes per "
+"packet will be captured in this example."
+msgstr ""
+"capturará 4000 paquetes en crudo y los guardará en _dumpfile.bin_. Se "
+"capturarán hasta 10,000 bytes por cada paquete en este ejemplo."
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:95
+#, no-wrap
+msgid "The Experiment"
+msgstr "El Experimento"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:98
+msgid "Here is the experiment:"
+msgstr "Aquí está el experimento:"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:102
+msgid "Open a window to an IPsec host and another window to an insecure host."
+msgstr "Abre una ventana a un host IPsec y otra ventana a un host inseguro."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:103
+msgid "Now start <<tcpdump>>."
+msgstr "Ahora arranca <<tcpdump>>."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:104
+msgid ""
+"In the \"secure\" window, run the UNIX(R) command man:yes[1], which will "
+"stream the `y` character. After a while, stop this. Switch to the insecure "
+"window, and repeat. After a while, stop."
+msgstr ""
+"En la ventana \"segura\", arranca el comando UNIX(R) man:yes[1], que "
+"mostrará continuamente el carácter `y`. Después de un rato, páralo. Cambia a "
+"la ventana insegura y ejecútalo de nuevo. Después de un rato, páralo."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:105
+msgid ""
+"Now run <<code>> on the captured packets. You should see something like the "
+"following. The important thing to note is that the secure connection has 93% "
+"(6.7) of the expected value (7.18), and the \"normal\" connection has 29% "
+"(2.1) of the expected value."
+msgstr ""
+"Ahora ejecuta <<code>> en los paquetes capturados. Deberías ver algo como lo "
+"que se muestra a continuación. El punto importante en que fijarse es que la "
+"conexión segura tiene un 93% (6.7) de los valores esperados (7.18) y que la "
+"conexión \"normal\" tiene un 29% (2.1) de los valores esperados."
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:121
+#, no-wrap
+msgid ""
+"% tcpdump -c 4000 -s 10000 -w ipsecdemo.bin\n"
+"% uliscan ipsecdemo.bin\n"
+"Uliscan 21 Dec 98\n"
+"L=8 256 258560\n"
+"Measuring file ipsecdemo.bin\n"
+"Init done\n"
+"Expected value for L=8 is 7.1836656\n"
+"6.9396 --------------------------------------------------------\n"
+"6.6177 -----------------------------------------------------\n"
+"6.4100 ---------------------------------------------------\n"
+"2.1101 -----------------\n"
+"2.0838 -----------------\n"
+"2.0983 -----------------\n"
+msgstr ""
+"% tcpdump -c 4000 -s 10000 -w ipsecdemo.bin\n"
+"% uliscan ipsecdemo.bin\n"
+"Uliscan 21 Dec 98\n"
+"L=8 256 258560\n"
+"Measuring file ipsecdemo.bin\n"
+"Init done\n"
+"Expected value for L=8 is 7.1836656\n"
+"6.9396 --------------------------------------------------------\n"
+"6.6177 -----------------------------------------------------\n"
+"6.4100 ---------------------------------------------------\n"
+"2.1101 -----------------\n"
+"2.0838 -----------------\n"
+"2.0983 -----------------\n"
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:125
+#, no-wrap
+msgid "Caveat"
+msgstr "Advertencia"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:131
+msgid ""
+"This experiment shows that IPsec _does_ seem to be distributing the payload "
+"data __uniformly__, as encryption should.  However, the experiment described "
+"here _cannot_ detect many possible flaws in a system (none of which do I "
+"have any evidence for).  These include poor key generation or exchange, data "
+"or keys being visible to others, use of weak algorithms, kernel subversion, "
+"etc.  Study the source; know the code."
+msgstr ""
+"Este experimento muestra que IPsec _parece_ estar distribuyendo los datos de "
+"la carga útil _uniformemente_, como debe hacerlo el cifrado. Sin embargo, el "
+"experimento aquí descrito _no puede_ detectar muchas de las posibles fallos "
+"del sistema (para los cuales no tengo evidencias). Esto incluye la "
+"generación o intercambio de claves deficientes, datos o claves visibles para "
+"otros, uso de algoritmos débiles, subversión del kernel, etc. Estudia el "
+"código; conoce el código."
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:133
+#, no-wrap
+msgid "IPsec---Definition"
+msgstr "IPsec---Definición"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:139
+msgid ""
+"Internet Protocol security extensions to IPv4; required for IPv6.  A "
+"protocol for negotiating encryption and authentication at the IP (host-to-"
+"host) level.  SSL secures only one application socket; SSH secures only a "
+"login; PGP secures only a specified file or message.  IPsec encrypts "
+"everything between two hosts."
+msgstr ""
+"Extensiones de seguridad del Protocolo de Internet para IPv4; requerido para "
+"IPv6. Un protocolo para negociar el cifrado y la autenticación a nivel de IP "
+"(host a host). SSL solo protege un socket de aplicación. SSH protege solo el "
+"login. PGP protege un archivo o mensaje específico. IPsec encripta todo "
+"entre dos hosts."
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:141
+#, no-wrap
+msgid "Installing IPsec"
+msgstr "Instalando IPsec"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:145
+msgid ""
+"Most of the modern versions of FreeBSD have IPsec support in their base "
+"source.  So you will need to include the `IPSEC` option in your kernel "
+"config and, after kernel rebuild and reinstall, configure IPsec connections "
+"using man:setkey[8] command."
+msgstr ""
+"La mayoría de las versiones modernas de FreeBSD tienen soporte para IPsec en "
+"su código fuente. Así que tendrás que incluir la opción `IPSEC` en la "
+"configuración del kernel y después de recompilar y reinstalar, configurar "
+"conexiones IPsec utilizando el comando man:setkey[8]."
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:147
+msgid ""
+"A comprehensive guide on running IPsec on FreeBSD is provided in extref:"
+"{handbook}[FreeBSD Handbook, ipsec]."
+msgstr ""
+"En el extref:{handbook}[FreeBSD Handbook, ipsec] se proporciona una guía "
+"completa sobre cómo ejecutar IPsec en FreeBSD."
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:149
+#, no-wrap
+msgid "src/sys/i386/conf/KERNELNAME"
+msgstr "src/sys/i386/conf/KERNELNAME"
+
+#. type: delimited block = 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:153
+msgid ""
+"This needs to be present in the kernel config file in order to capture "
+"network data with man:tcpdump[1].  Be sure to run man:config[8] after adding "
+"this, and rebuild and reinstall."
+msgstr ""
+"Esto necesita estar en el fichero de configuración del kernel para poder "
+"capturar datos de red con man:tcpdump[1]. Asegúrate de ejecutar man:config[8]"
+" después de añadir esto y recompilar y reinstalar."
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:157
+#, no-wrap
+msgid "device\tbpf\n"
+msgstr "device\tbpf\n"
+
+#. type: Title ==
+#: documentation/content/en/articles/ipsec-must/_index.adoc:160
+#, no-wrap
+msgid "Maurer's Universal Statistical Test (for block size=8 bits)"
+msgstr "Maurer's Universal Statistical Test (tamaño de bloque=8 bits)"
+
+#. type: Plain text
+#: documentation/content/en/articles/ipsec-must/_index.adoc:163
+msgid ""
+"You can find the same code at https://web.archive.org/web/20031204230654/"
+"http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc.txt[this link]."
+msgstr ""
+"Puedes encontrar el mismo código en https://web.archive.org/web/"
+"20031204230654/http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc."
+"txt[este enlace]."
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:168
+#, no-wrap
+msgid ""
+"/*\n"
+"  ULISCAN.c   ---blocksize of 8\n"
+msgstr ""
+"/*\n"
+"  ULISCAN.c   ---blocksize of 8\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:172
+#, no-wrap
+msgid ""
+"  1 Oct 98\n"
+"  1 Dec 98\n"
+"  21 Dec 98       uliscan.c derived from ueli8.c\n"
+msgstr ""
+"  1 Oct 98\n"
+"  1 Dec 98\n"
+"  21 Dec 98       uliscan.c derived from ueli8.c\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:174
+#, no-wrap
+msgid "  This version has // comments removed for Sun cc\n"
+msgstr "  En esta versión se han quitado // comentarios por el cc de Sun\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:177
+#, no-wrap
+msgid ""
+"  This implements Ueli M Maurer's \"Universal Statistical Test for Random\n"
+"  Bit Generators\" using L=8\n"
+msgstr ""
+"  This implements Ueli M Maurer's \"Universal Statistical Test for Random\n"
+"  Bit Generators\" using L=8\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:180
+#, no-wrap
+msgid ""
+"  Accepts a filename on the command line; writes its results, with other\n"
+"  info, to stdout.\n"
+msgstr ""
+"  Accepts a filename on the command line; writes its results, with other\n"
+"  info, to stdout.\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:182
+#, no-wrap
+msgid "  Handles input file exhaustion gracefully.\n"
+msgstr "  Handles input file exhaustion gracefully.\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:185
+#, no-wrap
+msgid ""
+"  Ref: J. Cryptology v 5 no 2, 1992 pp 89-105\n"
+"  also on the web somewhere, which is where I found it.\n"
+msgstr ""
+"  Ref: J. Cryptology v 5 no 2, 1992 pp 89-105\n"
+"  also on the web somewhere, which is where I found it.\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:188
+#, no-wrap
+msgid ""
+"  -David Honig\n"
+"  [email protected]\n"
+msgstr ""
+"  -David Honig\n"
+"  [email protected]\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:193
+#, no-wrap
+msgid ""
+"  Usage:\n"
+"  ULISCAN filename\n"
+"  outputs to stdout\n"
+"*/\n"
+msgstr ""
+"  Usage:\n"
+"  ULISCAN filename\n"
+"  outputs to stdout\n"
+"*/\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:199
+#, no-wrap
+msgid ""
+"#define L 8\n"
+"#define V (1<<L)\n"
+"#define Q (10*V)\n"
+"#define K (100   *Q)\n"
+"#define MAXSAMP (Q + K)\n"
+msgstr ""
+"#define L 8\n"
+"#define V (1<<L)\n"
+"#define Q (10*V)\n"
+"#define K (100   *Q)\n"
+"#define MAXSAMP (Q + K)\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:202
+#, no-wrap
+msgid ""
+"#include <stdio.h>\n"
+"#include <math.h>\n"
+msgstr ""
+"#include <stdio.h>\n"
+"#include <math.h>\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:214
+#, no-wrap
+msgid ""
+"int main(argc, argv)\n"
+"int argc;\n"
+"char **argv;\n"
+"{\n"
+"  FILE *fptr;\n"
+"  int i,j;\n"
+"  int b, c;\n"
+"  int table[V];\n"
+"  double sum = 0.0;\n"
+"  int iproduct = 1;\n"
+"  int run;\n"
+msgstr ""
+"int main(argc, argv)\n"
+"int argc;\n"
+"char **argv;\n"
+"{\n"
+"  FILE *fptr;\n"
+"  int i,j;\n"
+"  int b, c;\n"
+"  int table[V];\n"
+"  double sum = 0.0;\n"
+"  int iproduct = 1;\n"
+"  int run;\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:216
+#, no-wrap
+msgid "  extern double   log(/* double x */);\n"
+msgstr "  extern double   log(/* double x */);\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:218
+#, no-wrap
+msgid "  printf(\"Uliscan 21 Dec 98 \\nL=%d %d %d \\n\", L, V, MAXSAMP);\n"
+msgstr ""
+"  printf(\"Uliscan 21 Dec 98 \\n"
+"L=%d %d %d \\n"
+"\", L, V, MAXSAMP);\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:225
+#, no-wrap
+msgid ""
+"  if (argc < 2) {\n"
+"    printf(\"Usage: Uliscan filename\\n\");\n"
+"    exit(-1);\n"
+"  } else {\n"
+"    printf(\"Measuring file %s\\n\", argv[1]);\n"
+"  }\n"
+msgstr ""
+"  if (argc < 2) {\n"
+"    printf(\"Usage: Uliscan filename\\n"
+"\");\n"
+"    exit(-1);\n"
+"  } else {\n"
+"    printf(\"Measuring file %s\\n"
+"\", argv[1]);\n"
+"  }\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:227
+#, no-wrap
+msgid "  fptr = fopen(argv[1],\"rb\");\n"
+msgstr "  fptr = fopen(argv[1],\"rb\");\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:232
+#, no-wrap
+msgid ""
+"  if (fptr == NULL) {\n"
+"    printf(\"Can't find %s\\n\", argv[1]);\n"
+"    exit(-1);\n"
+"  }\n"
+msgstr ""
+"  if (fptr == NULL) {\n"
+"    printf(\"Can't find %s\\n"
+"\", argv[1]);\n"
+"    exit(-1);\n"
+"  }\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:236
+#, no-wrap
+msgid ""
+"  for (i = 0; i < V; i++) {\n"
+"    table[i] = 0;\n"
+"  }\n"
+msgstr ""
+"  for (i = 0; i < V; i++) {\n"
+"    table[i] = 0;\n"
+"  }\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:241
+#, no-wrap
+msgid ""
+"  for (i = 0; i < Q; i++) {\n"
+"    b = fgetc(fptr);\n"
+"    table[b] = i;\n"
+"  }\n"
+msgstr ""
+"  for (i = 0; i < Q; i++) {\n"
+"    b = fgetc(fptr);\n"
+"    table[b] = i;\n"
+"  }\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:243
+#, no-wrap
+msgid "  printf(\"Init done\\n\");\n"
+msgstr ""
+"  printf(\"Init done\\n"
+"\");\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:245
+#, no-wrap
+msgid "  printf(\"Expected value for L=8 is 7.1836656\\n\");\n"
+msgstr ""
+"  printf(\"Expected value for L=8 is 7.1836656\\n"
+"\");\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:247
+#, no-wrap
+msgid "  run = 1;\n"
+msgstr "  run = 1;\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:251
+#, no-wrap
+msgid ""
+"  while (run) {\n"
+"    sum = 0.0;\n"
+"    iproduct = 1;\n"
+msgstr ""
+"  while (run) {\n"
+"    sum = 0.0;\n"
+"    iproduct = 1;\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:256
+#, no-wrap
+msgid ""
+"    if (run)\n"
+"      for (i = Q; run && i < Q + K; i++) {\n"
+"        j = i;\n"
+"        b = fgetc(fptr);\n"
+msgstr ""
+"    if (run)\n"
+"      for (i = Q; run && i < Q + K; i++) {\n"
+"        j = i;\n"
+"        b = fgetc(fptr);\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:259
+#, no-wrap
+msgid ""
+"        if (b < 0)\n"
+"          run = 0;\n"
+msgstr ""
+"        if (b < 0)\n"
+"          run = 0;\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:263
+#, no-wrap
+msgid ""
+"        if (run) {\n"
+"          if (table[b] > j)\n"
+"            j += K;\n"
+msgstr ""
+"        if (run) {\n"
+"          if (table[b] > j)\n"
+"            j += K;\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:265
+#, no-wrap
+msgid "          sum += log((double)(j-table[b]));\n"
+msgstr "          sum += log((double)(j-table[b]));\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:269
+#, no-wrap
+msgid ""
+"          table[b] = i;\n"
+"        }\n"
+"      }\n"
+msgstr ""
+"          table[b] = i;\n"
+"        }\n"
+"      }\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:272
+#, no-wrap
+msgid ""
+"    if (!run)\n"
+"      printf(\"Premature end of file; read %d blocks.\\n\", i - Q);\n"
+msgstr ""
+"    if (!run)\n"
+"      printf(\"Premature end of file; read %d blocks.\\n"
+"\", i - Q);\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:275
+#, no-wrap
+msgid ""
+"    sum = (sum/((double)(i - Q))) /  log(2.0);\n"
+"    printf(\"%4.4f \", sum);\n"
+msgstr ""
+"    sum = (sum/((double)(i - Q))) /  log(2.0);\n"
+"    printf(\"%4.4f \", sum);\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:278
+#, no-wrap
+msgid ""
+"    for (i = 0; i < (int)(sum*8.0 + 0.50); i++)\n"
+"      printf(\"-\");\n"
+msgstr ""
+"    for (i = 0; i < (int)(sum*8.0 + 0.50); i++)\n"
+"      printf(\"-\");\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:280
+#, no-wrap
+msgid "    printf(\"\\n\");\n"
+msgstr ""
+"    printf(\"\\n"
+"\");\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/ipsec-must/_index.adoc:294
+#, no-wrap
+msgid ""
+"    /* refill initial table */\n"
+"    if (0) {\n"
+"      for (i = 0; i < Q; i++) {\n"
+"        b = fgetc(fptr);\n"
+"        if (b < 0) {\n"
+"          run = 0;\n"
+"        } else {\n"
+"          table[b] = i;\n"
+"        }\n"
+"      }\n"
+"    }\n"
+"  }\n"
+"}\n"
+msgstr ""
+"    /* refill initial table */\n"
+"    if (0) {\n"
+"      for (i = 0; i < Q; i++) {\n"
+"        b = fgetc(fptr);\n"
+"        if (b < 0) {\n"
+"          run = 0;\n"
+"        } else {\n"
+"          table[b] = i;\n"
+"        }\n"
+"      }\n"
+"    }\n"
+"  }\n"
+"}\n"
+
+#~ msgid ""
+#~ "include::shared/attributes/attributes-{{% lang %}}.adoc[] include::shared/"
+#~ "{{% lang %}}/teams.adoc[] include::shared/{{% lang %}}/mailing-lists."
+#~ "adoc[] include::shared/{{% lang %}}/urls.adoc[]"
+#~ msgstr ""
+#~ "include::shared/attributes/attributes-{{% lang %}}.adoc[]\n"
+#~ "include::shared/{{% lang %}}/teams.adoc[]\n"
+#~ "include::shared/{{% lang %}}/mailing-lists.adoc[]\n"
+#~ "include::shared/{{% lang %}}/urls.adoc[]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.