Geheimtaal decoderen in visual basic

Status
Niet open voor verdere reacties.

vbaontdekker

Nieuwe gebruiker
Lid geworden
26 okt 2015
Berichten
1
Hallo,

Ik probeer erachter te komen hoe je een bepaalde geheimtaal kunt decoderen wanneer je niet weet hoeveel plaatsen de letters zijn opgeschoven.
Als ik bijvoorbeeld de tekst: "eju jt ffo uftukf" heb (dit is een testje) en ik zou niet weten hoeveel plekken de letters zijn doorgeschoven, hoe kan ik dan met behulp van een programma in visual basic de tekst decoderen?
Ik dacht zelf eerst alle woorden te splitsen in letters, deze om te zetten naar cijfers, kijken welke het meest voorkomt en dan bepalen bij welke klinker de letter in de buurt ligt. Als de letter H dus het meest voorkomt in de tekst, zal dit waarschijnlijk betekenen dat de letter H staat voor de letter E. De letters zijn dan 3 plaatsen doorgeschoven.

Iemand enig idee voor een code hiervoor?

Alvast heel erg bedankt!:)
 
Er zijn verschillende methodes. De meeste daarvan zullen in zo'n situatie gewoon gaan "brute forcen": alle rotaties aflopen en de juiste vinden. zijn namelijk slechts 26 opties.

Je kunt gewoon een "dictionary" pakken en kijken hoeveel woorden "leesbaar" zijn. Dit is bijvoorbeeld hoe office e.d. bepalen in welke taal je aan het typen bent. Zodra je denkt dat de user een volledige bruikbare zin heeft getypt, schuif je het gewoon door een woordenboek van elke bekende taal en degene die 90% of zo woorden herkend wordt ontdekt als "taal", eventueel met wat subtiliteiten en prioriteiten.

Er zijn ook formules die kijken naar statistische verdeling. Woorden MOETEN een klinker bevatten, dus als er ergens een woord is met geen enkele klinker is het niet de juiste combinatie.

Het zoeken naar gebruik van de letter "E" e.d. is in het computer-tijdperk met een zeer beperkte combinatie-set meer moeite dan het op gaat leveren.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan