1.12.2 [1.12.2] Changer l'extension d'un fichier .JAR



  • Salut à tous ! 🙂

    Je reviens vers vous car j'aimerais modifier l'extension d'un fichier .JAR en .Forge (par exemple), un serveur utilise cette technique pour protéger ses mods et je trouve que c'est une très bonne idée 🙂

    Bien évidemment, ce n'est pas pour re-copier les mods du serveur mais comme je vais créer plusieurs mods pour mon serveur j'aimerais bien les protéger pour pas que des personnes s'amusent à copier/coller mon travail (ahah)

    Autre chose, le serveur en question possède "Optifine" mais avec sa propre extension, est-ce qu'ils ont le droit de faire ça? Vu que optifine est protégé par des droits? Peut-être que je me trompe..

    Merci à vous ! 🙂


  • Moddeurs confirmés Rédacteurs Administrateurs

    Bonjour,

    Je reviens vers vous car j'aimerais modifier l'extension d'un fichier .JAR en .Forge (par exemple), un serveur utilise cette technique pour protéger ses mods et je trouve que c'est une très bonne idée 🙂

    Facile -> tu affiches les extensions dans les options de fichier de l'explorateur de fichier puis tu renommes le fichier.
    Mais changer l'extension ne servira absolument à rien et tu protégera de rien du tout.
    Ce qu'il faut faire c'est changer le code de changement des mods de forge et changer le format des mods (par exemple en les chiffrant).

    Autre chose, le serveur en question possède "Optifine" mais avec sa propre extension, est-ce qu'ils ont le droit de faire ça? Vu que optifine est protégé par des droits? Peut-être que je me trompe..

    Non. La redistribution d'optifine est interdite, donc à partir du moment où tu redistribues optifine (dans sa version ou pire dans une version modifiée) tu t'exposes à des risques de poursuite judiciaire.



  • @robin4002 a dit dans [1.12.2] Changer l'extension d'un fichier .JAR :

    nsions dans les options de fichier de l'explorateur de fichier

    Oui mais quand tu changes une extension le fichier devient inutilisable non? J'ai essayé d'ouvrir Optifine (avec leur extension) avec WinRaR et ça m'affiche que le fichier est endommagé 😕

    Après si je le met directement dans mes mods peut-être que ça peut fonctionner je vais tester 🙂

    En ce qui concerne optifine c'est bien ce qui me semblait

    Merci Robin 🙂


  • Moddeurs confirmés Rédacteurs Administrateurs

    Oui mais quand tu changes une extension le fichier devient inutilisable non? J'ai essayé d'ouvrir Optifine (avec leur extension) avec WinRaR et ça m'affiche que le fichier est endommagé 😕

    Non. Si tu ne peux pas l'ouvrir ils ont fait plus que changer l'extension.

    Si joins deux fichiers.
    TheSpotlightMod-1.2.0.101-mc1.12.2-universal.txt
    TheSpotlightMod-1.2.0.101-mc1.12.2-universal.jar

    Le premier c'est un .jar dont j'ai changé l'extension en .txt.
    Par défaut Windows proposera de l'ouvrir avec le bloc note, ça ne fonctionnera pas. Mais tu peux parfaitement l'ouvrir avec winrar ou 7zip.
    Le deuxième, est bien un fichier .jar mais tu ne pourras pas l'ouvrir : j'ai ajouté du texte, mff au début du fichier, il faut donc se débarrasser des 3 premiers octets pour retrouver un fichier lisible. (un caractère = un octet, on peut le voir sur la taille des fichiers, le .jar modifié fait exactement 3 octets de plus que le vrai fichier).

    027ce6de-15dc-4f71-adef-8087d37faede-image.png



  • Ah d'accord ! c'est beaucoup plus clair 🙂

    Par contre comment tu as fait pour rajouter les 3 octects ? "mff" et comment tu as fait pour les supprimer?


  • Moddeurs confirmés Rédacteurs Administrateurs

    Je les ai ajouté avec la commande cat.
    cat mff.txt TheSpotlightMod-1.2.0.101-mc1.12.2-universal.txt > TheSpotlightMod-1.2.0.101-mc1.12.2-universal.jar
    mff.txt étant un fichier texte contenant mff.
    C'est une commande qui sert à concaténer (ou afficher par défaut le contenu dans la console).

    C'était juste pour l'exemple, pas vraiment utilisable pour un cas concret (et ça ne protège pas de grand-chose).



  • Donc, en sois tu propose quoi pour protéger son mod, pour qu'il soit impossible à ouvrir et pouvoir récupérer le code ?


  • Moddeurs confirmés Rédacteurs Administrateurs

    Protéger totalement le mod c'est impossible, hormis en ne le distribuant pas.

    La meilleure protection qui peut techniquement être mis en place c'est de chiffrer le mod (soit en symétrique avec l'AES, soit en asymétrique avec du RSA, ce qui empêchera d'autres personnes de chiffrer un mod, mais sera plus long) puis de modifier forge / faire une bibliothèque qui ajoute dans le classpath les mods déchiffrés.
    Donc cette bibliothèque / ce mod devra forcément inclure la clé de déchiffrement (quelqu'un d'assez malin pourra la récupérer) il faut donc la cacher au maximum : offusquer le code de la lib voir passer par un module JNI pour la cacher dans du code natif (plus compliqué à décompiler).

    Avec une telle solution je pense que tu te débarrasses de 99,99% des gens qui pourrait tenter de modifier ou reprendre le mod.



  • Je me permet de relancer ce sujet désolé si je n’avais pas le droit

    Effectivement j’ai trouvé, ils ont simplement modifié le lanceur Forge dans la classe « CoreModManager » (1.7.10), le .jar a été remplacé par leur .Extension tout simplement

    Mais ça n’existe plus dans les versions récentes si je ne me trompe pas j’ai pas vraiment fouiller, par contre comment ont-ils fait pour modifier les sources de forge ? 🙄


  • Moddeurs confirmés Rédacteurs Administrateurs

    @FR_Style13 a dit dans [1.12.2] Changer l'extension d'un fichier .JAR :

    par contre comment ont-ils fait pour modifier les sources de forge ? 🙄

    En forkant le projet de forge, tout simplement : https://github.com/MinecraftForge/MinecraftForge
    N'importe qui peut les modifier ...



  • Ah oui effectivement, merci Robin ! 😁


Log in to reply