Question

C'est en ce qui concerne SafeNet/Aladdin Sentinel HASP clés.J'ai posté sur leur site, mais juste au cas où quelqu'un d'autre connaît la réponse ou se trouve la réponse utile je poste ici aussi.

Selon la documentation fournie par SafeNet dans "la Protection des Logiciels et des Licences Guid.pdf", nous sommes censés garder notre Vendeur Code secret, non?

Eh bien, si je créer l'exemple fourni dans le répertoire "\Samples untime\c#\", puis de protéger l'application de l'Enveloppe, puis décompiler le Enveloppés application de JetBrains dotPeek, je peux voir le Code du Fournisseur de la chaîne il y a très facilement.Il semble que l'Enveloppe de ne pas occulter const cordes.Ou c'est peut-être le niveau de la classe de cordes, je ne sais pas.

Est-ce la méthode recommandée pour utiliser le Code du Fournisseur?Il ne semble pas très secret.Si j'ai mis le Code du Fournisseur de la chaîne dans une variable temporaire dans une fonction, puis il est obscurci.C'est que la façon dont il devrait être fait?Si oui, ne faut-il pas l'exemple de code refléter le fait que?

Merci.

Était-ce utile?

La solution

Nous avions remarqué la même chose.La raison const les chaînes ne sont pas obscurcis est probablement dû au fait qu'une variable const est un compiler constante de temps, qui permet au compilateur de remplacer les références à un const variable avec la valeur de la constante elle-même au moment de la compilation.Donc, il n'y a pratiquement pas de const champ de type chaîne pour obscurcir par le temps, l'enveloppant processus commence.(Ce n'est pas tout à fait vrai - la définition de la const est conservée dans l'IL, mais seulement à des fins de documentation;il n'est pas référencé par un code.)

La façon dont nous avons traité ce est en utilisant static readonly cordes, initialisé dans un static constructeur.Ce faisant les magasins de la chaîne de valeurs des constantes d'exécution, permettant l'enveloppe processus pour accéder correctement à masquer la réalité.(Ceci est vérifié par la décompilation l'assemblée, comme vous l'avez mentionné.)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top