Protéger une bibliothèque de types

atomefougere Messages postés 32 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 5 décembre 2005 - 16 août 2005 à 13:06
atomefougere Messages postés 32 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 5 décembre 2005 - 20 août 2005 à 19:22
Bonjour tout le monde.

J'ai un problème assez particulier, et j'espère que vous pourrez m'aider. Je vous explique ce que je fais, et ce que j'attends :

1. Je créé une nouvelle bibliothèque ActiveX (New> Others> ActiveX Library)
2. J'y ajoute un nouvel object COM simple (New> Others > COM Object)

J'ajoute un certain nombre de méthodes à mon interface et je les implémente.

Jusque là, tout va bien. Maintenant, j'aimerais protéger la ddl crée. Je veux qu'elle puisse être utilisée par des applications clientes quelconques, mais par contre, je ne veux plus qu'on puisse l'importer en mode développement pour récupérer mon interface (Project> Import Type Libary).

Cette dll est sensée contenir un module de sécurité qui sera partagé entre plusieurs applications clientes. Mais si on la laisse comme ça, n'importe quel petit malin est capable de l'importer dans un ide et de créer une dll héritée de mon interface... En modifiant un peu les méthodes et le registre, il est facile de shunter ma protection.

Donc, savez-vous comment protéger l'accès à une bibliothèque de type en mode développement ? Ca existe avec les fichiers de licence sur les contrôles ActiveX, mais je ne trouve pas l'équivalent pour les bibliothèques simples...

Merci beaucoup d'avance, j'accepte toute remarque ou piste, à défaut de pouvoir trouver une réponse complète :')

1 réponse

atomefougere Messages postés 32 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 5 décembre 2005
20 août 2005 à 19:22
Hum, je me permets de faire un petit up.

J'ai cherché à utiliser le système de licences com, pour protéger ma dll. Je parviens à utiliser un fichier .lic, et à vérouiller l'utilisation de la composante en run time grâce à un fichier clé de ce genre.

Est-ce que quelqu'un aurait une idée pour la protéger en design time ?

Une solution serait peut-être de supprimer les informations de types de la dll, afin que celle ci reste utilisable à l'execution, mais ne puisse plus être importée. Il faudrait fournir le .tlb pour permettre à des développeurs d'implémenter les interfaces qu'elle renferme.

J'y arrive en cpp, grâce à une directive de compilation. J'ai essayé en delphi de retirer la directive {$RES *.TLB}. Lorsque j'inspecte la dll générée, les informations à protéger ont bien disparues. Mais il devient alors impossible d'enregistrer le serveur COM.

J'espère vraiment pouvoir obtenir un peu d'aide, merci.
0
Rejoignez-nous