Hacker News new | ask | show | jobs
by letmevoteplease 1241 days ago
I just tested it on a little snippet of my code obfuscated with https://obfuscator.io/ and it worked almost perfectly.

My original code:

  function resizeImage(img) {
   var maxHeight = 350;
   var ratio = 1;
   if(img.height > maxHeight) {
    ratio = maxHeight / img.height;
   } 
   
   var width = img.width * ratio
   var height = img.height * ratio;
   
   var canvas = document.createElement('canvas');
   canvas.height = height;
   canvas.width = width;
   var ctx = canvas.getContext('2d');
   ctx.drawImage(img, 0, 0, width, height);
   return canvas.toDataURL("image/jpeg", 0.8);
  }
ChatGPT's answer: https://i.imgur.com/5jgPMEd.png
2 comments

Interesting why it changes 350px to 600px.

Also interesting is how it's explanation of the deobfuscated code, although broadly correct in terms of goal, doesn't accurately describe the steps. Almost as if it's disregarding the code altogether and merely describing another implementation of "resizeImage".

Interesting, I tried it on the sample code at https://obfuscator.io, which was just:

    function hi() {
      console.log("Hello World!");
    }
    hi();
ChatGPT was unable to deobfuscate. Here's the answer: https://i.imgur.com/20XhPw6.png