#!/usr/bin/env python3 # -*- coding: iso-8859-15 -*- #Klartext: Beispielklartext #Schlüssel: Apfelstrudel #Chiffrat: 31 14 35 21 12 35 14 15 41 15 11 23 22 14 53 22 text="Be1ispie3lklartext was ist das?" PW="A9pfelstr2udel" QZ5=[11,12,13,14,15,21,22,23,24,25,31,32,33,34,35,41,42,43,44,45,51,52,53,54,55] alpha5ij="ABCDEFGHIKLMNOPQRSTUVWXYZ" #j wird durch i ersetzt alpha5uv="ABCDEFGHIJKLMNOPQRSTUWXYZ" #v wird durch u ersetzt QZ6=[11,12,13,14,15,16,21,22,23,24,25,26,31,32,33,34,35,36,41,42,43,44,45,46,51,52,53,54,55,56,61,62,63,64,65,66] alpha6="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" text=text.upper() textij=text.replace("J","I") textuv=text.replace("V","U") PW=PW.upper() PWi=PW.replace("J","I") PWu=PW.replace("V","U") passw5ij="" for i in PWi: if i in alpha5ij:passw5ij+=i passw5uv="" for i in PWu: if i in alpha5uv:passw5uv+=i passw6="" for i in PWi: if i in alpha6:passw6+=i text5ij="" for i in textij: if i in alpha5ij:text5ij+=i text5uv="" for i in textuv: if i in alpha5uv:text5uv+=i text6="" for i in text: if i in alpha6:text6+=i PW5ij="" for b in PWi+alpha5ij: if b in alpha5ij and b not in PW5ij:PW5ij+=b PW5uv="" for b in PWu+alpha5uv: if b in alpha5uv and b not in PW5uv:PW5uv+=b PW6="" for b in PW+alpha6: if b in alpha6 and b not in PW6:PW6+=b WB5ij={} for i in range(25): WB5ij[PW5ij[i]]=str(QZ5[i]) WB5uv={} for i in range(25): WB5uv[PW5uv[i]]=str(QZ5[i]) WB6={} for i in range(36): WB6[PW6[i]]=str(QZ6[i]) ctext5ij="" for b in text5ij:ctext5ij+=WB5ij[b]+" " ctext5uv="" for b in text5uv:ctext5uv+=WB5uv[b]+" " ctext6="" for b in text6:ctext6+=WB6[b]+" " print("5x5(j=i)",text5ij,passw5ij) print(ctext5ij) print("5x5(v=u)",text5uv,passw5uv) print(ctext5uv) print("6x6",text6,passw6) print(ctext6)