Comment protéger les tables sans utiliser l'encryptage.

Contenu du snippet

Voici un moyen d'empêcher l'ouverture d'une table soit avec FoxPro ou n'importe quel autre logiciel (Excel, Lotus 123 etc.) L'idée est corrompre la table (inverser l'ordre des cinq premier bytes du fichier) pour qu'elle devienne non lisible, et en roulant le code une deuxième fois, la situation redevient normale et la table peut être ouverte. Tou cela sans encryptage.

Source / Exemple :


CLOSE DATABASES all
lcTable = GETFILE('dbf') && Selectionner une table
lnHnd = Fopen( lcTable, 2 )
If lnHnd > 0
    FSEEK( lnHnd, 5) && Retrouver les 5 premiers bytes
    lcStr = Fread( lnHnd, 5)
    lcNewstr = RIGHT(lcStr,1)
    For i = 4 To 1 Step -1        
        lcNewstr = lcNewstr + SUBSTR(lcstr, i, 1)  && Inverser l'ordre des 5 premiers bytes
    Endfor
    FSEEK( lnHnd, 5)
    Fwrite( lnHnd, lcNewstr ) && Réécrire les cinq premiers bytes
    Fclose(lnHnd) && Fermer le fichier
ELSE
    MESSAGEBOX("Couldn't open table!",16,"Error...")
ENDIF

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.