User avatar

Javad Kouhi

@kouhi Joined on March 30, 2020

78 translations

Persian

Project Translated Untranslated Untranslated words Checks Suggestions Comments
FreeBSD Doc 54% 85,792 1,682,627 39,840 21 19

Nothing to list here.

Nothing to list here.

Daily activity

Daily activity

Weekly activity

Weekly activity
$FreeBSD: head/en_US.ISO8859-1/articles/ipsec-must/article.xml 52227 2018-09-06 01:30:47Z ebrandi $
$FreeBSD: head/en_US.ISO8859-1/articles/ipsec-must/article.xml 52227 2018-09-06 01:30:47Z ebrandi $
8 months ago
User avatar kouhi

Translation changed

FreeBSD Doc / articles_ipsec-mustPersian

This experiment shows that IPsec <emphasis>does</emphasis> seem to be distributing the payload data <emphasis>uniformly</emphasis>, as encryption should. However, the experiment described here <emphasis>cannot</emphasis> 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.
این آزمایش نشان می‌دهد که IPsec ظاهرا دارد داده‌ها را <emphasis>به طور یکنواخت</emphasis> <emphasis>توزیع می‌کند</emphasis>، همانطور که از یک رمزنگاری انتظار می‌شرود. با این حال، آزمایشی که در اینجا شرح آن رفت <emphasis>نمی‌تواند</emphasis> هیچگونه نقص احتمالی در سیستم را تشخیص دهد (که برای هیچکدام از آنها هیچ نشانه‌ای ندارم). این نقوص می‌توانند چیزهایی مثل تولید کلید ضعیف یا تبادل نادرست کلیدها، در معرض نمایش بودن کلیدها یا داده‌ها برای بقیه، استفاده از الگوریتم ضعیف، تخریب هسته از درون و غیره باشند. کدمنبع را بخوانید و با آن آشنا شوید.
8 months ago
User avatar kouhi

Translation changed

FreeBSD Doc / articles_ipsec-mustPersian

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 <quote>encrypted mode</quote> was not encrypted---as the outermost IP header must be if the packet is to be routable.
فرض کنید که می‌توانستید آنتروپی داده‌های ارسالی به کارت شبکه و دریافتی از آن را اندازه‌گیری کنید. آنگاه می‌توانستید تفاوت بین داده‌های رمزنگاری‌شده و رمزنگاری‌نشده را ببینید. این گفته حتی وقتی که مقداری از داده‌ها در <quote>حالت رمزنگاری</quote> عملا رمزنگاری نشده باشند هم درست است. مثلا اگر قرار باشد بسته قابل مسیریابی باشد، آنگاه بیرونی‌ترین هدر IP نباید رمزنگاری‌شده باشد.
8 months ago
User avatar kouhi

Translation changed

FreeBSD Doc / articles_ipsec-mustPersian

Raw, uncompressed data is typically redundant, i.e., has sub-maximal entropy.
داده‌های خام و فشرده‌نشده عموما افزونگی دارند. بعه عبارت دیگر، آنتروپی فرو-بیشینه دارند.
8 months ago
User avatar kouhi

Translation changed

FreeBSD Doc / articles_ipsec-mustPersian

First, some crypto-relevant info theory:
ابتدا، کمی اطلاعات تئوری در رابطه با رمزنگاری:
8 months ago
User avatar kouhi

Translation changed

FreeBSD Doc / articles_ipsec-mustPersian

You installed IPsec and it seems to be working. How do you know? I describe a method for experimentally verifying that IPsec is working.
IPsec را نصب کرده‌اید و به نظر می‌رسد که کار هم می‌کند. ولی از کجا می‌دانید؟ من روشی را در اینجا تشریح می‌کندم که با آن می‌توانید به طور آزمون‌گرانه تصدیق کنید که IPsec به درستی کار می‌کند.
8 months ago
User avatar kouhi

Translation changed

FreeBSD Doc / articles_ipsec-mustPersian

Independent Verification of IPsec Functionality in FreeBSD
تصدیق مستقل عملکرد IPsec به طور مستقل در FreeBSD
8 months ago
/*
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 &amp;&amp; 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;
}
}
}
}
}
/*
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 &amp;&amp; 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;
}
}
}
}
}
8 months ago
You can find the same code at <link xlink:href="https://web.archive.org/web/20031204230654/http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc.txt"> this link</link>.
همین کد را می‌توانید در <link xlink:href="https://web.archive.org/web/20031204230654/http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc.txt"> this link</link> هم پیدا کنید.
8 months ago
Maurer's Universal Statistical Test (for block size=8 bits)
Maurer's Universal Statistical Test (برای بلاک‌هایی با اندازه ۸ بیتی)
8 months ago
Browse all changes for user