Protection VBA efficace
#1
Débutant XLPages

Inscription: 11/03/2010

Messages: 18

Système d'exploitation:
PC
Version Excel utilisée:
2003-2007-2010
Posté le : 03-05-2010 13h28
Bonjour

Je cherche à protéger efficacement mon code VBA.
Par "efficacement" j'entends que des outils comme Acyd ne puissent pas le casser.
Quelles est la procédure à suivre ?

Par avance merci.

Y++
Hors Ligne
Rapport   Haut 

Re: Protection VBA efficace
#2
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 03-05-2010 14h41
Bonjour Yaka,

Il n'y a pas moyen, tout simplement.
Les projets VBA se déverrouillent en deux coups de cuiller à pot avec ou sans Acyd, c'est ainsi et largement documenté.

Si tu veux du code incassable faudrait voir du côté des XLL (écrites en C) ou des compléments COM codés en VB6.

Cordialement,

Guy



Hors Ligne
Rapport   Haut 

Re: Protection VBA efficace
#3
Débutant XLPages

Inscription: 11/03/2010

Messages: 18

Système d'exploitation:
PC
Version Excel utilisée:
2003-2007-2010
Posté le : 03-05-2010 16h54
Bonjour et merci Guy.

Cependant, avec Acyd, il m'est arrivé de vouloir casser la protection de certains classeurs Excel pour pouvoir y lire le code.
Résultats >> plantages d'Excel qui m'ont obligé alors à fermer l'appli sans pouvoir accéder au code "tant désiré"...

C'est ce type de protection que j'aimerai pouvoir faire (à minima).
Hors Ligne
Rapport   Haut 

Re: Protection VBA efficace
#4
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 03-05-2010 17h58
Bonjour Yaka,

La première question à poser est : Le code que tu veux protéger est-il si lumineux voire exceptionnel pour mériter tant de remue-méninges?

En général, et sans préjuger de tes talents de codeur, la réponse est Non!

Aussi, tu peux imiter Acyd en codant à l'aveuglante comme suit :

Option Explicit
'! ©Thierry Pourtier, mai 02 - mai 2006 : xlti@wanadoo.fr
'! http://www.veriti.net
'! version 1.9
Private WithEvents pppppppppppp As Image
Dim ppppppppppppp%
Property Set pppppppppppppp(ppppppppppppppp As Image)
Set pppppppppppp = ppppppppppppppp
End Property
Private Sub pppppppppppp_MouseDown(ByVal pppppppppppppppp%, ByVal dddddddddddddddddddddddd%, ByVal ppppppppppppppppp!, ByVal pppppppppppppppppp!)
With pppppppppppp
ppppppppppppp = .SpecialEffect
.SpecialEffect = fmSpecialEffectSunken
End With
End Sub
Private Sub pppppppppppp_MouseUp(ByVal pppppppppppppppp%, ByVal dddddddddddddddddddddddd%, ByVal ppppppppppppppppp!, ByVal pppppppppppppppppp!)
pppppppppppp.SpecialEffect = ppppppppppppp
End Sub
 
Mais cela exige la tenue simultanée de la version en clair et de la version aveuglée. Même dans ce cas bien des petits malins arrivent à s'y dépatouiller (je ne nommerai personne mais suivez mon regard).

Donc, à minima, tu peux parcourir la toile au grand complet et t'abreuver de l'expérience qui y est archivée.
Il n'y a pas encore de remèdes contre le cancer et pas non plus de moyens de coder en VBA pour soi tout seul.
C'est comme ça.

Comme je te l'ai suggéré plus haut si tu veux quelque chose de plus sécurisé il faudra te rabattre sur du codage en C avec des XLL par exemple.

Désolé du peu mais très cordialement,

Guy


Hors Ligne
Rapport   Haut 

Re: Protection VBA efficace
#5
Débutant XLPages

Inscription: 11/03/2010

Messages: 18

Système d'exploitation:
PC
Version Excel utilisée:
2003-2007-2010
Posté le : 04-05-2010 09h45
Bonjour
Of course... mon code n'a rien de lumineux mais, comme il s'agit d'une application d'entreprise, j'aurai voulu le mettre à l'abri de toute modification qui pourrait l'altérer.

Comme je n'ai pas le temps de développer mes compétences dans les autres langages que tu précises je vais donc en rester là à défaut de trouver une la solution VBA adéquate.

Encore merci pour tes éclairages


Hors Ligne
Rapport   Haut 

Re: Protection VBA efficace
#6
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 04-05-2010 17h07
Bonjour Yaka,

Alors un simple petit mot de passe pour protéger un tant soit peu le code devrai suffire et si d'aventure quelqu'un y jette un oeil quand même, y'aura qu'à lui donner ses huit jours ou son quatre pour cent

Aussi pense à poser ce fil à résolu


Cordialement,

Guy

Hors Ligne
Rapport   Haut 

Re: Protection VBA efficace
#7
Débutant XLPages

Inscription: 11/03/2010

Messages: 18

Système d'exploitation:
PC
Version Excel utilisée:
2003-2007-2010
Posté le : 06-05-2010 11h05
OK vu.

Merci et à +
Hors Ligne
Rapport   Haut 

Re: Protection VBA efficace
#8
Débutant XLPages

Inscription: 01/08/2016
De FRANCE

Messages: 2

Système d'exploitation:
PC
Version Excel utilisée:
2010
Posté le : 01-08-2016 11h44

Bonjour à tous,

 

J'ai une solution pour protéger efficacement le code VBA Excel.

Il s'agit d'un fichier Excel pour l’obfuscation des macros VBA

1-    Définition de l’obfuscation
En programmation informatique, on appelle obfuscation les techniques mises en œuvre pour transformer le code source afin de le rendre illisible pour un être humain après une forme de compilation, tout en le conservant entièrement opérationnel. L'objectif est de protéger les droits de propriété sur une application informatique en empêchant la reconstitution ou la transformation d'un code source compréhensible à partir du code d’origine.
Synonyme d’obfuscation : brouillage


2-    Description du classeur Excel nommé : JO-OBfuscator
JO-OBfuscator est un classeur Excel permettant de protéger le code source VBA d’une macro Excel en le rendant quasiment illisible. Pour ce faire, cet outil effectue un cryptage du nom des variables, transforme les chaînes de caractères et supprime les commentaires ainsi que l’indentation des lignes de code. Toutes ces opérations rendent le code source de la macro quasiment illisible.

De plus JO-OBfuscator sauvegarde le code source initial dans un fichier au format texte (.txt) ainsi que le code source après obfuscation dans un fichier séparé (.txt). Il dresse également la liste des variables cryptées et des chaînes de caractères transformées.

Ainsi toutes les macros sont archivées avec leurs noms dans des fichiers séparés (macros initiales et macros traitées). Cet archivage peut être utile, par exemple, pour retrouver facilement une macro que l’on souhaite utiliser dans un autre projet VBA Excel.

 

3- Téléchargement du fichier Excel et du mode d'emploi :

 

http://www.joseouin.fr/logiciels/logiciel-jo-obfuscator

 

Bonne journée à tous.

CCMJoe

 

Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes