Codepage und CypherMatrix

Erich Schnoor <[email protected]>
Newsgroups gmane.comp.python.general.german
Message-ID <[email protected]>
Hallo, verehrte Leser,

seit Jahren beschäftige ich mich mit der Kryptographie (telecypher.net/Vorbemrk.pdf <http://telecypher.net/Vorbemrk.pdf> )
mit dem Ergebnis: Entwicklung des „CypherMatrix“ Verfahrens. Dabei hat sich herausgestellt, 
dass es neben den heute üblichen Verfahren (AES, DES, IDEA, Blowfish, RC4 u.a.) noch einige 
Bereiche gibt , die bisher weder dokumentiert noch wissenschaftlich analysiert worden sind. 
Das sind insbesondere folgende Teilbereiche:

                                   "Codepage" Technologie
                                Digitaler "Matrix-Generator"
                                      "One-time-chain"
                                       "Bitkonversion"

Diese Bereiche werden vor allem in Verschlüsselungsmodulen verwendet („teleCypher.py“ in:
python3.8.2). Dabei kommen als Informationsträger alle darstellbaren Unicode-Zeichen infrage.
Sie müssen nur in einem entsprechenden Zeichensatz („Codepage“) definiert werden.
Neue Erkenntnisse aus der Weiterentwicklung der Codepages für alle Unicode-Zeichen In der 
Chiffre spielen hier die Hauptrolle. Ausführliche Erläuterungen können Sie sich mit der
Datei: telecypher.net/CypherMatrix-Ordner.zip herunterladen.

Das folgende Python-Modul: "teletransfer.py" gibt einen Einblick in die 
Durchführung des digitalen Datentransfers mit "Unicode-Zeichen":

# ---------------------------- Beginn des Quellcodes -----------------------

# teleTransfer.py   Schleife:  Breite (70 Zeichen):
#!/usr/bin/env python3.8.2

import sys, os
# -*- coding: utf8 -*-

# Aus Unicode-Zeichen wird eine >Codepage< mit 256 Zeichen gebildet:
codepage = []
t1 = "ΣΤΥΦΧΨΩΪ-Zάέήίΰα"                                             # griechisch
t2 = "८लৡजਗ৳झ़उ৩১ढਸਫळ४बऽॼಲ"                                    # indisch
t3 = "뀩낲낶낊냶낈넎낥낳내끺냎끕냋뀾"                                # koreanisch
t4 = "ઓઔકખગઘઙચછજઝઞટઠડ"                                        # gujaratisch
t5 = "じすずせぜそぞただちぢっつづてでとどなに"       # japanisch
t6 = "DEFGHIJKLMNPRSTUVabcdefghkprs"                  # ascii-Code
t7 = "ЖЗИЙКЛМНОПРСТУФХЦЧШЩ"                          # kyrillisch
t8 = "㑛㑜㑝㑞㑟㑠㑡㑢㑣㑤㑥㑦㑧㑨㑩㑪㑫㑬㑭㑮"        # chinesisch
t9 = "ጶጷጸጹጺጻጼጽጾጿፀፁፂፃፄ"                                       # äthiopisch
t10 = "ฟภมยรฤลฦวศษสหฬ"                                               # thailändisch
t11 = "ႠႡႢႣႤႥႦႧႨႩႪႫႬႭႮ"                                         # georgisch
t12 = "ཝཞཟའཡརལཤཥསཧཨཀྵཪཫ"                                                  # tibetisch
t13 = "ঔকখগঘঙচছজঝঞটঠডঢ"                                          # bengalisch
t14 = "ಪಫಬಭಮಯರಱಲಳವಶಷಸ"                                    # kannadaisch
t15 = "කඛගඝඞඟචඡජඣඤඥඦටඨ"                                      # singalesisch
codepage = t1+t2+t3+t4+t5+t6+t7+t8+t9+t10+t11+t12+t13+t14+t15   

# ----------------------------------- Hauptprogramm -------------------------------

print("                               >teleTransfer< 
print("                           (Codepage-Verfahren)") 
 
inwork = "1"
while inwork == "1":    #--------- Programm wiederholen ---------------------------

    print() 
    print(" Auswahl:               ..w..   (schreiben)")
    print("                        ..r..   (lesen)")
    print("                        ..q..   (beenden")
    modus = input(" Bereich wählen > ")

    if modus == "q":
        print(" Das Programm ist beendet")
        sys.exit()
        
    breite = 70    # ---------- Texteingaben mit 70 Zeichen pro Zeile -----
    print(" Breite: ",breite)    
    
    if modus == "w":   # ------------------ Daten schreiben ---------------
 
        datei ="Transfer.txt"
        print(" Datei: ",datei)
        print("______________ Text schreiben und mit 2xEnter beenden ______")
        zeile = ""
        text = ":"
                                
        while text:
            text = input()  #---------------Nachricht schreiben -----------
            zeile = zeile + text    

            if zeile == "":
                print("               Es wurde kein Text eingegeben ! ")
                break
        print("__________________________ Eingabe beendet ______________")

        if zeile == "":
           zeile = "Wer recht in Freuden wandern will, der geh der Sonn entgegen."
        
        print(" Der  Transfertext lautet wie folgt:")
        zeile = zeile + " "    # Erfassung des letzten Zeichens
        transtext = ""
                
        for a in zeile:        # Klartext-Zeichen --> Codepage-Zeichen
            digit = int(ord(a))
            zeichen = codepage[digit]
            transtext = transtext + zeichen

        schreiben = open(datei,"w")
        schreiben.write(transtext)                  
        print("",transtext)    
        schreiben.close()   
           
    elif modus == "r":   # ----------- Arbeitsschleife der Entschlüsselung  
        
        ptdatei = "Transport.txt"
        schreiben = open(ptdatei,"w")
        transdatei = "Transfer.txt"         
        print(" Datei: ",transdatei)
        lesen = open(transdatei,"r")                                                             
        zeile = lesen.read() 
        
        i = 0
        klartext = ""
       
        for a in zeile:   # -------------- Transfer-Daten lesen --------
            digit = codepage.find(a)
            zeichen = chr(digit) 
            klartext = klartext + zeichen           
       
        print("",klartext)   # ------------- Klartext speichern ---------
        schreiben.write(klartext)
        lesen.close()    
        schreiben.close()
    
    print("                        Das Programm wird erneut aufgerufen")
inwork = "2"

#--------------------------------------- Ende Programm-Code --------------              

Der vorhergehende Quellcode ist auch in der angebotenen Zip-Datei enthalten.
Zu Rückfragen und weitere Erläuterungen steht Ihnen der Autor jederzeit unter:                    
'[email protected]' Zur Verfügung.

Mit internetten Grüßen
Ernst Erich Schnoor
(www.telecypher.net <http://www.telecypher.net/>)
_______________________________________________
python-de maillist  -  [email protected]
https://mail.python.org/mailman/listinfo/python-de
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.