Verschlüsselungen, bei denen lediglich ein Vertauschen der Zeichen (innerhalb eines Alphabetes) stattfinden, heißen monoalphabetisch. Dabei entspricht ein Zeichen immer genau einem verschlüsselten Zeichen. In der Mathematik spricht man hierbei von einer Permutation.
Aufgrund der großen Anzahl von Permutationen ist der Code durch stupides Ausprobieren ("Brut-Force-Methode") kaum zu knacken. Alleine die 26 Großbuchstaben können auf 26! ≈ 4 · 1026 Möglichkeiten angeordnet werden. Nicht alle sind dabei aber zur Verschlüsselung geeignet.
Monoalphabetische Verschlüsselungen kann man relativ einfach "knacken", wenn der verschlüsselte Text lang genug ist. Das Entschlüsseln beruht auf der Häufigkeitsverteilung einzelner Buchstaben und Buchstabengruppen einer Sprache.
Für die deutsche Sprache liegt folgende Häufigkeitsverteilung vor:
Entschlüssele folgende monoalphabetisch verschlüsselten Texte:
Uzv1}vxv urv$v1(! 1uv$1uv'&%tyv 1hvy$~rty&1z~1,)vz&v 1hv}&|$zvx1vz xv%v&,&v1Tyzww$zv$~r%tyz
v1V zx~r1)'$uv1(! 1R$&y'$1dtyv$sz'%1'$%\"$'v x}zty1w'v$1uv 1,z(z}v 1Vz %r&,1v &)zt|v}&?1Sz%1
,'~1\\$zvx%v uv1)'$uv1%zv1~vy$wrty1(v$sv%%v$&1' u1z 1'vsv$1BAAAAA1V*v~\"}r$v 1yv$xv%&v}}&?
lk/krypto/src/code1.txtcode1.txt
]%,#'\"y%s#z{w2tw&uzswx'{y'w2&{uz2(%&#%(w!y~{uz2vs {'>2yw&uz%{wtw!w2`suz%{uz'w!2ywzw{2-(2zs~
'w!@2[!-*{&uzw!2{&'2]%,#'\"y%s#z{w2w{!2s}'(w~~w&2X\"%&uz(!y&ywt{w'>2vs&2{!2){w~w!2Tw%w{uzw!2
vw&2 \"vw%!w!2^wtw!&2: w{&'2(!&{uz'ts%;2-( 2W{!&s'-2}\" '2:S('\"?iwyxsz%&#w%%w>2Zs!v,>2ee^?
hw%t{!v(!y2)\" 2T%\"*&w%2-( 2iwt&w%)w%>2&{uzw%w2W s{~>2@@@;@2h{w~w2_w!&uzw!2zstw!2s~&2]{!v2w
{! s~2)w%&(uz'>2`suz%{uz'w!2 {'2w{!xsuz&'w!2hw%xsz%w!2-(2)w%&uz~(w&&w~!@2l(2\"vw%!w!2hw%xsz%
w!2vw%2]%,#'\"y%s#z{w2stw%2x{!vw!2!(%2ys!-2*w!{yw2l(ys!y@2_{'2U%,#f\"\"~2}J!!w!2e{w2}~s&&{&u
zw2(!v2\"vw%!w2]%,#'\"y%s#z{w2(!v2]%,#'\"s!s~,&w24&#{w~w%{&uz42w%xsz%w!@2Vs&2a#w!?e\"(%uw?b%
\"|w}'2U%,#f\"\"~2w!'*{u}w~'2&w{'2CKKJ2(!'w%2vw%2^w{'(!y2)\"!2Tw%!zs%v2W&&~{!yw%2vs&2X%ww*s%
w?b%\"y%s 2U%,#f\"\"~2(!v2t%{!y'2vs {'2v{w&w&2i{&&w!2w{!w 2t%w{'w!2b(t~{}(2!swzw%@2U%,#f\"\
"~2*{%v2&\"*\"z~2{!2vw%2(!{)w%&{'sw'w!2^wz%w>2{!2euz(~w!2s~&2s(uz2!s'{\"!s~2(!v2{!'w%!s'{\"!
s~2{!2X{% w!2(!v2Twz\"w%vw!2w{!yw&w'-'@2Vs&2b%\"y%s 2U%,#f\"\"~2{&'2w{!2w^ws%!{!y?b%\"y%s
2x(w%2i{!v\"*&>2 {'2vw 2}%,#'\"y%s#z{&uzw2hw%xsz%w!2s!yw*w!vw'2(!v2s!s~,&{w%'2*w%vw!2}\"w!!w
!@2V{w2( xs!y%w{uzw2a!~{!w?Z{~xw2*{%v2v(%uz2e-w!s%{w!Af('\"%{s~&2(!v2w{!2e}%{#'2 {'2*w{'w%x(
wz%w!vw!2[!x\"% s'{\"!w!2:b%{ -sz~w!>2Zs&zx(!}'{\"!w!>2V{y{'s~w2e{y!s'(%w!>2@@@;2w%ysw!-'@
code2.txt