Індекс збігів

Індекс збігів — один з методів криптоаналізу шифру Віженера. Опис опублікував Вільямо Фрідман в 1920 році.

Метод ґрунтується на обчисленні ймовірності того, що два випадкові елементи тексту збіжаться. Цю ймовірність називають індексом збігів. Вільям Фрідман показав, що значення індексу збігів суттєво відрізняється для текстів різної природи. Це дозволяє спочатку визначити довжину ключа шифру, а потім знайти й сам ключ.

Поява методу індексу збігів відкрила нові можливості в криптоаналізі шифру Віженера. У порівнянні з поширеним в той час методом Казіскі, новий метод був менш трудомістким, вимагав меншої довжини тексту, був придатніший для автоматизації і менш схильний до помилок. Індекс збігів був ефективнішим і допускав аналіз шифрів з довгими ключами.

Історія

Блез Віженер представив опис простого, але стійкого шифру перед комісією Генріха III у Франції в 1586 році, й пізніше винахід шифру було присвоєно саме йому. Шифр Віженера мав репутацію виключно стійкого до «ручного» злому. Перша успішна атака на шифр Віженер була проведена Фрідріхом Казіскі в 1863 році. Його метод залишався основним методом криптоаналізу шифру Віженера аж до 1920 року, коли Вільям Фрідман опублікував монографію «Індекс збігу і його застосування в криптоаналізі» (англ. «Index of Coincidence and Its Applications in Cryptography»). Новий метод, описаний Фрідманом, пропонував більш ефективний і стійкий до помилок спосіб визначення довжини ключа. Метод індексу збігів отримав широке застосування. Пізніше він став використовуватися в криптоаналізі з допомогою машин.

Метод криптоаналізу шифру Віженера

Шифр Віженера є поліалфавітним шифром. Його криптоаналіз можна розбити на 2 етапи:

  • Спочатку намагаються визначити довжину ключа. Довжина ключа задає кількість використовуваних алфавітів і період шифрування цими алфавітами. Тому на цьому етапі досліджується періодичність шифротекста;
  • Після того, як знайдена довжина, приступають до пошуку конкретного виду ключа. Для цього обчислюють відносні зрушення, використовуваних алфавітів, а потім підбирають ключ перебором.

Індекс збігів

Нижче наведено формули для обчислення індексу збігів. Спочатку розглядається загальний випадок. Потім розглядаються кілька приватних випадків, у яких індекс збігів можна оцінити без аналізу тексту.

Загальний випадок

Розглянемо текст, написаний деякою мовою. Алфавіт мови будемо вважати що складається з символів. Розглянемо досить довгий рядок із символів. Індексом збігу називають імовірність збігу двох довільних символів в рядку. Якщо — кількість -го символу алфавіту в рядку , то індекс збігу обчислюється за формулою:

    

Відкритий текст

Припустимо, рядок є відкритим текстом або отриманий з нього простою перестановкою. У цьому випадку індекс збігів зручно виразити через ймовірності появи -го символу. Позначимо їх . Тоді отримаємо наступну формулу:

    

Оскільки величини мають цілком певні значення, то для відкритого тексту індекс збігів не залежить від його змісту, а залежить тільки від мови, якою написаний текст. До того, значення досліджено і відоме, що дозволяє розрахувати значення індексу збігів відкритого тексту для різних мов.

Мова Індекс збігів
російська 0.0553[1]
англійська 0.0644[1] 0.0667[2]
італійська 0.0738[2]
іспанська 0.0775[2]
німецький 0.0762[2]
французька 0.0778[2]
ведійський санскрит 0.021076696
пракрит 0.046635758
класичний санскрит 0.045567736
гінді 0.041837864
урду 0.057535302

Випадковий рядок

Нарешті, нехай — випадковий рядок. Тоді ймовірність появи кожного символу дорівнює

Використовуючи формулу , отримаємо:

    

Цією формулою можна користуватися для оцінки індексу збігів поліалфавітного шифру. Для англійської мови індекс збігів поліалфавітного шифру складе 0,03856, для російського (без букви «ё») — 0,03125.

Значення індексу збігів для відкритого тексту і для поліалфавітного шифру істотно розрізняються. Це дозволяє, знаючи індекс збігів, визначити, отриманий текст із відкритого простою перестановкою, чи є поліалфавитним шифром.

Взаємний індекс збігів

Загальний випадок

Ще одним важливим поняттям є взаємний індекс збігів.

Розглянемо два рядки і з довжинами і відповідно. Алфавіт, як і колись, складається з символів. Взаємним індексом збігів цих рядків називають імовірність того, що символ, випадково вибраний з першого рядка, збіжиться з випадково вибраними символом другого рядка. Нехай  — кількість -го символу алфавіту в першому і другому рядках відповідно. Тоді взаємний індекс збігів буде дорівнювати:

    

Доказ цієї формули аналогічний до доведення формули .

Рядки зі зсувом

Практично важливим для методу індексу збігів є приватний випадок, коли обидва рядки, отримані зрушенням алфавіту відкритого тексту. Позначимо  — ймовірності появи -го символу в рядку ,  — зсув алфавіту рядка щодо алфавіту рядка (вліво). Тоді ймовірності появи -го символу алфавіту в рядку рівні (використовується нумерація алфавіту рядка ). Для взаємного індексу збігів отримуємо наступну формулу:

    

Зауважимо, що так як циклічний зсув, то

та взаємний індекс збігів для зрушень і приймає одне й те ж значення.

Нижче наведені значення взаємного індексу збігів в залежності від зсуву для російської та англійської мов. Значення наведені для зрушень від до . Як згадувалося вище, на основі цих значень взаємний індекс збігів може бути обчислений для будь-якого зсуву.

Для російської мови:
Зсув Взаємний індекс
0 0,0553
1 0,0366
2 0,0345
3 0,0400
4 0,0340
5 0,0360
6 0,0326
7 0,0241
8 0,0287
9 0,0317
10 0,0265
11 0,0251
12 0,0244
13 0,0291
14 0,0322
15 0,0244
16 0,0249
Для англійської мови:
Зсув Взаємний індекс
0 0,0644
1 0,0394
2 0,0319
3 0,0345
4 0,0436
5 0,0332
6 0,0363
7 0,0389
8 0,0338
9 0,0342
10 0,0378
11 0,0440
12 0,0387
13 0,0428

Зазначимо, що при нульовому зсуві взаємний індекс збігів помітно більший, ніж при ненульових зрушеннях. А значить, по відомому значенню взаємного індексу збігів можна зробити висновок, є зрушення алфавітів рядків нульовим, або немає.

Алгоритм знаходження довжини ключа

Розіб'ємо текст на стовпчики розміру .

   
   
      
      

Якщо кратна довжині ключа, то кожні два елементи тексту, віддалені один від одного на позицій, , зашифровані одним і тим же алфавітом. А це означає, що кожен рядок у виписаній вище таблиці отриманий із відкритого тексту перестановкою. Якщо ж не кратна довжині ключа, то рядки є поліалфавітним шифром.

Раніше було показано, що індекс збігів для перестановки відкритого тексту й для поліалфавитного шифру помітно відрізняється. Таким чином, перебираючи різні значення і обчислюючи для кожного з них індекс збігів, ми можемо виділити ті , які кратні довжині ключа. Визначити довжину ключа за цими даними не становить труда.

Алгоритм знаходження ключа

Припустимо, ми визначили довжину ключа . Знайдемо тепер сам ключ.

Знову випишемо текст у стовпці розміру .

   
   
      
      

Розглянемо два рядки цієї таблиці. Зсунемо алфавіт одного з рядків на символи і обчислимо взаємний індекс збігів отриманих рядків. Оскільки кожен із цих двох рядків отриманий зрушенням алфавіту відкритого тексту, то максимум взаємного індексу збігів буде спостерігатися при нульовому кінцевому відносному зсуві.

Тому застосовується наступний алгоритм: обчислюється взаємний індекс збігів для різних , шукається значення , при якому взаємний індекс збігів максимальний. Тоді початковий відносний зсув рядків буде дорівнювати ( — розмір алфавіту). Обчислюються відносні зрушення між усіма парами рядків. Оскільк зрушення рядків таблиці відповідають зрушенням букв ключа, то залишається перебрати можливих ключів і вибрати з них найбільш правдоподібний.

Приклад використання

Нехай дано деякий текст, зашифрований шифром Віженера. Знайдемо ключове слово і прочитаємо відкритий текст.

влцдутжбюцхъяррмшбрхцэооэцгбрьцмйфктъъюьмшэсяцпунуящэйтаьэдкцибр
ьцгбрпачкъуцпъбьсэгкцъгуущарцёэвърюуоюэкааэбрняфукабъарпяъафкъиьжяффнйо
яфывбнэнфуюгбрьсшьжэтбэёчюъюръегофкбьчябашвёэуъъюаднчжчужцёэвлрнчулб
юпцуруньъшсэюъзкцхъяррнрювяспэмасчкпэужьжыатуфуярюравртубурьпэщлафоуф
бюацмнубсюкйтаьэдйюнооэгюожбгкбрънцэпотчмёодзцвбцшщвщепчдчдръюьскасэг
ъппэгюкдойрсрэвоопчщшоказръббнэугнялёкьсрбёуыэбдэулбюасшоуэтъшкрсдугэфл
бубуъчнчтртпэгюкиугюэмэгюккъъпэгяапуфуэзьрадзьжчюрмфцхраююанчёчюъыхьъ
цомэфъцпоирькнщпэтэузуябащущбаыэйчдфрпэцъьрьцъцпоилуфэдцойэдятррачкубу
фнйтаьэдкцкрннцюабугюуубурьпйюэъжтгюркующоъуфъэгясуоичщщчдцсфырэдщэ
ъуяфшёчцюйрщвяхвмкршрпгюопэуцчйтаьэдкцибрьцыяжтюрбуэтэбдуящэубъибрюв
ъежагибрбагбрымпуноцшяжцечкфодщоъчжшйуъцхчщвуэбдлдъэгясуахзцэбдэулькнъ
щбжяцэьрёдъьвювлрнуяфуоухфекьгцчччгэъжтанопчынажпачкъуъмэнкйрэфщэъьбуд
эндадъярьеюэлэтчоубъцэфэвлнёэгфдсэвэёкбсчоукгаутэыпуббцчкпэгючсаъбэнэфърк
ацхёваетуфяепьрювържадфёжбьфутощоявьъгупчршуитеачйчирамчюфчоуяюонкяжы
кгсцбрясшчйотъъжрсщчл

Зважаючи на те, що повний алгоритм пошуку довжини ключа є дуже громіздким, обчислимо індекс збігів тільки для і переконаємося, що довжина ключа дійсно дорівнює 5.

втхмцццтмцяаццацсъавоаябяъфянюстюебаудуву...
лжъшэгмъшпщьигчпэгръюэфъъиффэгшбъгьшънжлл...
цбябобйъэуээббкъгуцрэбуааьнынбьэюочвъчцрб...
дюррорфюснйдрръбкуёюкркрфжйвфржёрфяёюжёню...
уцрхэькьяуткьпуьцщэуанапкяобуьэчъкбэачэчп...

Значення індексу збігів для кожного з рядків:

Рядок Індекс

збігів

1 0.05676
2 0.05896
3 0.06340
4 0.05810
5 0.07230

Процес пошуку відносних зсувів рядків також наведемо в стислому вигляді:

Знайдене ключове слово: «слово».

Після розшифровки отримуємо наступний відкритий текст:

развебытьздоровымтожесамоечтонебытьбольнымопределенноздоровьеэтонечтоболь
шеедлянасфизическоездоровьеэтоисостояниеиспособностьиэнергиязаниматьсятемчт
онамнеобходимополучатьприэтомудовольствиеивыздоравливатьбезвсякойпомощиз
доровьепарадоксальновынеможетенепосредственнозаставитьсебястатьздоровымвам
остаетсятольконаблюдатьзатемкакудивительнаяспособностьвашегоорганизмаисцеля
тьсебяначинаетдействоватьсамасобойивашебогатствоилибедностьжестокостьилидоб
родетельностьнеимеютздесьповидимомуникакогозначенияздоровьеэтонечтопозитив
ноеононеозначаетотказотудовольствияздоровьеявляетсяестественнымследствиемна
шегообразажизнивзаимоотношенийдиетыокружающейобстановкиздоровьеэтонепре
дметсобственностиэтопроцессэтоточтомыделаемрезультатнашихмыслейичувствэтоо
бразсуществованияинтересночтонаправлениемедицинскихисследованийвсебольшеи
большеотклоняетсявсторонутойобластикотораядосихпорсчиталасьсферойдеятельно
стипсихологовисейчасужетруднопровестичеткиеразграничениямеждуфизическимии
ментальнымифакторамизаболеваний

Примітки

  1. а б Пилиди, 2009, с. 55.
  2. а б в г д Friedman, 1938, с. 117.

Див. також

Література

Read other articles:

Ada usul agar artikel ini digabungkan dengan Kubis tiongkok. (Diskusikan) Sawi bunga Brassica rapa TumbuhanJenis buahsilique (en) TaksonomiDivisiTracheophytaSubdivisiSpermatophytesKladAngiospermaeKladmesangiospermsKladeudicotsKladcore eudicotsKladSuperrosidaeKladrosidsKladmalvidsOrdoBrassicalesFamiliBrassicaceaeTribusBrassiceaeGenusBrassicaSpesiesBrassica rapa Linnaeus, 1753 lbs Sawi bunga (Brassica rapa) (menurut Carolus Linnaeus (L.), sinonim Brassica campestris) adalah salah satu spes...

 

صحراء قره قوممعلومات عامةالبلد تركمانستان[1]الإمبراطورية الروسيةالاتحاد السوفيتي تقع في التقسيم الإداري ولاية أهالتركمانستان[1] الإحداثيات 39°N 60°E / 39°N 60°E / 39; 60[1] المساحة 400٬000 كيلومتر مربع تعديل - تعديل مصدري - تعديل ويكي بيانات 40°15′08.40″N 58°26′23.10�...

 

This article is about the town. For other uses, see Helsinge (disambiguation). Town in Region Hovedstaden, DenmarkHelsingeTownThe central pond in HelsingeHelsingeLocation in DenmarkShow map of DenmarkHelsingeHelsinge (Capital Region)Show map of Capital RegionCoordinates: 56°1′20″N 12°11′50″E / 56.02222°N 12.19722°E / 56.02222; 12.19722CountryDenmarkRegionRegion HovedstadenMunicipalityGribskov MunicipalityArea • Urban5.33 km2 (2.06 sq&#...

German long-distance runner Gabius in 2015 Arne Gabius (born 22 March 1981 in Hamburg) is a German long distance runner. From 2015 until 2023, he was the men's German national record holder in the marathon with his time of 2 hours 08 minutes and 33 seconds.[1] International competitions Representing  Germany Year Competition Venue Position Event Notes 2006 European Championships Gothenburg, Sweden – 5000 m DNF 2007 European Indoor Championships Birmingham, United Kingdom 9th 30...

 

Member of the Swedish Royal Family Marianne BernadottePrincess Bernadotte, Countess of WisborgBernadotte in 2019BornGullan Marianne Lindberg (1924-07-15) 15 July 1924 (age 99)Helsingborg, SwedenSpouse(s) Gabriel Tchang ​ ​(m. 1947; div. 1957)​ Sigvard Bernadotte ​ ​(m. 1961; died 2002)​ IssueRobert Tchang Richard Tchang Marie TchangFatherHelge LindbergMotherThyra Dahlman Swedish royal family T...

 

English noble and art patronAlethea HowardCountess of ArundelPeter Paul Rubens, Alethea Talbot with attendants and Sir Dudley Carleton, c. 1620. Alte Pinakothek.Born1585Sheffield, Yorkshire, EnglandDied3 June 1654Amsterdam, NetherlandsNoble familyTalbotSpouse(s)Thomas HowardIssueJames Howard, Baron MaltraversHenry Howard, 15th Earl of ArundelWilliam Howard, 1st Viscount StaffordMary Anne HowardFatherGilbert Talbot, 7th Earl of ShrewsburyMotherMary Cavendish Alethea Howard, 14th Baroness Talbo...

Sampul Buku Keponakan Penyihir Keponakan Penyihir (bahasa Inggris: The Magician's Nephew) adalah novel fantasi anak-anak karya C. S. Lewis. Novel ini adalah buku keenam yang dipublikasikan dari ketujuh buku seri The Chronicles of Narnia. Walaupun demikian, bila diurutkan secara kronologi, maka buku ini adalah buku yang pertama. C.S. Lewis mendedikasikan novel ini kepada Keluarga Kilmer. Ringkasan cerita Cerita ini dimulai di London sekitar tahun 1885, ketika dua anak, Digory Kirke dan Polly P...

 

Sceaux 行政国 フランス地域圏 (Région) イル=ド=フランス地域圏県 (département) オー=ド=セーヌ県郡 (arrondissement) アントニー郡小郡 (canton) 小郡庁所在地INSEEコード 92071郵便番号 92330市長(任期) フィリップ・ローラン(2008年-2014年)自治体間連合 (fr) メトロポール・デュ・グラン・パリ人口動態人口 19,679人(2007年)人口密度 5466人/km2住民の呼称 Scéens地理座標 北緯48度4...

 

 烏克蘭總理Прем'єр-міністр України烏克蘭國徽現任杰尼斯·什米加尔自2020年3月4日任命者烏克蘭總統任期總統任命首任維托爾德·福金设立1991年11月后继职位無网站www.kmu.gov.ua/control/en/(英文) 乌克兰 乌克兰政府与政治系列条目 宪法 政府 总统 弗拉基米尔·泽连斯基 總統辦公室 国家安全与国防事务委员会 总统代表(英语:Representatives of the President of Ukraine) 总...

此条目序言章节没有充分总结全文内容要点。 (2019年3月21日)请考虑扩充序言,清晰概述条目所有重點。请在条目的讨论页讨论此问题。 哈萨克斯坦總統哈薩克總統旗現任Қасым-Жомарт Кемелұлы Тоқаев卡瑟姆若马尔特·托卡耶夫自2019年3月20日在任任期7年首任努尔苏丹·纳扎尔巴耶夫设立1990年4月24日(哈薩克蘇維埃社會主義共和國總統) 哈萨克斯坦 哈萨克斯坦政府...

 

У этого термина существуют и другие значения, см. Свинец (значения). Свинец← Таллий | Висмут → 82 Sn↑Pb↓Fl Периодическая система элементов82Pb Внешний вид простого вещества Тяжёлый металл серебристо-серого цвета с синеватым отливом Образцы очищенного свинца Свойства а�...

 

本條目存在以下問題,請協助改善本條目或在討論頁針對議題發表看法。 此條目需要編修,以確保文法、用詞、语气、格式、標點等使用恰当。 (2013年8月6日)請按照校對指引,幫助编辑這個條目。(幫助、討論) 此條目剧情、虛構用語或人物介紹过长过细,需清理无关故事主轴的细节、用語和角色介紹。 (2020年10月6日)劇情、用語和人物介紹都只是用於了解故事主軸,輔助�...

Municipality in Catalonia, SpainUlldemolinsMunicipality FlagCoat of armsUlldemolinsLocation in CataloniaCoordinates: 41°19′25″N 0°52′39″E / 41.32361°N 0.87750°E / 41.32361; 0.87750Country SpainCommunity CataloniaProvinceTarragonaComarcaPrioratGovernment • MayorMisericòrdia Montlleó Domènech (2015)[1]Area[2] • Total38.2 km2 (14.7 sq mi)Elevation481 m (1,578 ft)Population (2018...

 

الدوري الإنجليزي لكرة القدم 1968–69 تفاصيل الموسم دوري كرة القدم الإنجليزية  البلد المملكة المتحدة  البطل ليدز يونايتد  الدوري الإنجليزي لكرة القدم 1967–68  الدوري الإنجليزي لكرة القدم 1969–70  تعديل مصدري - تعديل   الدوري الإنجليزي لكرة القدم 1968–69 (بالإنجليزية: 1...

 

Halaman ini berisi artikel tentang seri. Untuk game pertama dalam seri, lihat Assassin Creed (video game). Untuk seri buku, lihat Assassin's Creed (seri buku). Untuk film mendatang, lihat Assassin's Creed (film). Assassin's CreedAliranAksi-petualangan Sembunyi-sembunyi Pengembang Ubisoft Montreal Ubisoft Annecy Ubisoft Sofia Ubisoft Milan Ubisoft Quebec Ubisoft Toronto Gameloft Griptonite Games Blue Byte PenerbitUbisoftPembuatPatrice Désilets Jade Raymond Corey May Terbitan pertamaAssassin's...

Рим — открытый городитал. Roma, città aperta Жанры драмавоенный Режиссёр Роберто Росселлини Продюсеры Ферруччо Де МартиноДжузеппе АматоРод ГайгерРоберто Росселлини Авторысценария Серджо АмидеиФедерико ФеллиниРоберто Росселлини В главныхролях Альдо ФабрициАнна Манья...

 

Women's football club from Brighton, England Football clubBrighton & Hove AlbionFull nameBrighton & Hove Albion Women Football ClubNickname(s)The Seagulls, The AlbionFounded1967; 57 years ago (1967) as Brighton GPOGroundBroadfield Stadium, CrawleyCapacity6,135ManagerMikey Harris (interim)LeagueWomen's Super League2023–24WSL, 9th of 12WebsiteClub website Home colours Away colours Third colours Current season Brighton & Hove Albion Women Football Club is an Engli...

 

Military uniform Battle dress redirects here. For other uses, see Battle dress (disambiguation). Not to be confused with body armor or military uniform. This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Combat uniform – news · newspapers · books · scholar · JSTOR (November 2011) (Learn how and when to remove t...

弗朗索瓦·密特朗François Mitterrand弗朗索瓦·密特朗 第21任法國總統安道爾大公任期1981年5月21日—1995年5月17日总理皮埃尔·莫鲁瓦(1981年-1984年)洛朗·法比尤斯(1984年-1986年)雅克·希拉克(1986年-1988年)米歇尔·罗卡尔(1988年-1991年)埃迪特·克勒松(1991年-1992年)皮埃尔·贝雷戈瓦(1992年-1993年)爱德华·巴拉迪尔(1993年-1995年)前任瓦莱里·吉斯卡尔·德斯坦继...

 

UpfieldStasiun komuter PTVLokasiBarry Road, CampbellfieldMelbourne, VictoriaAustraliaPemilikVicTrackOperatorMetro TrainsJalur  UpfieldJumlah peron1Jumlah jalur1LayananBusKonstruksiJenis strukturTanahParkir25Informasi lainZona tarifMyki Zona 2Situs webPublic Transport VictoriaSejarahDitutup5 Mei 1956Dibangun kembali17 Mei 1965Operasi layanan Stasiun sebelumnya   Metro Trains   Stasiun berikutnya Gowriemenuju Flinders Street Jalur UpfieldTerminus Sunting kotak info • ...