Die Festplatte gesichert

Dieses GFA-BASIC-Programm sorgt dafür, daß niemand, der nicht den Code kennt, Ihre Festplatte verwenden kann. Eine falsche Codeworteingabe führt zu einer Endlosschleife. Der Bildschirm bleibt schwarz! Das Codewort kann leicht geändert und mit einem variablen Codeschlüssel codiert werden. So ist es unmöglich, durch einfaches Nachschauen im Programmcode herauszufinden, wie es heißt.

Der Text, der nach dem Codewort fragt, ist einfach zu ändern. Selbst die X- und Y-Koordinaten, an denen dieser Text auf dem Bildschirm erscheint, sind beliebig einstellbar. Nach einer Fehleingabe erscheint eine entsprechende Meldung. Nach dreimaliger Fehleingabe ist endgültig Schluß!

Jedoch ist die Voraussetzung für die sinnvolle Verwendung dieses Programms die Fähigkeit des Harddisktreibers, Programme im Ordner “C:\AUTO\” selbsttätig zu starten. Die SH 205 von ATARI kann das, ebenso die Vortex-Platte. Manch anderer Hersteller läßt hier bisweilen aber sehr zu wünschen übrig!

Das Programm besteht aus zwei Teilen:

WRTPAR.BAS schreibt die Parameter-Datei “C:\AUTO\PARAMETR” auf die Platte. Sie enthält die 6 Variablen X, Y, Text$, Code, Code_key und Message$ für das Codewort und die Textanzeige auf dem Bildschirm. Dieser Programmteil ist kurz gehalten, d.h. er hat kein komfortables Menü, da das Codewort nicht ständig geändert wird. Die einzelnen Parameter werden im Quellcode näher erläutert.

LOGIN.PRG enthält die Codewortabfrage unter Verwendung der Datei “C:\AUTO\PARAMETR”. Auch hier erklärt sich das Listing durch die Kommentare selbst. Das Programm wird auf der Festplatte im AUTO-Ordner der Partition “C:\” installiert. Und zwar möglichst als erstes Programm, das nach dem Laden des Festplattentreibers gestartet wird. Dazu kopiert man erst alle im AUTO-Ordner vorhandenen Dateien mit der Extension “.PRG” heraus, dann zuerst LOGIN.PRG hinein und nun alle anderen “.PRG” wieder dazu. Jetzt wird LOGIN. PRG vor den anderen Programmen gestartet.

' Programmname: LOGIN.BAS Datum: 20.05.88
' Version 1.0 Autor: Oliver Meißel
'
Open "I",#1,"C:\AUTO\PARAMETR" !Parameter-Datei laden.
Input #1,X,Y,Text$,Code,Code_key,Message$
Close #1
Code$=Mkl$(Code-58*Code_key)!LOG-IN entschlüsseln. 
Setcolor 0,0 !Hintergrundfarbe = schwarz
Tex=Int(Len(Text$)/2)
If X=100 !Wenn X=100: Text zentrieren
    X=40-Tex 
Endif
If Y=100 !Wenn Y=100: Text in Bildschirmmitte
    Y=12 
Endif
Print At(X,Y);Text$ !Textzeile auf Bildschirm bringen.
Nochmal:
Log_in$=""
For 1=1 To 4 !4 Zeichen von Tastatur einlesen.
    Char=Inp(2)
    Log_in$=Log_in$+Chr$(Char)
    Print At(X+Tex-3+I,Y+2);"."
Next I
If Log_in$<>Code$ !Wenn falsches LOG-IN, nochmalige Eingabe
    Inc Count
    Print At(X+Tex-Int(Len(Message$)/2),Y+4);Message$ 
    If Count<3 
        Pause 50
        Print At(X+Tex-Int(Len(Message$)/2),Y+4);String$((Len(Message$))," ")
        Print At(X+Tex-2,Y+2);"    "
        Goto Nochmal 
    Endif
    Do !Nach 3x Fehleingabe -> Endlosschleife 
    Loop 
Endif
Setcolor 0,1 !Hintergrundfarbe = Weiss
Edit !Wenn richtiges LOG-IN: Programm beenden

Listing LOGIN.BAS

' Programmname:  WRT_PAR.BAS Datum: 20.05.88
' Version     :  1.0         Autor: Oliver Meißel
'
Log_in$="4566" !Hier LOG-IN eintragen (max. 4 Stellen)!
Code_key=1965  !Hier dreistellige Zahl für Verschlüsselung des LOG-INs angeben! 
Code=Cvl(Log_in$)+58*Code_key  !LOG-IN verschlüss. 
Open "O",#1,"C:\AUTO\PARAMETR" !Parameter-Datei schreiben.
Write #1,100,100,"Bitte LOG-IN eingeben:",Code,Code_key,"Falsches Codewort!"
'
'
'
' X:    X-Koordinate des Textes auf dem Bildschirm
'       X=100 -> Text wird horizontal zentriert 
' Y:    Y-Koordinate des Textes auf dem Bildschirm
'       Y=21,22,23 -> Verschiedene nützliche Effekte, bedingt durch das 
'       automatische Scrolling!
'       Y=100 -> Text wird vertikal zentriert 
' Text: Text auf dem Bildschirm (z.B.: 'LOG-IN ?') .
' Code: Verschlüsseltes LOG-IN (max. 4 Stellen)
' Codeschlüssel: Maximal vierstellige Zahl zum Verschlüsseln des LOG-INs.
' Meldung: Meldung, wenn falsches Codewort eingegeben wird.
' (z.B. Good bye Hacker!)
Close #1 
Edit

Listing WRT_PAR.BAS


Oliver Meißel
Aus: ST-Computer 02 / 1989, Seite 89

Links

Copyright-Bestimmungen: siehe Über diese Seite