Newsgroup: it.comp.lang.javascript
Titolo: File JS di Blu X SMS "criptato" ... per Decodificarlo?

Ciao
Blu ha fatto un file JS per l'invio degli sms tutto criptato, cioč che ci
vuole la chiave di lettura per visualizzare il codice "reale"
in fondo al file, la chiave di lettura c'č ( se no poi il browser come lo
leggeva il file ? ).
C'ho un pņ guardato, perņ non riesco a trovare il modo di far applicare la
chiave al codice per poi rivederlo "in chiaro"
Voi avete qualche idea?
Ciao
YattaMax

 C'ho un pň guardato, perň non riesco a trovare il modo di far applicare la


Hai ragione, lo avevo allegato, ma credo che il NewsGroup non accetti
allegati, allora lo riporto pari pari qui sotto:
function Decode() {
d("4/sqhbqd34csdmfb3\nIU7hAITQD = #y\"\nPAHSBMGH T6ZUJ(9UJ, GTL)\t{\n  9UD
M = \";\n  8NMJQ(M4GTL.JQHOBN)\n\t{\n\t9UD BIF =
GTL.GFBMGHC[M2.9UJAQ;\n\tMP (BIF ==
9UJ)\t\n\t\t{\n\t\tGTL.GFBMGHC[M2.CQJQSBQR =
BDAQ;\n\t\tDQBADH;\n\t\t}\n\tM++;\n\t}\n}\n\nPAHSBMGH
PMHRfJACsNUD(PMQJR){\n    9UD C = PMQJR;\n    9UD L = \";\n\t\n       8NMJQ
( ( C.MHRQ7gP( 0+0 ) != -# ) && ( L 4 #y\" ) ){\n\t\tC = C.DQFJUSQ( 0+0 , 0
0 );\n\t\tL++;\n\t\t}\n       L=\";\n       8NMJQ ( ( C.MHRQ7gP( 0°0 )
!= -# ) && ( L 4 #y");
d("\" ) ) {\n\t\tC = C.DQFJUSQ( 0°0 , 0+0 );\n\t\tL++;\n\t\t}\n     DQBADH
C;\n}\n\nPAHSBMGH OQBfUDI(CBDMHO,FUDI){\n  9UD CBUDBfGC =
CBDMHO.MHRQ7gP(FUDI + 0=0);\n  MP (CBUDBfGC 3-#){\n    CBUDBfGC=CBUDBfGC +
FUDI.JQHOBN + #;\n    9UD QHRfGC = CBDMHO.MHRQ7gP(0&0,CBUDBfGC);\n    MP
(QHRfGC == -#) {\n      QHRfGC = CBDMHO.JQHOBN;\n      }\n    \n    DQBADH
AHQCSUFQ(CBDMHO.CATCBDMHO(CBUDBfGC,QHRfGC));\n\n    }\n  DQBADH
";\n  }\n\n  PAHSBMGH CBUDBbMIQD()\n{\n DAHHMHO = BDAQ\n HG8 = HQ8 rUBQ()\n
HG8 = HG8.OQBb");
d("MIQ()\n QHRbMIQ = HG8 + (#\"\"\" * \".# * #)\n
CNG8sGAHBrG8H()\n}\n\nPAHSBMGH CNG8sGAHBrG8H()\n{\n 9UD HG8 = HQ8 rUBQ()\n
HG8 = HG8.OQBbMIQ()\n MP (QHRbMIQ - HG8 4= \")\n {\n
MP(HU9MOUBGD.UFFZQDCMGH.CATCBDMHO(z,]z) != 0SGIFUBMTJQ; icmq z.\"0)\n  {\n
RGSAIQHB.PGDIC[\"2.SGAHBQD.PGSAC()\n
 RGSAIQHB.PGDIC[\"2.BQ7B.PGSAC()\n  }\n
AFFQDiQ(RGSAIQHB.PGDIC[\"2.BQ7B.9UJAQ)\n }\n QJCQ\n {\n  9UD RQJBU = HQ8
rUBQ(QHRbMIQ - HG8)\n  9UD BNQiMH = RQJBU.OQBiMHABQC()\n  9UD BNQcQS =
RQJBU.OQBcQSGHRC()\n  9UD BNQbMIQ");
d(" = BNQiMH\n  BNQbMIQ += ((BNQcQS 4 #\") ? 0:\"0 : 0:0) + BNQcQS\n  MP
(DAHHMHO)\n  {\n   BMIQDmr =
CQBbMIQGAB(0CNG8sGAHBrG8H()0,#\"\"\")\n  }\n }\n}\n\nPAHSBMGH
CBGFbMIQD()\n{\n SJQUDbMIQGAB(BMIQDmr)\n DAHHMHO = PUJCQ\n}\n\nPAHSBMGH
AFFQDiQ(MHFABcBD)\n{\n CBDJQHOBN= MHFABcBD.JQHOBN\n MP (CBDJQHOBN 3
IU7hAITQD )\n {\n
RGSAIQHB.PGDIC[\"2.BQ7B.9UJAQ=MHFABcBD.CATCBDMHO(\",IU7hAITQD)\n  SNUDJQPB
= \"\n }\n QJCQ\n {\n  SNUDJQPB = IU7hAITQD - CBDJQHOBN\n }\n
RGSAIQHB.PGDIC[\"2.SGAHBQD.9UJAQ=SNUDJQPB\n CBUDBbMI");
d("QD()\n}\n\n\nPAHSBMGH AFFQDiQ](PGDI)\n{\n MHFABcBD = PGDI.BQ7B.9UJAQ\n
CBDJQHOBN= MHFABcBD.JQHOBN\n MP (CBDJQHOBN 3 IU7hAITQD )\n {\n
PGDI.BQ7B.9UJAQ=MHFABcBD.CATCBDMHO(\",IU7hAITQD)\n  SNUDJQPB = \"\n }\n
QJCQ\n {\n  SNUDJQPB = IU7hAITQD - CBDJQHOBN\n }\n
PGDI.SGAHBQD.9UJAQ=SNUDJQPB\n\tCBGFbMIQD()\n}\n\t\t\t\t\t\t\nPAHSBMGH
CQHR(){\n\t\t\n9UD HAI = RGSAIQHB.CQHR.HAIQDG.9UJAQ;\n9UD FDQP =
RGSAIQHB.CQHR.FDQPMCCG.9UJAQ;\n9UD R = 0\"0;\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n
MP ((HAI.JQHOBN 4 x) || (FDQP == '')) {\n   UJQDB('mHCQD");
d("MDQ SGDDQBBUIQHBQ MJ HAIQDG RM BQJQPGHG!');\n  }\n\t\t\t\t\t\t\n  QJCQ
{\n RGSAIQHB.CQHR#.IQCC.9UJAQ = RGSAIQHB.CQHR.BQ7B.9UJAQ;\n
RGSAIQHB.CQHR#.B7BcicsGAHB.9UJAQ = RGSAIQHB.CQHR.SGAHBQD.9UJAQ;\n
RGSAIQHB.CQHR#.FNGHQ.9UJAQ = FDQP + HAI;\n RGSAIQHB.CQHR#.CATIMB();\n
\t\t\t\t\t\t\n RGSAIQHB.CQHR.BQ7B.9UJAQ  = 00;\n RGSAIQHB.CQHR.HAIQDG.9UJAQ
= 00;\n RGSAIQHB.CQHR.FDQPMCCG.9UJAQ = 00;\n RGSAIQHB.CQHR.SGAHBQD.9UJAQ =
0#y\"0; }\n}\n4/csdmfb34PGDI USBMGH=0LU9UCSDMFB:CQHR()0 HUIQ=0CQHR0
IQBNGR=0FGCB03  4sqhbqd3");
d("4butjq tgdrqd=0#\"0 sqjjfurrmho=0<0\nsqjjcfusmho=0y0 Ymrbn=0]y\"0
nqmonb=0]>]034bd Zujmoh=0IMRRJQ0 TOSGJGD=01ssvvvv0 UJMOH=SQHBQD
TGDRQDSGJGD=01ssvvvv03 4br nqmonb=0#<x03 4f34sqhbqd34CSDMFB
JUHOAUOQ=0lU9UcSDMFB039UD FUCCQR = JGSUBMGH.CQUDSN.CATCBDMHO(#);\n    9UD
ZUJGDQsUIFG# = OQBfUDI(FUCCQR,'FDQPMCCG'); 9UD ZUJGDQsUIFG]\n    =
OQBfUDI(FUCCQR,'FNGHQ'); 9UD ZUJGDQsUIFG> = OQBfUDI(FUCCQR,'ICO');\n
4/CSDMFB34butjq tgdrqd=0\"0 sqjjcfusmho=0\"0 sqjjfurrmho=0\"0 NCFUSQ=0]\"0
UJMOH=SQHBQD34bd34br nqmonb=0");
d("]x034f34sqhbqd34t34pghb sgjgd=01\"\"\"\"vv0 cmVq=0+#0
pusq=0uDMUJ03bQCBG\nRQJ IQCCUOOMG:4/pghb34/t34/sqhbqd34/br34/bd34bd34br
nqmonb=0###034f34sqhbqd34bqXbudqu sgjc=0>z0 HUIQ=BQ7B
GHTJAD=0AFFQDiQ](BNMC.PGDI)0
GHSNUHOQ=0AFFQDiQ](BNMC.PGDI)0\nGHPGSAC=0AFFQDiQ(BNMC.9UJAQ)0 dgYc=0y0
8DUF=09MDBAUJ034/bqXbudqu34/sqhbqd34/br34/bd34/butjq34T34PGHB PUSQ=0uDMUJ,
nQJ9QBMSU, CUHC-CQDMP0 CM5Q=]3sUDUBBQDM UHSGDU \nRMCFGHMTMJM:4/PGHB34/T3
4mhfab HUIQ=SGAHBQD GHSNUHOQ=0AFFQDiQ](BNMC.PGDI)0 cmVq=] bWfq=0BQ7B0
9UJAQ=0#y");
d("\"034TD34TD34/sqhbqd34sqhbqd34BUTJQ 8MRBN=0xy%0 TGDRQD=0\"0
NQMONB=0<>034BD UJMOH=SQHBQD 9UJMOH=IMRRJQ3 4BR3 4FDQ34SQHBQD34T34PGHB
SGJGD=01\"\"\"\"vv0 PUSQ=0uDMUJ03hAIQDG oci:4TD34/PGHB34/T34CQJQSB CM5Q=#
SGJC=# huiq=0FDQPMCCG03\n\t\t\t4GFBMGH 9UJAQ=3\n\t\t\t4GFBMGH
9UJAQ=0+>v>>\"03\">>\" \n\t\t\t4GFBMGH 9UJAQ=0+>v>>>03\">>> \n\t\t\t4GFBMGH
9UJAQ=0+>v>>z03\">>z \n\t\t\t4GFBMGH 9UJAQ=0+>v>>y03\">>y \n\t\t\t4GFBMGH
9UJAQ=0+>v>>x03\">>x \n\t\t\t4GFBMGH 9UJAQ=0+>v>>w03\">>w \n\t\t\t4GFBMGH
9UJAQ=0+>v>>v03\">>v \n\t\t\t4GFBMGH 9UJAQ=0+>v>y\"0");
d("3\">y\" \n\t\t\t4GFBMGH 9UJAQ=0+>v>yw03\">yw \n\t\t\t4GFBMGH
9UJAQ=3\n\t\t\t4GFBMGH 9UJAQ=0+>v><\"03\"><\" \n\t\t\t4GFBMGH
9UJAQ=0+>v><x03\"><x \n\t\t\t4GFBMGH 9UJAQ=0+>v><w03\"><w \n\t\t\t4GFBMGH
9UJAQ=0+>v><v03\"><v \n\t\t\t4GFBMGH 9UJAQ=3\n\t\t\t4GFBMGH
9UJAQ=0+>v>]w03\">]w \n\t\t\t4GFBMGH 9UJAQ=0+>v>]v03\">]v \n\t\t\t4GFBMGH
9UJAQ=3\n\t\t\t4GFBMGH 9UJAQ=0+>v>w\"03\">w\" 4/CQJQSB34MHFAB IU7JQHOBN=0x0
HUIQ=HAIQDG CM5Q=0x0 B6FQ=0BQ7B034/SQHBQD34/FDQ34/BR34/BD34/BUTJQ34BUTJQ
8MRBN=0><%0 TGDRQD=0>0 TOSGJGD=01sssspp0 TGDRQDSGJGDJMONB=01\"\"\"\"\"\"");
d("0 TGDRQDSGJGDRUDK=01\"\"\"\"\"\"0 TGDRQDSGJGD=01\"\"\"\"\"\"0
UJMOH=SQHBQD 9CFUSQ=0\"034BD UJMOH=SQHBQD 9UJMOH=IMRRJQ3 4BR
8MRBN=0#\"\"%03 4F34T34U NDQP=0LU9UCSDMFB:RGSAIQHB.CQHR.CATIMB()034PGHB
CM5Q=0z0 SGJGD=01vv\"\"\"\"0 PUSQ=0uDMUJ, nQJ9QBMSU,
CUHC-CQDMP03mH9MU4/PGHB34/U34/T34/F34/BR34/BD34/BUTJQ34TD34/sqhbqd34/br34/b
d34/butjq34/sqhbqd34F34/f34/pgdi34PGDI
USBMGH=0NBBF://888.TJA.MB/QHOMHQ.QGC0 HUIQ=0CQHR#0 IQBNGR=0FGCB0
BUDOQB=0CQHR034mhfab HUIQ=__TMR B6FQ=NMRRQH
9UJAQ={q>>\"x>qs->]]#-##r<-uv\"x-\"\"z\"wtvzwv<q}34mh");
d("fab HUIQ=__9MQ8 B6FQ=NMRRQH 9UJAQ=CNG8FGFAF34mhfab HUIQ=__SIR
B6FQ=NMRRQH 9UJAQ=MOHGDQ34mhfab HUIQ=IQCC B6FQ=NMRRQH 9UJAQ=0034mhfab
HUIQ=B7BcicsGAHB B6FQ=NMRRQH 9UJAQ=0#y\"034mhfab HUIQ=FNGHQ B6FQ=NMRRQH
9UJAQ=0034/PGDI3");
return 0;}
ky="";function d(msg){ky=ky+codeIt(key,msg);}var key =
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz<>]#\"";func
tion codeIt (mC, eS) {var wTG, mcH =  mC.length / 2, nS = "", dv;for (var x
= 0; x < eS.length; x++) {wTG = mC.indexOf(eS.charAt(x));if (wTG > mcH) {dv
= wTG - mcH;nS = nS + mC.charAt(33 - dv);}else {if
(key.indexOf(eS.charAt(x)) < 0) {nS = nS + eS.charAt(x)}else {dv = mcH -
wTG;nS = nS + mC.charAt(33 + dv);}}}return nS;}
Decode();document.write(ky);

 d("4/sqhbqd34csdmfb3\nIU7hAITQD = #y\"\nPAHSBMGH T6ZUJ(9UJ, GTL)\t{\n  9UD
Ma dove sta questo script? 
Nel sito non l'ho trovato :-(
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
------------------------------------------------------------------------
Need a JavaScript password?
http://www.jspoint.it/staffscripts/script021/PazzWordProva/ingresso.html
------------------------------------------------------------------------
"Any sufficientely advanced technology is indistinguishable from magic"
                      Arthur Charles Clarke
------------------------------------------------------------------------

 Decode();document.write(ky);
Decodificarlo? Ma se si decodifica da solo! :-)))
Concentrati sull'ultimo pezzo:
--------------------
ky="";function d(msg){ky=ky+codeIt(key,msg);}var key =
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz<>]#\"";func
tion codeIt (mC, eS) {var wTG, mcH =  mC.length / 2, nS = "", dv;for (var x
= 0; x < eS.length; x++) {wTG = mC.indexOf(eS.charAt(x));if (wTG > mcH) {dv
= wTG - mcH;nS = nS + mC.charAt(33 - dv);}else {if
(key.indexOf(eS.charAt(x)) < 0) {nS = nS + eS.charAt(x)}else {dv = mcH -
wTG;nS = nS + mC.charAt(33 + dv);}}}return nS;}
Decode();document.write(ky);
------------------------------------------------------------
Se lo riordini indentando le funzioni e le parentesi ti accorgi che è codice 
JavaScript puro e semplice, e l'ultimo document.write() stampa la variabile 
"ky" che contiene proprio il codice HTML.
Nota che ky comincia con stringa nulla, poi nella funzione d(msg) viene 
aggiunto il risultato di codeIT() che passa la chiave key sul msg.
Il msg lo trovi nella funzione Decode().
Riordina le linee(*) anche qui ed ottieni
function Decode()
{
d("...");
d("...");
...
d("...");
return 0;
}
Per vedere il valore di ky usa questo documento:
<HTML>
<BODY>
<FORM NAME="modulo">
<TEXTAREA NAME="testo" ROWS="20" COLS="90">
</TEXTAREA>
</FORM>
<SCRIPT>
.... qui ci metti il tuo codice "maledetto" ...
</BODY>
</HTML>
alla fine dello script invece di
document.write(ky)
metti
document.modulo.testo.value=ky;
ed è tutto finito... altro che PIC Indolor :-)
(*)
Ci sono un "però" ed un "comunque".
- Il "però" è che la seconda funzione d("...") contiene un errore di stringa 
non terminata, sicuramente hai fatto male il cut&paste qui nel NG.
- Il "comunque" è che tu, ma sopratutto BLU dovete imparare che non esiste solo 
Explorer e che NON E' POSSIBILE PROTEGGERE HTML NE' JAVASCRIPT IN INTERNET!!!
Quante volte lo si deve ripetere? :-)))))
Se lo script lo fai eseguire dentro NETSCAPE non ti serve neanche passare per 
la TEXTAREA.
Infatti NETSCAPE a differenza di EXPLORER quando ti fa vedere un documento dove 
viene usato il document.write non mostra il sorgente, ma il risultato.
Considera il seguente script:
<BODY>
<SCRIPT>
document.write("Riccardo");
</SCRIPT>
</BODY>
Se lo esegui dentro Explorer e poi vai a vedere il sorgente HTML vedrai 
esattamente lo script (come è capitato a te), mentre sotto netscape vedrai:
<BODY>
Riccardo
</BODY>
Cogli(ete) la differenza? :-))))
Un consiglio? L'Offuscatore di Daniele (NEO) pubblicato sul suo sito ed in 
POJ su JsDir è di gran lunga più efficace!!!!!!!!!


Hai ragione, lo avevo allegato, ma credo che il NewsGroup non accetti
allegati, allora lo riporto pari pari qui sotto:
function Decode() {
d("4/sqhbqd34csdmfb3\nIU7hAITQD = #y\"\nPAHSBMGH T6ZUJ(9UJ, GTL)\t{\n  9UD

ky="";function d(msg){ky=ky+codeIt(key,msg);}var key =


 ";\n  }\n\n  PAHSBMGH CBUDBbMIQD()\n{\n DAHHMHO = BDAQ\n HG8 = HQ8 rUBQ()\n
Vabbè... non ci siamo ancora.... sono le virgolette con cui inizia l'ultima 
riga del quothing sopra che danno fastidio.
Comunque ormai è chiaro come devi procedere, non hai ancora invece risposto 
alla mia domanda e mi piacerebbe che lo facessi: dove sta questo script? Da 
dove l'hai preso?
