Da das Aufkommen von ASP (aktive Serverseiten) ein starkes Anwendungssystem erstellen kann, das die Plattform einfach zu pflegen ist und keine Rolle spielt, wurde die ASP -Technologie immer mehr von Netzwerkprogrammierern geliebt. ASP ist jedoch nur ein Nichtverbesserungstyp, eine auf der Serverseite ausgeführte Skriptsprache.
SP -Bewerbungen werden nicht illegal kopiert. Für Administratoren mit hoher Autorität können Sie das ASP -Programm problemlos vom Server auf andere nicht autorisierte Websites kopieren. Dies bringt einige Schwierigkeiten bei der Kommerzialisierung von ASP -Anwendungen. Wie man entwickelte ASP -Programme effektiv schützt, basierend auf der Zufälligkeit, die durch die Seriennummer der Festplatte erzeugt wird, kombiniert mit dem von Microsoft bereitgestellten offiziellen ASP -Skript -Verschlüsselungsprogramm, das von Microsoft bereitgestellt wurde, löste dieses Problem offiziell.
Die als Festplatten -ID bezeichnete Disk -Seriennummer ist eine Datenträgeridentifizierungsinformation, die beim Formatieren der Festplatte generiert wird. Zwei Formate derselben Maschine, um eine Seriennummer des festen Formats zufällig zu erzeugen, sind fast Null. Wechseln Sie von Windows9.x zu MS-DOS und geben Sie den Befehl "DIR" zurück. Einige Software, die für einen bestimmten Zeitraum verwendet wird, müssen nach Verfügbarkeit eine neue autorisierte Seriennummer (Verwendung der Genehmigung) online beantragen. Ein beträchtlicher Teil dieser autorisierten Sequenznummer verwendet eine Bindungszeit der statischen Festplattensequenznummer. Nach der Installation kann das Programm nicht verwendet werden, wenn das Programm illegal in die nichtinitielle Installationsumgebung kopiert wird.
Die oben genannten Gedanken sind in der Programmiersprache von VC, VB und Deliphi leicht zu erreichen. VBScript ist als starke und sichere Benutzersprache durch das Client -System begrenzt. Daher verwendet dieser Artikel VBScript und kombiniert ASP erbaut -in -Komponenten -Dateisystem, um die oben genannten Ideen zu erreichen. Die folgenden Verfahren werden entsprechend der spezifischen Situation leicht geändert, die auf das tatsächliche ASP -Anwendungssystem angewendet werden können.
Als Beispiel für die Erläuterung verwendet dieser Artikel den Sicherheitsmechanismus für Zugriffsdatenbank. Um die Ausarbeitung zu erleichtern, erstellen wir zunächst eine Zugriffsdatenbank -ID.MDB (Kennwort "KXJ") und eine DriveInfo -Tabelle intern.
ID (automatische Nummer);
Serno (Text, 12, Seriennummer (10 -in));
Wrimark (Nummer, 1, Logo schreiben).
veranschaulichen
Der Wrimark -Wert beträgt 0, bedeutet, dass der Rechtsbenutzer das System nicht installiert hat und der Wert 1 ist, was die Installation des Systems darstellt. Wenn der Wert 1 ist und die Seriennummer nicht mit der aktuellen Festplatte übereinstimmt, wird festgestellt, dass er illegale Kopierbenutzer ist.
Bei der Initialisierung definieren Sie zunächst einen neuen Datensatz, der Anfangswert jedes Feldes beträgt 1.12345678,0.
In demselben Verzeichnis beispielsweise unter c:/interpub/wwwroot die Homepage default.asp, legal User Homepage Succials.asp, illegale Installation Benutzeraufforderung Seite fail.htm und id.mdb Seriennummer Speicherbibliothek.
Der Schreibbetrieb jeder ASP -Datei lautet wie folgt:
1. Verwenden Sie FrontPage (oder Notepad), um eine neue ASP -Datei default.asp zu erstellen und den folgenden Programmcode einzugeben:
<html>
<kopf>
<title> Beispiel </title>
</Head>
<% Dim Conn, FS, F.
Setzen Sie conn = server.createObject ("adodb.Connection").
conn.open "treiber = {microsoft Access triver (*.mdb)}; uid =; pwd = kxj; dbq =" & server.mappath ("id.mdb")
Setzen Sie fs = server.createObject ("scripting.FilesSystemObject").
testDrive = server.MAppath ("/DriveInfo.asp"))
'' Erhalten Sie die aktuelle Festplattenbildung mit Mappath
testDrive = links (testDrive, 3)
Setzen Sie F = fs.getDrive (testDrive)
'' Rufen Sie die GetDrive -Methode an und geben Sie dem Laufwerk eine Variable an
Mysql = "Select * aus DriveInfo wobei ID = 1"
Setzen Sie rscheck = server.createObject
rscheck.open mysql, conn, 1,1
Fser = trim (f.serialNumber)
'' Holen Sie sich die aktuelle Datenträger -Seriennummer
StrSerno = Trim (rsscheck.fields ("serno"))
Strmark = rscheck.fields ("" Wrimark ")
Wenn Strserno <> fser und strmark = 0 dann
'' Wenn es zum ersten Mal installiert ist, ist das Schreiblogo 1
Sitzung ("Pass") = true
'' Definieren Sie die Benutzersitzung und platzierte sie als globale ASP -Dokument -Identifikationsvariable
Setzen Sie rsmain = server.createObject ("adodb.recordset").
MySQL1 = "Aktualisieren Sie DriveInfo serno =" & fser & ", Wrimark = 1"
rsmain.open mysql1, conn, 1,2
response.write ("<" <"<" <"
Erfolgreich!
rsmain setzen = nichts
anders
Wenn Strserno = fser dann
'' Wenn der rechtliche Benutzer erneut eintritt
Sitzung ("Pass") = true
Antwort.Write ("<" << href = '' Erfolg.asp ''> Sie sind vom Website -Manager autorisiert.
anders
'' Illegaler Kopierbenutzer
Sitzung ("Pass") = falsch
Response.write ("<" <"<" <"<" <"<", 'fail.htm' '> Es ist illegal, das ASP -Dokument der Website zu kopieren.
Ende wenn
Ende wenn
response.write ("<br>")
Antwort.Write ("Volumen -Seriennummer im Laufwerk" und testDrive)
Antwort.Write (F.SerialNumber)