Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Program pro frekvenční analýzu

Ahoj. potřebuji poradit program pro analýzu šifrovaného textu. Text používá znaky s diakritikou. Zatím vše, co jsem našla je koncipované na 26znakovou abebcedu.
Umí nějaký program pracovat s vyhledáváním předpokládaných slov? V textu se s vysokou pravděpodobností vyskytují slova, z nichž každé obsahuje opakovaně nějaký znak. Takže by se při luštění dalo využít i toho. le hledat to ručně, která sekvence znaů by mohla odpovídat je vopruz.
Díky.

Předmět Autor Datum
fr.analyza sa tyka znamych (nesifrovanych) slov, preto nemozes najst nic co ma viac ako 26 znakov. T…
KiloViktor 15.03.2014 16:17
KiloViktor
Tak ještě jinak, pro lepší pochopení. šifrovaný text je šifrovaný jednoduchou substitucí. Takže frek…
neczuz 15.03.2014 16:21
neczuz
Aha, jasne. Asi bolo treba hned napisat akou metodou je to sifrofane pre lepsi pochop. To je nejaky…
KiloViktor 15.03.2014 17:10
KiloViktor
máš pravdu, není to určeno pro ochranu. Je to součástí hry. myslím, že odstranění diakritiky problém…
neczuz 15.03.2014 19:34
neczuz
Si naprogramujes za 5minut (P.S> u kratkeho textu si tie pismena spocitas rucne za 5 minut)
MM.. 15.03.2014 19:35
MM..
Kdybych si to naprogramovala sama za 5 minut, tak sem nepíšu. :-p Text má zhruba 1500 znaků
neczuz 15.03.2014 19:47
neczuz
Ked chces lustit tak je dobre vediet programovat aspon nejake scripty. To sa da urobit dokonca aj v…
MM.. 15.03.2014 19:54
MM..
Mas v prilohe. Otvoris konzolu a zadas anal subor vysledok si skopiruj do schranky a zorad v exceli…
MM.. 15.03.2014 20:05
MM..
Dík. poslední
neczuz 15.03.2014 20:13
neczuz

fr.analyza sa tyka znamych (nesifrovanych) slov, preto nemozes najst nic co ma viac ako 26 znakov. To, co je sifrovane moze byt to iste pismeno a moze byt zasifrovane 100x inak. Vedeli to uz aj nemci v II.sv vojne. Vid. sifrovaci pristroj Enigma.

Tak ještě jinak, pro lepší pochopení. šifrovaný text je šifrovaný jednoduchou substitucí. Takže frekvenční analýza je aplikovatená na zašifrovaný text. problém je, že se používá česká abeceda se 42 znaky.
příklad zašifrovaného textu: páóůřqggoůtřďqácpháťřůářqňůčqřoňářpfáúpňlpřáptá

Aha, jasne. Asi bolo treba hned napisat akou metodou je to sifrofane pre lepsi pochop.
To je nejaky priklad do skoly ? Bo sifrovanim substituciou by uz dnes mikto nic neochranil.
Ak nist nenajdes, existuje pomocka. Konvertor, ktory odstrani diakritiku.
Uplne v najhorsom pripade sa da napisat kratky program.

máš pravdu, není to určeno pro ochranu. Je to součástí hry.
myslím, že odstranění diakritiky problém neřeší. Jestliže odstraním u ů ú iakritiku, sloučí se mi všechno pod "u" . jenže tím, že je to substituce, tak klidně u mže být záměna u za K, ů za L a ú za Y. tím se mi analýza úplně zkreslí.

Mas v prilohe. Otvoris konzolu a zadas
anal subor
vysledok si skopiruj do schranky a zorad v exceli apod

pre zaujimavost ze co sa da naprogramovat za tych 5minut :)

int _tmain(int argc, _TCHAR* argv[])
{
	FILE *fIn;
	int i, znaky[256];

	if(argc < 2)
	{
		_tprintf(_T("\nUsage:\n\nanal inputfile\n"));
		return 1;
	}

	if(_tfopen_s(&fIn, argv[1], _T("rb")) != 0)
	{
		_tprintf(_T("\nERROR: Unable to open input file %s !\n\n"), argv[1]);
		return 1;
	}

	for(i=0;i<256;i++)
		znaky[i]=0;

	while((i = fgetc(fIn)) != EOF)
		znaky[i]++;

	for(i=0x21;i<256;i++)
		if(znaky[i]!=0)
			_tprintf(_T("%c %d\n"), i, znaky[i]);

	fclose(fIn);
	return 0;
}

P.S. analyzovany subor nesmie byt v unicode, a musi byt v spravnom kodovani stejnom jak konzola.

Zpět do poradny Odpovědět na původní otázku Nahoru