Crypter code source

Le problème exposé dans ce sujet a été résolu.

Bonjour ! :)

J'ai découvert le Lua et Love2D avant hier, et je doit avouer que j'aime beaucoup !

Cependant, je me suis rendu compte en créant le .exe que, si on l'ouvrais avec 7Zip (ou Winrar ou Winzip), il y avait à l'intérieur le code source.

Ceci est assez embêtant si, par exemple, je souhaite vendre mon jeu et donc, ne pas publier le code source (bon, c'est un exemple :p ).

J'ai pu voir sur le net que l'on peut crypter le code source avec Luac. Cependant, j'ai essayé avec la commande (en utilisant LoveDist) :

1
lovedist input output -c

Mon code est bien crypter. Mais j'ai deux problèmes :

  1. Lorsque je lance output.love, j'ai une erreur m'indiquant que le "bytecode est incompatible" (un truc dans le genre). Impossible donc de lancer le jeu avec un code crypté.
  2. J'ai pu lire sur le net qu'il était possible de décrypter le code avec luadec. Donc à quoi cela sert de le crypter, si il y à un moyen extrêmement simple de le décrypter ?

Merci ! :)

+0 -1

Luac n'est pas quelque chose pour chiffrer le code source mais c'est un compilateur qui transforme ton code en un bytecode pour des questions de performances. Tout comme tu compiles ton code pour exécuter du Java par exemple ou du C. À l'inverse, tout code compilé peut être décompilé mais tu n'auras pas le code que tu as codé pour autant (les commentaires ont disparu, de nombreux pans de fonctions peuvent être différents que ce que tu as fait, etc.).

+0 -0

Merci à vous deux pour vos réponses ! :)

Le bytecode Lua n'est pas portable de 32 à 64 bits, ton luac devait être en 32 et ton jeu en 64 ou l'inverse et donc ça ne marche pas.

Ah. Le problème c'est que je n'arrive pas à trouver luac en 64 bits… :(

Tu n'as pas chiffré ton code, tu l'as juste compilé en bytecode Lua, donc c'est réversible ;

Ca veut donc dire qu'il y à un moyen de le crypter à la place de le compiler (ce qui serais donc irréversible) ?

Dans ce cas, comment puis-je faire ?

Merci encore pour vos réponses ! :)

+0 -0

En fait tu recherche une solution à un problème insoluble. Même d'un langage compilé comme le C il est possible de revenir en arrière. Il y a des techniques d'offuscation mais techniquement quelqu'un qui le veut vraiment pourra toujours.

Avec un langage interpréter comme lua, c'est encore pire car à un moment donné il y aura forcément le bytecode en mémoire.

Dans tous les cas avoir les sources n'empêche pas forcement de vendre un jeux mais si j'étais toi, je commencerai par coder le jeu entièrement avant de te poser ces questions. Faire un jeu vendable est suffisamment compliqué pour que ces pseudos question de sécurité ne se posent que quand tu l'aura terminé.

Hello,

Ton problème me rappelle ceux auxquels sont confrontés les personnes qui développent des cheats pour les jeux et qui veulent les diffuser à des tiers sans se les faire piquer et en échange de rémunération.

Bien sûr je ne dis pas que c'est ton cas, mais outre le fait de confondre "crypter" et "chiffrer", ton message m'a fait sourire. :)

Il faut savoir que les protections que tu mettras en place pour noircir ton code et le rendre incompréhensible ne seront là que pour ralentir la personne qui voudra se l'approprier. Il suffit que tu tombes sur quelqu'un d'assez fou, qui n'a que ça à faire, et ta protection n'aura pas été suffisamment efficace.

Et crois-moi, il existe des gens suffisament acharnés pour faire ce genre de chose.

Mon conseil personnel si tu n'as pas peur d'apprendre : intéresse-toi au format PE (qui structure les binaires Windows quelqu'ils soient) et crée ton propre obfuscateur. C'est super formateur.

A+ :)

+2 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte