8
votes

Quelle est la facilité d'inverser le code ingénieur ?NET OVFUSCASED?

Il y a quelques programmes sur le marché que vous pouvez utiliser pour obscurcir votre code .NET, ma question est, à quel point est-ce facile pour quelqu'un d'obtenir votre adresse IP si votre code est "tel appelé" obscurcie.

est obscurcissant le code .NET simplement la sécurité du poulet en caoutchouc? Ou est-il suffisant de protéger vos droits de propriété intellectuelle?


2 commentaires

Vous posez des questions sur la protection technologique ou juridique? Parce que si sa source fermée est fermée, je ne pense pas que vous deviez avoir à obscurcir d'obtenir une protection juridique, même si vous devriez consulter un avocat à ce sujet.


Ce n'est pas spécifique à .NET, BTW.


6 Réponses :


6
votes

Différents Obfuscateurs offrent différents niveaux de protection.

Certains obfuscation de code libres sont assez faciles à craquer si quelqu'un est vraiment déterminé à comprendre ce que fait votre code.

Obfuscation de niveau d'entreprise, d'autre part, peut devenir presque impossible à déchiffrer avec toutes les méthodes d'obfusnation différentes qu'ils utilisent.

... à la fin, cependant, quelqu'un qui veut vraiment vraiment que votre code soit capable de comprendre le temps et la détermination.


3 commentaires

L'obfuscation ne consiste pas à rendre impossible à déchiffrer le code de quelqu'un d'autre - de faire de ce déchiffrement assez difficile que les gens abandonnent.


Si les pirates d'adolescents peuvent casser les systèmes de protections de copie de code non géré comme Photoshop and Bureau, vous pouvez être assez certain que quelqu'un dédié à voler votre IP sera capable de le faire dans une langue gérée comme celle-ci, quelle que soit la quantité d'obfuscation. Vous jetez dans.


@DDavies & @lbushkin - c'est mon point. L'obfuscation n'est en aucun cas le moyen idéal de protéger votre code. Si quelqu'un le veut, ils l'obtiendront.



1
votes

Rien n'est assez bon pour protéger les droits intellectuels. Si quelqu'un vraiment veut inverser votre application, ils peuvent le faire.

Votre meilleur pari est de mettre des déclarations de copyright dans votre code. Obgfuscant aidera un peu cependant, car vous devriez mettre des efforts en ingénierie inverse, ce qui signifie que la plupart des gens ne prennent pas le temps de le faire.

Une autre étape pourrait être de le compiler à JIT.

Si vous créez une API publique, assurez-vous de disposer de superbes commentaires XML sur les méthodes publiques, voire mieux, n'ouchez pas les paramètres :)


0 commentaires

14
votes

Obfuscation est comme une serrure de porte ... Il garde les honnêtes honnêtes honnêtes.


0 commentaires

1
votes

C'est assez facile pour que toute personne déterminée à obtenir votre adresse IP.

En ce qui concerne la "sécurité", la sécurité par l'obscurité n'est que légèrement plus sûre qu'aucune sécurité (qui est en fait plus sécurisée que la sécurité de la mauvaise sécurité).

Ma règle a toujours été: gardez les honnêtes honnêtes. Assurez-vous de disposer de votre propriété intellectuelle légalement protégée contre les demandes de brevet et que vous disposez d'un avocat de préjudice d'utilisation compétente / de CLUF. Utilisez un obfusciateur décent pour empêcher la perfectionnement occasionnel, mais réalisez que ce n'est pas une solution unique.

Malheureusement, si une personne est déterminée à inverser l'ingénieur, votre code peut le faire, et ils le feront.


0 commentaires

8
votes

Cela dépend complètement de l'obfousciateur.

Obfuscation, en général, fait un très bon travail de rendre beaucoup plus difficile d'inverser l'ingénieur - mais cela ne l'empêche aucun moyen. Le CLR aura toujours besoin de déchiffrer l'IL obscurposée, une personne dédiée peut donc toujours faire la même chose.

Cependant, la plupart des licences logicielles et une protection font vraiment deux choses:

  • empêche la surveillance accidentelle
  • empêche les tentatives occasionnelles de contourner la licence

    Obfuscation (combiné à un système de licences approprié) empêche les deux ci-dessus de manière très efficace. Il change une procédure simple à une tâche beaucoup plus compliquée.


2 commentaires

Je pensais que j'essaierais Eauzfuscator.net, il semble bien fonctionner, mais je ne suis pas sûr que c'est facile à craquer ou non.


Il couvre les bases, mais l'obfuscation de niveau d'entreprise fera probablement un meilleur travail. Tout au sujet de vos objectifs, mais parfois, avec des choses comme ça, vous obtenez ce que vous payez - mais souvent, ce que vous payez n'est pas quelque chose dont vous avez besoin. ;)



4
votes

Obfuscation ne devrait jamais être confondu pour la sécurité.

réflecteur .NET le rend assez simple d'inverser le code .NET . Vous ne recevrez peut-être pas de noms assez variables et de paramètres de méthode / méthode, mais toute personne intéressée par l'ingénierie inverse de votre propriété intellectuelle aura suffisamment d'informations pour le faire.

Si vous avez besoin d'une protection stricte de votre propriété intellectuelle, envisagez de prendre des parties critiques de votre code et ne les exposant que sous forme de services Web. Alternativement, envisagez des outils tels que HASP qui ajoutez un niveau de cryptage et anti-débogage / inverse Protection de l'ingénierie à votre produit.

Si aucun de ceux-ci n'est possible ... envisager d'embaucher de bons avocats.


0 commentaires