******************
* Projekt CODING *
******************
Das Projekt CODING umfasst die nachfolgend aufgefhrten Dateien,
die den Hauptkategorien
   - Lizenz,
   - Dokumentation,
   - direkt ausfhrbare DOS-Programme,
   - direkt ausfhrbare WINDOWS-Dialogsysteme      und
   - Quellcode- und Hilfs-Dateien
zugeordnet sind. Im einzelnen:


Lizenz:
=======
Lizenz-Vereinbarung fr eine freie Lizenz im Haupt-Verzeichnis:
---------------------------------------------------------------
  1. FREE_PRIVATE_LICENSE.pdf      - Lizenz-Vereinbarung


Dokumentation:
==============
Die Dokumentation im Verzeichnis "coding\beschreibungen" besteht aus
folgenden Teilen jeweils als PDF-Datei, hier zunchst fr die
allgemeinen Leser/Benutzer:
-->Basis-Dokumentation-----
  1. Coding_Einfhrung.pdf    - Motivation und Kurzeinfhrung
  2. Coding_Beschreibung.pdf  - Bescheibung der Programmfamilie CODING
                                (Benutzer-Handbuch)

Fr die technisch und mathematisch interessierten Leser/Benutzer:
-->technische Dokumentation--------------------------------------
  3. Coding_de.pdf (siehe auch  http://eprint.iacr.org/2013/742.pdf)
                    - Kurzbeschreibung
                    - Einleitung/Zusammenfassung
                    - Konvergenz von berlade-Operationen bei Schlsseln
                    - Beschreibung des Algorithmus
                    - Kurz-Untersuchung zur Sicherheit des Algorithmus
                    - Algorithmus-Erweiterung/-Anwendung


Direkt ausfhrbare DOS-Programme:
==>DOS-Systeme===================
Module (im Verzeichnis "coding"):
---------------------------------
  1. coding1.exe      - DOS-Programm-Modul CODING1
                        (varBlk=1, safety=2, EndShift=0, ClearCore=1)
  2. coding2.exe      - DOS-Programm-Modul CODING2
                        (varBlk=1, safety=2, EndShift=0, ClearCore=1)
  3. coding3.exe      - DOS-Programm-Modul CODING3
                        (varBlk=1, safety=0, EndShift=0, ClearCore=1)


Direkt ausfhrbare WINDOWS-Dialogsysteme:
==>WINDOWS-Systeme=======================
Module (im Verzeichnis "coding-dialog"):
----------------------------------------
  1. coding1E.exe     - Dialogprogramm-Modul CODING1 erweiterte Version
                        (varBlk=1, safety=2, EndShift=0, ClearCore=1)
  2. coding2E.exe     - Dialogprogramm-Modul CODING2 erweiterte Version
                        (varBlk=1, safety=2, EndShift=0, ClearCore=1)
  3. coding3E.exe     - Dialogprogramm-Modul CODING3 erweiterte Version
                        (varBlk=1, safety=2, EndShift=0, ClearCore=1)
  4. coding1S.exe     - Dialogprogramm-Modul CODING1 einfache Version
                        (varBlk=1, safety=0, EndShift=0, ClearCore=1)
  5. coding2S.exe     - Dialogprogramm-Modul CODING2 einfache Version
                        (varBlk=1, safety=0, EndShift=0, ClearCore=1)
  6. coding3S.exe     - Dialogprogramm-Modul CODING3 einfache Version
                        (varBlk=1, safety=0, EndShift=0, ClearCore=1)

Help-Dateien der Unterverzeichnisse "HelpDbE" und "HelpDbD":
------------------------------------------------------------
  1. ActionHandling.html -----+
  2. AusFile.html             I
  3. CodArt.html              I
  4. CodArtS.html             I
  5. CodFile.html             I
  6. CodFileS.html            I
  7. CodDir.html              I
  8. Coding_Description.pdf   I  - Benutzer-Handbuch oder Hinweis zum
  9. Common.html              I   \       fehlenden Benutzer-Handbuch
 10. CommonS.html             I
 11. CompFile.html            I
 12. ConfMemo.html            I
 13. DirectCodDat.html        I
 14. DirectKey.html           I
 15. DirectOvl.html           I
 16. DirectOvlDat.html        I
 17. DirectOvlDatS.html       I
 18. DtnFile.html             I
 19. ExpFile.html             I
 20. ExpFileS.html            I
 21. InitialKey.html           \ ggf. nebst jeweiligem Unterverzeichnis
 22. InitialKeyS.html          /      und Unterverzeichnis-Dateien
 23. KeyDataset.html          I
 24. KeyDatasetS.html         I
 25. KeyHex.html              I
 26. KeyInfos.html            I
 27. KeyInfosS.html           I
 28. MessageMemo.html         I
 29. OvlCommon.html           I
 30. OvlDataset.html          I
 31. OvlMeta.html             I
 32. OvlRange.html            I
 33. ParCommon.html           I
 34. ParFile.html             I
 35. ParKey.html              I
 36. RandomKey.html           I
 37. Running.html             I
 38. LangBox.html             I
 39. Streaming.html           I
 40. StreamVal.html           I
 41. Logo.html                I
 42. TimeOut.html             I
 43. TimeOutN.html -----------+


Quellcode- und Hilfs-Dateien:
==>Sources===================
Der Quellcode setzt sich aus folgenden Dateien zusammen (entwickelt mit
'FreePascal IDE Win32/i386, Comp.Vers. 2.4.0' und
'Lazarus, Vers. 0.9.28.2 Beta'),
I. Fr die Kernroutinen/DOS-Programme (im Verzeichnis "coding\source"):
-----------------------------------------------------------------------
* 1. Coding1neu.pas   - Kernroutine des Programms CODING1
  2. S1COD1E.BYT      - Programmidentifikation CODING1 englisch
  3. S2COD1E.BYT      - Verpflichtungserklrung CODING1 englisch
  4. S1COD1D.BYT      - Programmidentifikation CODING1 deutsch
  5. S2COD1D.BYT      - Verpflichtungserklrung CODING1 deutsch

* 6. Coding2neu.pas   - Kernroutine des Programms CODING2
  7. S1COD2E.BYT      - Programmidentifikation CODING2 englisch
  8. S2COD2E.BYT      - Verpflichtungserklrung CODING2 englisch
  9. S1COD2D.BYT      - Programmidentifikation CODING2 deutsch
 10. S2COD2D.BYT      - Verpflichtungserklrung CODING2 deutsch

*11. Coding3neu.pas   - Kernroutine des Programms CODING3
 12. S1COD3E.BYT      - Programmidentifikation CODING3 englisch
 13. S2COD3E.BYT      - Verpflichtungserklrung CODING3 englisch
 14. S1COD3D.BYT      - Programmidentifikation CODING3 deutsch
 15. S2COD3D.BYT      - Verpflichtungserklrung CODING3 deutsch

 16. SBCODE.BYT       - Befehlszeilen-Parameter englisch,
                        falls 'Safety'<2
 17. SBCODE2.BYT      - Befehlszeilen-Parameter englisch,
                        falls 'Safety'>1
 18. SPCODE.BYT       - bergabeparameter-Beschreibung englisch,
                        falls 'Safety'=0
 19. SPCODE1.BYT      - bergabeparameter-Beschreibung englisch,
                        falls 'Safety'=1
 20. SPCODE2.BYT      - bergabeparameter-Beschreibung englisch,
                        falls 'Safety'>1
 21. MT00COD.PAS      - Meldungstexte englisch
 22. SBCODD.BYT       - Befehlszeilen-Parameter deutsch,
                        falls 'Safety'<2
 23. SBCODD2.BYT      - Befehlszeilen-Parameter deutsch,
                        falls 'Safety'>1
 24. SPCODD.BYT       - bergabeparameter-Beschreibung deutsch,
                        falls 'Safety'=0
 25. SPCODD1.BYT      - bergabeparameter-Beschreibung deutsch,
                        falls 'Safety'=1
 26. SPCODD2.BYT      - bergabeparameter-Beschreibung deutsch,
                        falls 'Safety'>1
 27. MT01COD.PAS      - Meldungstexte deutsch

 28. DIRACCES.PAS     - Directory-Zugriffsroutinen
 29. GETTIME.PAS      - Uhrzeit-String-Routinen
 30. GETDATEL.PAS     - Datum-String-Routinen
 31. DOStoWIN.PAS     - Umsetzung von OEM- auf ANSI-Zeichensatz
 32. FormatLE.PAS     - Zeilenumbruch mit '%/' als 'sysutils.Format'-
                        Unterprogramm-Ergnzung
 33. CodingIcon.rc    - Ressourcendatei des Anwendungs-Icons
 34. Coding.ico       - Icon-Datei

 35. SPCODE.TXT       - bergabeparameter-Beschreibungs-Text englisch
                        fr 'Safety'=0
 36. SPCODE1.TXT      - bergabeparameter-Beschreibungs-Text englisch
                        fr 'Safety'=1
 37. SPCODE2.TXT      - bergabeparameter-Beschreibungs-Text englisch
                        fr 'Safety'>1
 38. SPCODD.TXT       - bergabeparameter-Beschreibungs-Text deutsch
                        fr 'Safety'=0
 39. SPCODD1.TXT      - bergabeparameter-Beschreibungs-Text deutsch
                        fr 'Safety'=1
 40. SPCODD2.TXT      - bergabeparameter-Beschreibungs-Text deutsch
                        fr 'Safety'>1

II. Fr die Dialogprogramme (im Verzeichnis "coding-dialog\source"):
--------------------------------------------------------------------
  0. <s. 1-34. zuvor> - Die zuvor genannten Kernroutinen-Dateien

**1. codingE.lpi      - LAZARUS-Projektdatei erweiterte Version
* 2. codingE.lpr      - Hauptprogramm der Dialoganwendungen
                        erweiterte Version
* 3. ucodingE.pas     - Unterprogramm zur Behandlung der Hauptmaske
                        erweiterte Version
  4. ucodingE.lfm     - Definitionswerte der Hauptmaske
                        erweiterte Version
  5. ucodingE.lrs     - Ressourcendatei der Hauptmaske
                        erweiterte Version
  6. utimeoutE.pas    - Unterprogramm zur Behandlung der Zeitgrenzen-
                        berschreitungs-Maske erweiterte Version
  7. utimeoutE.lfm    - Definitionswerte der Zeitgrenzen-
                        berschreitungs-Maske erweiterte Version
  8. utimeoutE.lrs    - Ressourcendatei der Zeitgrenzen-
                        berschreitungs-Maske erweiterte Version
  9. MGReCODE.pas     - Meldungstextnamen-Definitions-Record
                        erweiterte Version
 10. MG00CODE.pas     - Dialog-Meldungstexte englisch erweiterte Version
 11. MG01CODE.pas     - Dialog-Meldungstexte deutsch erweiterte Version

**12. codingS.lpi     - LAZARUS-Projektdatei einfache Version
*13. codingS.lpr      - Hauptprogramm der Dialoganwendungen
                        einfache Version
*14. ucodingS.pas     - Unterprogramm zur Behandlung der Hauptmaske
                        einfache Version
 15. ucodingS.lfm     - Definitionswerte der Hauptmaske
                        einfache Version
 16. ucodingS.lrs     - Ressourcendatei der Hauptmaske
                        einfache Version
 17. utimeoutS.pas    - Unterprogramm zur Behandlung der Zeitgrenzen-
                        berschreitungs-Maske einfache Version
 18. utimeoutS.lfm    - Definitionswerte der Zeitgrenzen-
                        berschreitungs-Maske einfache Version
 19. utimeoutS.lrs    - Ressourcendatei der Zeitgrenzen-
                        berschreitungs-Maske einfache Version
 20. MGReCODS.pas     - Meldungstextnamen-Definitions-Record
                        einfache Version
 21. MG00CODS.pas     - Dialog-Meldungstexte englisch einfache Version
 22. MG01CODS.pas     - Dialog-Meldungstexte deutsch einfache Version

 23. uinfo.pas        - Unterprogramm zur Behandlung des
                        Programmidentifikations-Fensters
 24. uinfo.lfm        - Definitionswerte des
                        Programmidentifikations-Fensters
 25. uinfo.lrs        - Ressourcendatei des
                        Programmidentifikations-Fensters
 26. ucommit.pas      - Unterprogramm zur Behandlung der
                        Verpflichtungserklrungs-Maske
 27. ucommit.lfm      - Definitionswerte der
                        Verpflichtungserklrungs-Maske
 28. ucommit.lrs      - Ressourcendatei der
                        Verpflichtungserklrungs-Maske
 29. urefresh.pas     - Unterprogramm zur Behandlung des
                        Aktualisierungs-Fensters
 30. urefresh.lfm     - Definitionswerte des Aktualisierungs-Fensters
 31. urefresh.lrs     - Ressourcendatei des Aktualisierungs-Fensters

*:  In den Dateien   I.1, I.6, I.11  und  II.2, II.3, II.13, II.14
    sind vor Verwendung entsprechende Compiler-Parameter zu setzen
    (diese Parameter stehen zunchst so, dass ein Dialogsystem bzw.
     CODING1 ohne Testausgabe unter WINDOWS fr einen INTEL-hnlichen
     Prozessor erzeugt wird).
      Das LAZARUS-System erzeugt immer eine Datei 'Coding.exe', die
    danach gem Compiler-Parameter in den entsprechenden Zielmodulnamen
    umzubenennen ist.
**: Die Parameter in den Dateien   II.1 und II.12
    mssen an die aktuellen Pfadangaben angepasst werden !

III. Batch-Prozeduren (im Verzeichnis "coding-dialog\source")
-------------------------------------------------------------
Jeweils die 1. Zeile in jeder Batch-Prozedur muss zunchst auf das
Dialogprogramm-Verzeichnis umgesetzt werden(fr DOS/Windows PowerShell):
  1. LoadCodE.bat     - Kopiert die Dialogprogramm-Dateien
                        der erweiterten Version ("xx...E.yyy") in
                        die entsprechenden Arbeitsdateien ("xx... .yyy")
  2. SaveCodE.bat     - Sichert die Arbeitsdateien ("xx... .yyy") als
                        Dateien der erweiterten Version ("xx...E.yyy"),
                        nachdem diese zuvor selbst gesichert wurden
                        ("xx...E.yyy.save"), lscht die Arbeitsdateien
  3. LoadCodS.bat     - Kopiert die Dialogprogramm-Dateien
                        der einfachen Version ("xx...S.yyy") in
                        die entsprechenden Arbeitsdateien ("xx... .yyy")
  4. SaveCodS.bat     - Sichert die Arbeitsdateien ("xx... .yyy") als
                        Dateien der einfachen Version ("xx...S.yyy"),
                        nachdem diese zuvor selbst gesichert wurden
                        ("xx...S.yyy.save"), lscht die Arbeitsdateien
  5. ClearCod.bat     - Lscht alle abgeleiteten Dateien,
                        die durch das LAZARUS-System ggf.
                        aus den Quellcode-Dateien generiert wurden
  6. DelCod.bat       - Lscht die Arbeitsdateien ("xx... .yyy") und
                        die ggf. abgeleiteten Dateien
