Kryha Cryptanalyse - Konheim cryptogram


Home Page
Kryha Home Page
Kryha Cryptanalysis Home Page

Introduction

In 1982, Alan G. Konheim wrote an article on the cryptanalysis of Kryha cipher machine (see References).

He proposed a mathematical attack on a long cryptogram (over 2000 characters). The wheel used is assumed to be unknown. I confess I understood almost nothing of his mathematical proofs :-(

The Wheel Used

In fact, as shown in the solution, the offsets found correspond to the standard wheel but with a systematic offset of three notches instead of four. Is Konheim using an experimental model of the Kryha machine?

If it is an experimental machine, choosing a systematic addition of three steps is a poor choice because it leads to generating only 13 alphabets instead of 26 (see below). Switching to a systematic addition of four steps corrects this effect.

At the end of his article, Konheim thanks Dr. Kjell-Ove Widman of Crypto AG for his help regarding the historical aspects. Perhaps this person provided him with the description of the wheel?

The cryptogram

$ more MSGS/konheim.cry
CECZDHYCFWGNVRTUA MZEDCQAMRUDWGAKCQ GQUSIFIZBMXMDOGOY WTSZRJBDOLZESLLSO

VVFBPHTKYMFXDGNRN MIIPITFWNRRIZCRGN LMKNXXIDHAARQEGAH PLIYXSQYARQRQSSVX

BVLUIULXQGISVXIKU YNUIZQUQVIJFEEQNH YGKIXTNIKOOQYIBFB UUGPLRJOSIYBACPGV

QYFZOWOGKRLPHTKNE YLAPCOYZEXBJAYGWI EHNDHRHZKNVTVXJXS KCDNKNEKSLXMFEDGB

XSKSZSBRCKKFOJDCF EEYXAHWSYMFIOUDBC BYXPMHQSDGFZGHVYO MSYMUBTVNKXHMCECA

GNXAVGPCCVBBBIRFM UJQJGSKMHCGSHGXFR QMUUZOWWVWMABUAWT LNOUIGGLRHWTIKWBV

XARTAYYWYYCPWXNNZ BXBLYJJHUDEYTPLLE IJCGFKHACOIOCNIKL MFOINMZOYTHRMKAMC

RREFOSOPBPWRJOGVJ AZPZXAKUZIPUGVGZW WPFZKWWYITNAGLWSN ZBVKXRDVDQXFKJIWO

DSYLEKXANBMTKWVVT FNLNKDPJADRPFHPHD VTKVKBEZLNIPTGFSW LJEWNQUQQCESWKEUF

NWAGUHAVYMARMXKDI UAUCKXTSFKPTLENNU NEUUJDYFVRZMNEWJA YKLNCPDEROIWUXUWH

HZAISFAMOKSYIOKLG JYXZCIIDITHEPGDNO WYUXPWMDLPBGPKIAL VXFADSSXTXNCORDJG

NFQYOGOZZECVPQHJV FCEQPABYPFBJFZBAZ HYPQYPKICOPXKRKHR XAQJXTPSJUGKHDDTG

BDGGNQUQRCWBMFSSC PABNHPCCSHJPNKTNV CVLSJMOZFVITJZGGR JRGPLGSGVSMDOALQR

VUGPQKDCPKPOKHNPG DAHEMYFESLBPFZOMQ WEBOBDMGCEYDWCGXQ PJMZVWPPLXGWXCGHT

XWFCELCAPZOAISTKZ VPPPMVXZEQOVJZOIG DSYLEKBVGHSUATFZA XAQCBFJFARNFSSDQY

XOXUJMTXEUMQEYXVQ BWNOQLYCBFSXCDTWT IHLDNOYPKQOEKNVSQ HPWZTLZXZUYEFVKCS

AUJSLBRIHMMWLKFAV VEAPGOVZEKWOVKCTM OHLXODFIXZXPFVTML UHFFUIVOCLYLQVOEN

DFIHXAUWNNAUFTNAU CFNGCEMIJJWXLDWYD SMSTQBSHLWFSIDHJV MBGSEXSMGOMKROVKA

SIKHDODLJUQRTSZOZ SGVTVSISYFESAXOKF BWWXWRWNJSYNBETPC PICCAYMUKHIRNXWHI

YYWAVNVLZOZPGUJSL YDCKLBDDBRESGOJQU YKKGFOWSAIQETLNFC XRZPCUCOGXHOGAUMX
Note: We leave it to the reader to find the solution using the methods described on this site. WARNING! The solution is provided later, but without detailed step-by-step instructions.

The key (Solution)

  • Internal Alphabet: WGMKRUYTBZHCNXFDJLPEVOAQSI
  • Sectors: 8,6,5,6,4,5,6,5,7,5,9,4,5,4,6,5,4
  • Move the Internal disk before ciphering
Note: The machine does not appear to be a standard machine (see previous paragraphs).

Standard Wheel: 3, 2, 3, 1, 2, 3, 2, 4, 2, 6, 1, 2, 1, 3, 2, 1, 5
Konheim Wheel : 8, 6, 5, 6, 4, 5, 6, 5, 7, 5, 9, 4, 5, 4, 6, 5, 4
-3            : 5, 3, 2, 3, 1, 2, 3, 2, 4, 1, 6, 1, 2, 1, 3, 2, 1
If we subtract 3 from each sector and shift the values to the left, we obtain the values of the sectors of the standard wheel!

The key length

If we use the superposition method, we can calculate the length of the key and deduce the number of sectors of the wheel used.

$ python3 superpose.py -c MSGS/konheim.cry -m 500 -t 110
   0 =>  2272, 1.000
  61 =>   115, 0.051
  82 =>   113, 0.050
  94 =>   113, 0.050
 116 =>   110, 0.048
 141 =>   113, 0.050
 157 =>   116, 0.051
 165 =>   117, 0.051
 221 =>   140, 0.062
 249 =>   116, 0.051
 320 =>   110, 0.048
 322 =>   120, 0.053
 327 =>   110, 0.048
 381 =>   120, 0.053
 442 =>   142, 0.062
 468 =>   111, 0.049
Two peaks are noticeable: 221 and 442 (17*26 et 17*13).

Note about the problem: In fact, the problem proposed by Konheim is not so complex. Indeed, the cryptogram is over 2000 characters long, only 17 sectors are used, the key length is only 221 (there are only 13 alphabets), and the machine uses only a single disordered alphabet (the outer alphabet is ABC...Z).

The plain text

$ python3 kryha_tui.py -o \
	-i WGMKRUYTBZHCNXFDJLPEVOAQSI \
	-s 8,6,5,6,4,5,6,5,7,5,9,4,5,4,6,5,4  -d -m \
	< MSGS/konheim.cry | fold -w 70
THEISSUEOFPERFORMANCEEVALUATIONANDPREDICTIONHASCONCERNEDUSERSTHROUGHOU
TTHEHISTORYOFCOMPUTEREVOLUTIONPERIODINFACTCOMMAASINANYOTHERTECHNOLOGIC
ALDEVELOPMENTCOMMATHEISSUEISMOSTACUTEWHENTHETECHNOLOGYISYOUNGTHEPERSIS
TENTPURSUITOFPRODUCTSWITHIMPROVEDCOSTHYPHENPERFORMANCECHARACTERISTICST
HENCONSTANTLYLEADSTODESIGNSWITHUNTRIEDANDUNCERTAINFEATURESPERIODFROMTH
EINITIALCONCEPTIONOFASYSTEMSARCHITECTURALDESIGNTOITSDAILYOPERATIONAFTE
RINSTALLATIONPERIODINTHEEARLYPLANNINGPHASEOFANEWCOMPUTERSYSTEMPRODUCTC
OMMATHEMANUFACTURERMUSTUSUALLYMAKETWOTYPESOFPREDICTIONPERIODTHEFIRSTTY
PEISTOFORECASTTHENATUREOFAPPLICATIONSANDTHELEVELSOFSYSTEMWORKLOADSOFTH
ESEAPPLICATIONSPERIODHERETHETERMWORKLOADMEANSCOMMAINFORMALLYCOMMATHEAM
OUNTOFSERVICEREQUIREMENTSPLACEDONTHESYSTEMPERIODWESHALLELABORATEMOREON
WORKLOADCHARACTERIZATIONINSECTIONONEPOINTFOURPERIODTHESECONDTYPEOFPRED
ICTIONISCONCERNEDWITHTHECHOICEBETWEENARCHITECTURALDESIGNALTERNATIVESCO
MMABASEDONHARDWAREANDSOFTWARETECHNOLOGIESTHATWILLBEAVAILABLEINTHEDEVEL
OPMENTPERIODOFTHEPLANNEDSYSTEMPERIODHERETHECRITERIONOFSELECTIONISWHATW
ECALLCOSTHYPHGNPERFORMANCETRADEOFFPERIODTHEACCURACYOFSUCHPREDICTIONRES
TSTOACONSIDERABLEEXTENTONOURCAPABILITYOFMAPPINGTHEPERFORMANCECHARACTER
ISTICSOFTHESYSTEMCOMPONENTSINTOTHEOVERALLSYSTEMHYPHENLEVELPERFORMANCEC
HARACTERISTICSPERIODSUCHTRANSLATIONPROCEDURESAREBYNOMEANSSTRAIGHTFORWA
RDORWELLESTABLISHEDPERIODONCETHEARCHITECTURALDECISIONSHAVEBEENMADEANDT
HESYSTEMDESIGNANDIMPLEMENTATIONSTARTEDCOMMATHESCOPEOFPERFORMANCEPREDIC
TIONANDEVALUATIONBECOMESMORESPECIFICPERIODWHATISTHEBESTCHOICEOFMACHINE
ORGANIZATIONQUESTIONWHATISTHEOPERATINGSYSTEMTOSUPPORTANDWHATARETHEFUNC
TIONSITSHOULDPROVIDEQUESTIONTHEINTERACTIONSAMONGTHEOPERATINGSYSTEMCOMP
ONENTSHYPHENALGORITHMSFORJOBSCHEDULINGCOMMAPROCESSORSCHEDULINGCOMMAAND
STORAGEMANAGEMENTHYPHENMUSTBEUNDERSTOODCOMMAANDTHEIREFFECTSONTHEPERFOR
MANCEMUSTBEPREDICTEDPERIODTHETECHNIQUESUSEDFORPERFORMANCEEVALUATIONAND
PREDICTIONDURINGTHEDESIGNANDIMPLEMENTATIONPHASESRANGEFROMSIMPLEHANDCAL
CULATIONTOQUITEELABORATESIMULATIONPERIODCOMPARINGTHEPREDICTEDPERFORMAN
CEWITHTHEACTUALACHIEVEDPERFORMANCEOFTENREVEALSMAJORDEFECTSINTHEDESIGNO
RERRORSINTHESYSTEMPROGRAMMINGPERIODITISNOWAWIDELYACCEPTEDBETIEFTHATTHE
PERFORMANCEPREDICTIONANDEVALUATIONPROCESSSHOULDBEANINTEGRALPARTOFTHEDE
VELOPMENTEFFORTSTHROUGHOUTPERIOD

$ python3 kryha_tui.py -o -i WGMKRUYTBZHCNXFDJLPEVOAQSI \
	-w konheim  -d -m < MSGS/konheim.cry | fold -w 70 | head -5
THEISSUEOFPERFORMANCEEVALUATIONANDPREDICTIONHASCONCERNEDUSERSTHROUGHOU
TTHEHISTORYOFCOMPUTEREVOLUTIONPERIODINFACTCOMMAASINANYOTHERTECHNOLOGIC
ALDEVELOPMENTCOMMATHEISSUEISMOSTACUTEWHENTHETECHNOLOGYISYOUNGTHEPERSIS
TENTPURSUITOFPRODUCTSWITHIMPROVEDCOSTHYPHENPERFORMANCECHARACTERISTICST
HENCONSTANTLYLEADSTODESIGNSWITHUNTRIEDANDUNCERTAINFEATURESPERIODFROMTH

$ cat keys/konheim.whl
4, 2, 1, 2, 0, 1, 2, 1, 3, 1, 5, 0, 1, 0, 2, 1, 0

Reference

  • Cryptanlysis of a Kryha Machine, by A.G. Konheim. Article of a book: Lecture Notes in Computer Science, Edited by G. Goos and J. Hartmanis, 159, Cryptography, Proceeding, Burg Feuertein, (1982), Edited by Thomas Beth, Springer-Verlag, Berlin Heidelberg New York.