Hoppa till innehållet

Frekvensanalys

Från Wikipedia
Typisk fördelning av bokstäver i engelskspråkig text

Frekvensanalys används inom flera vetenskapliga grenar och behandlar på olika sätt analys av förekomsten / frekvensen av någon händelse.

I kryptoanalys - läran om att knäcka krypterade meddelanden - har man under lång tid använt sig av frekvensanalys. Man utnyttjar hur vanligt förekommande en bokstav eller en bokstavskombination är i ett visst språk. Bokstaven 'i' är exempelvis vanligare i engelska än i svenska. Känner man till - eller kvalificerat kan gissa - vilket språk som kryptot är skrivet på är det ofta möjligt att använda frekvensanalys.

Det har visat sig att i texter som är skrivna på samma språk förekommer bokstäverna i ungefär samma andelar. Alltså kan man inte bara bestämma vilka bokstäver som är vanligast respektive ovanligast utan också approximera hur stor andel av bokstäverna som är en given bokstav. Man kan bilda frekvenstabeller över hur kvoten mellan antal bokstäver av en viss sort och totala antalet bokstäver beror på vilken viss bokstav man studerar. Dessa tabeller kommer att vara likartade för alla texter på samma språk.

Uppenbart är att dessa andelar inte kommer ändra sig om man byter plats på en bokstav med en annan i texten. Med detta kommer frekvensanalysens betydelse i kryptoanalysen in eftersom en vanlig (och simpel) form av kryptering är just att för varje given bokstav i ursprungstexten skriva i det krypterade meddelandet en för denna bokstav given ersättningsbokstav.

Genom att först generera en frekvenstabell över bokstäverna (eller andra egenskaper) i språket som man förmodar att det krypto man vill forcera använder och en annan frekvenstabell över bokstäverna i kryptot kan man sedan deducera vilka bokstäver som har vilka ersättningsbokstäver genom jämförelse, förutsatt att kryptot är krypterat på det sätt som beskrevs i föregående stycke. Enkla variationer, såsom att bokstavspar ersätts med bokstavspar eller att vanliga bokstäver ersätts med två olika, kan också forceras på motsvarande sätt.

Denna metod är alltså mycket effektiv för simpla krypton och den kan naturligtvis även appliceras på partier av kryptot (till exempel delvis brutet krypto) som man misstänker är kodat på önskat sätt. För att med frekvensanalys forcera koden krävs en någorlunda noggrann frekvenstabell över både språket (d.v.s. någon utvald text) och över kryptot. Är kryptot kort eller innehåller ovanliga distributioner av bokstäver blir inte frekvensanalysen tillämpbar. Frekvensanalyser kan göras på grupper av bokstäver för att minska på det förra problemet och på speciella typers texter för att kringgå det senare.

Inom akustik är frekvensanalys ett verktyg för mätning av ljud. Det ger mer information än bara mätning av ljudintensitet.

Inom hydrologi används frekvensanalys till exempel för att förutsäga hur ofta ett vattenflöde av en viss storlek inträffar i ett bestämt vattendrag. Just detta görs på följande sätt:

  • Ta fram statistik över de maximala flöden som inträffat varje år i det aktuella vattendraget
  • Rangordna flödena efter storlek (störst till minst) och tilldela dem en "rang", ett heltal från 1 (störst flöde) till N (minst). Om data finns från 10 år får alltså det minsta flödet rangen 10.
  • Sannolikheten (P) för varje flödes inträffande beräknas, utifrån rangen (r) och det totala antalet mätvärdet, med någon av dessa formler:
    • Sannolikheten enligt Weibull:
    • Sannolikheten enligt Gringorten:
  • Återkomsttiden (T), hur ofta det inträffar, för ett visst flöde beräknas sedan med
  • Flödena och deras återkomsttid ritas sedan upp i ett diagram, där en linje kan extrapoleras för att uppskatta flöden med längre återkomsttid än datamaterialet sträcker sig över.