
Selon les statistiques de l'étude
2018 BSA Global Software Survey :
- Les logiciels non piratés (piratés) représentent 37% de la quantité totale de logiciels installés sur des ordinateurs personnels dans le monde.
- Le coût des logiciels contrefaits est estimé à 46 milliards de dollars.
- Les logiciels malveillants, qui infectent de nombreux programmes piratés téléchargés à partir de sources tierces, coûtent aux entreprises 359 milliards de dollars par an.
- Les pertes dues au piratage de logiciels sous licence s'élèvent à environ 600 milliards de dollars par an.
Nous savons tous que parmi les utilisateurs, il y a ceux qui achètent honnêtement le programme et l'utilisent aux fins prévues, et il y a ceux qui piratent le logiciel d'une manière ou d'une autre et travaillent avec lui-même ou le vendent.
Skillbox recommande: un cours pratique de deux ans, "Je suis un développeur Web PRO . "
Nous vous rappelons: pour tous les lecteurs de «Habr» - une remise de 10 000 roubles lors de l'inscription à un cours Skillbox en utilisant le code promo «Habr».
Les développeurs de logiciels qui créent des produits payants ne voudront probablement pas passer plusieurs années de leur vie sur un programme qu'ils pirateront et utiliseront gratuitement. Les pertes de réputation peuvent également devenir un problème: par exemple, lors du téléchargement de logiciels piratés d'une certaine entreprise qui infecte le PC d'un utilisateur avec un virus introduit par un attaquant, la victime blâmera probablement le fabricant et non le pirate.
En ce qui concerne les revenus, selon BSA, une entreprise qui décide de prendre au sérieux la protection de ses produits logiciels peut s'attendre à augmenter ses bénéfices d'environ 11% (cependant, il est important de comprendre qu'il s'agit d'une valeur moyenne).
Mais que peut-on faire pour protéger votre logiciel?
Il existe de nombreuses solutions différentes pour l'octroi de licences et la protection des logiciels. Avant d'en choisir un pour vous, il vaut la peine de répondre à plusieurs questions importantes.
Tout d'abord, vous devez décider du niveau de protection dont votre projet particulier peut avoir besoin. Ne tirez pas avec un canon sur des moineaux, le choix doit être adéquat. De nombreux développeurs font ici une erreur en utilisant une protection plus puissante (et coûteuse) que ce dont ils ont vraiment besoin.
Deuxièmement, vous devez vous demander combien vous êtes prêt à dépenser pour la défense. La réponse peut être compliquée, donc, pour faire le bon choix, il vaut la peine d'analyser ce dont vous pourriez avoir besoin.
Ensuite, lorsque vous décidez de tout, vous pouvez commencer à choisir la protection en fonction de la stratégie d'utilisation du produit logiciel.
Principales fonctions de sécuritéTout commence par le choix du principe de la licence: vous devez choisir comment ils paieront votre produit. Il existe de nombreuses variétés, en général, elles peuvent être divisées en quatre types:
- Paiement unique. Ils paient pour votre logiciel une fois, après quoi ils peuvent l'utiliser pour une durée illimitée.
- Limitations fonctionnelles. Des fonctionnalités supplémentaires que l'utilisateur peut ouvrir à un coût supplémentaire.
- Licence temporaire. Vous "louez l'application", c'est-à-dire qu'il s'agit d'un abonnement.
- En couches. C'est une combinaison de ces méthodes. L'utilisateur reçoit une version Silver, Gold ou Platinum du logiciel avec le paiement approprié.
Une fois que vous avez décidé d'une stratégie de licence, il est temps de commencer à chercher des technologies de protection logicielle. Et ici, il convient de rappeler des nuances telles que la possibilité de connecter un logiciel à Internet, sa spécialisation, le type de plate-forme auquel le logiciel est destiné, etc.
Nous soulignons une fois de plus l'importance de choisir une protection adéquate. Si vous voulez protéger votre vélo avec la méthode utilisée à Fort Knox, cela peut difficilement être qualifié de raisonnable. Il y a une relation inverse: si vous voulez protéger Fort Knox, n'utilisez pas de verrou de vélo pour cela, c'est inutile, le piratage est garanti. En général, la stratégie d'octroi de licences doit être proportionnelle au prix du produit lui-même.
Types de protection
Comme mentionné ci-dessus, il existe différentes options pour protéger les logiciels contre le piratage et la copie. Ces options peuvent varier en termes de coût, de niveau de protection et de spécialisation.
Faites confiance à la protection. Ici, vous comptez sur le fait que les utilisateurs paieront sans aucun problème. Un utilisateur - une licence, éternelle. En principe, il n'y a pratiquement aucun frais de votre part. Une fois l'application compilée, vous pouvez commencer à la distribuer. Mais le problème est que si votre produit devient populaire, alors quelqu'un le craquera certainement, après avoir commencé à le distribuer. Dans ce cas, il n'y a pas de protection contre le piratage, c'est zéro.
Protection logicielle hors ligneIl s'agit d'une protection sans connexion Internet. En règle générale, un tel schéma est implémenté immédiatement après la compilation du programme. Le shell le plus couramment utilisé avec certains paramètres. Un programme protégé n'est pas connecté pour la vérification d'intégrité à des serveurs externes. En principe, vous pouvez contourner cette protection sans aucun problème.
Protection des logiciels en ligneIci, nous parlons d'une méthode plus sérieuse - vérifier la licence à l'aide du serveur de licences. Dans ce cas, des coûts relativement élevés au début et des coûts récurrents plus tard sont nécessaires. Comme dans la version précédente, le shell est utilisé, mais les paramètres de licence sont vérifiés et configurés en ligne.
Si vous le souhaitez, vous pouvez ajouter des options de vérification du logiciel: comment est-il utilisé, existe-t-il une licence ou non. Si vous avez besoin d'une connexion permanente au réseau, le produit ne fonctionnera pas toujours et pas partout.
La gravité d'une telle protection est comprise entre moyenne et élevée.
Protection matérielleL'une des méthodes les plus fiables qui combine les avantages de toutes les autres stratégies. La licence est la responsabilité d'une clé USB électronique qui ne nécessite pas de connexion réseau. Le prix de chaque clé pour le développeur est faible, il n'y a pas de frais supplémentaires périodiques. Vous pouvez l'implémenter à la fois à l'aide de l'API et via le shell.
L'avantage de cette méthode est que la licence peut être supprimée en dehors du système d'exploitation, la clé est stockée en dehors du PC. La clé est soit très difficile, soit impossible à copier du tout. Un logiciel protégé par une clé matérielle peut être utilisé sur des systèmes où il n'y a pas de connexion réseau. Cela, par exemple, les installations gouvernementales ou l'industrie. Un autre avantage est que la clé électronique ne nécessite pas de solutions différentes pour différents environnements logiciels, et les options de licence sont très flexibles.
Les solutions basées sur une clé matérielle peuvent être déployées en quelques minutes, elles sont prises en charge par presque toutes les versions de systèmes d'exploitation.
Cependant, n'oubliez pas que le fournisseur de solutions (si vous ne pouvez pas créer la clé matérielle vous-même) doit tout faire rapidement pour qu'il ne soit pas nécessaire d'attendre un envoi de clés et, en conséquence, de reporter le début de la vente de votre logiciel. De plus, le fournisseur doit fournir une solution simple et efficace rapidement déployée. Bien sûr, vous devez faire confiance au fournisseur - sinon vous ne devriez pas utiliser ses services.
Il vaut la peine de penser à la protection des logiciels au stade de la conception: après qu'un projet soit partiellement ou entièrement prêt, changer quelque chose ne sera pas facile.
Skillbox recommande: