Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #5705

[Python-de] Codepage und CypherMatrix

From Erich Schnoor <eschnoor@multi-matrix.de>
Newsgroups de.comp.lang.python
Subject [Python-de] Codepage und CypherMatrix
Date 2020-10-28 18:58 +0100
Message-ID <mailman.48.1603943133.30489.python-de@python.org> (permalink)
References <058EEA7E-10D8-4A83-BB29-7E12673FE305@multi-matrix.de>

Show all headers | View raw


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:                    
'eschnoor@multi-matrix.de' Zur Verfügung.

Mit internetten Grüßen
Ernst Erich Schnoor
(www.telecypher.net <http://www.telecypher.net/>)

Back to de.comp.lang.python | Previous | Next | Find similar


Thread

[Python-de] Codepage und CypherMatrix Erich Schnoor <eschnoor@multi-matrix.de> - 2020-10-28 18:58 +0100

csiph-web