Bonjour,

Je ne connais rien au JavaScript. Est-ce que ceci est une programme dangereux :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
function decrypt_p(x)
{
   var l=x.length,b=1024,i,j,r,p=0,s=0,w=0,
   t=Array(63,43,56,4,25,10,36,24,32,31,0,0,0,0,0,0,9,28,
              34,41,40,62,19,53,46,47,18,0,8,50,51,54,20,52,49,44,26,
              1,39,23,42,14,57,0,0,0,0,37,0,13,3,33,60,61,30,11,48,15,
              58,59,17,16,45,35,29,7,2,55,6,21,5,12,27,22,38);
   for(j=Math.ceil(l/b);j>0;j--)
   {
      r='';
      for(i=Math.min(l,b);i>0;i--,l--)
      {
         w|=(t[x.charCodeAt(p++)-48])<<s;
         if(s)
         {
            r+=String.fromCharCode(165^w&255);
            w>>=8;s-=2
         }
         else
         {
            s=6
         }
       }
       document.write(r)
   }
}
 
decrypt_p ("vXSM5WnG3JLc")
(Je vais quand même tenter une transcription en C, pour voir...)

Plus de peur que de mal. Visiblement, ça se contente d'écrire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
 ooops!!!
Press ENTER to continue.
(en C : )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
 
#define min(a, b) (((a) > (b)) ? (b) : (a))
 
void decrypt_p (char const *x)
{
   int l = strlen (x), b = 1024, i, j, p = 0, s = 0, w = 0, t[] =
   {
   63, 43, 56, 4, 25, 10, 36, 24, 32, 31, 0, 0, 0, 0, 0, 0, 9, 28,
         34, 41, 40, 62, 19, 53, 46, 47, 18, 0, 8, 50, 51, 54, 20, 52, 49,
         44, 26, 1, 39, 23, 42, 14, 57, 0, 0, 0, 0, 37, 0, 13, 3, 33, 60,
         61, 30, 11, 48, 15, 58, 59, 17, 16, 45, 35, 29, 7, 2, 55, 6, 21,
         5, 12, 27, 22, 38};
   char r[1024] = "";
   int n = 0;
 
   for (j = ceil ((double)l / b); j > 0; j--)
   {
      for (i = min (l, b); i > 0; i--, l--)
      {
         w |= (t[x[p] - 48]) << s;
         p++;
         if (s)
         {
 
            n += sprintf (r + n, "%c", (165 ^ w) & 255);
            w >>= 8;
            s -= 2;
         }
         else
         {
            s = 6;
         }
      }
      printf ("%s", r);
   }
}
 
int main (void)
{
   decrypt_p ("vXSM5WnG3JLc");
 
   return 0;
}
Merci,

Emmanuel