<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; JS: Некорректная расшифровка файла.]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=9582</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=9582&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «JS: Некорректная расшифровка файла.».]]></description>
		<lastBuildDate>Mon, 12 May 2014 10:08:38 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: JS: Некорректная расшифровка файла.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=82898#p82898</link>
			<description><![CDATA[<div class="quotebox"><cite>YMP пишет:</cite><blockquote><p>Для записи файл создаётся в Юникоде. Так же его надо и открывать при чтении.</p></blockquote></div><p>Огромное спасибо, я об этом не подумал.</p><p>Переписал следующим образом (2-й модуль):</p><div class="codebox"><pre><code>var myfile = fso.OpenTextFile(filepath, 1, false, -1);</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (БыстрыйУж)]]></author>
			<pubDate>Mon, 12 May 2014 10:08:38 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=82898#p82898</guid>
		</item>
		<item>
			<title><![CDATA[Re: JS: Некорректная расшифровка файла.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=82869#p82869</link>
			<description><![CDATA[<p>Для записи файл создаётся в Юникоде. Так же его надо и открывать при чтении.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Sun, 11 May 2014 06:23:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=82869#p82869</guid>
		</item>
		<item>
			<title><![CDATA[JS: Некорректная расшифровка файла.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=82841#p82841</link>
			<description><![CDATA[<p>Доброго времени суток.</p><p>Есть два &quot;hta&quot; модуля, суть работы первого модуля:<br /></p><ul><li><p>в форму вводится пароль</p></li><li><p>шифруется </p></li><li><p>записывается в файл</p></li></ul><p>второй модуль:<br /></p><ul><li><p>читает из файла</p></li><li><p>расшифровывает</p></li><li><p>сравнивает введенный пароль, и если он правильный запускает программу</p></li></ul><p>Проблема: второй модуль считывает не правильно из файла. Например при шифровании пароля первым модулем&nbsp; получилось такая строка в файле:<br /><a href="https://www.dropbox.com/s/fmjoqen62w6mise/ssss.jpg">https://www.dropbox.com/s/fmjoqen62w6mise/ssss.jpg</a> <br />при чтении из файла во втором модуле получается следующие:<br /><a href="https://www.dropbox.com/s/6349gu1yvfubfw4/ssss-2.jpg">https://www.dropbox.com/s/6349gu1yvfubfw4/ssss-2.jpg</a><br />соответственно расшифровка происходит не правильно&nbsp; и даже правильно введенное значение не проходит проверку. </p><p>Если в ручную скопировать значение строки из файла и вставить во второй модуль, то расшифровка получается корректная.</p><p>Код первого модуля:<br /></p><div class="codebox"><pre><code>&lt;html&gt;
&lt;head&gt;
&lt;script language=&quot;JavaScript&quot;&gt;
var winWidth=200;
var winHeight=200;
         window.resizeTo(winWidth, winHeight);
var winPosX=screen.width/2-winWidth/2;
var winPosY=screen.height/2-winHeight/2;
         window.moveTo(winPosX, winPosY);
         &lt;/script&gt;
  &lt;HTA:APPLICATION
  
    contextMenu=&quot;no&quot;&gt;
    &lt;title&gt;pEnc&lt;/title&gt;
&lt;/head&gt;
&lt;style type=&quot;text/css&quot;&gt;
    body {background-color:#AFEFE0;}
&lt;/style&gt;
&lt;script language=&quot;JavaScript&quot;&gt;
function blockEnterOrAltF4() 
        {
         if((event.keyCode == 13)||((event.keyCode == 115)&amp;&amp;(event.altKey==true))||(event.keyCode == 32))
         {event.returnValue=false;}
        }
        
function Encrypt(theText) 
        {
         output = new String;
         Temp = new Array();
         Temp2 = new Array();
         TextSize = theText.length;
         for (i = 0; i &lt; TextSize; i++) 
        {
         rnd = Math.round(Math.random() * 132) + 66;
         Temp[i] = theText.charCodeAt(i) + rnd;
         Temp2[i] = rnd;
        }
         for (i = 0; i &lt; TextSize; i++) 
        {
         output += String.fromCharCode(Temp[i], Temp2[i]);
        }
         return output;
        }    

function open_file(a)   
        {
        if (document.encform.box1.value.length &gt; 7 &amp;&amp; document.encform.box1.value.length &lt; 13)
        {
         var fso, tf;
         fso = new ActiveXObject(&quot;Scripting.FileSystemObject&quot;);
         tf = fso.createTextFile(&quot;psw223.txt&quot;,2, true);
         tf.Write(a);
         tf.Close(); 
         alert(&quot;пароль задан успешно.&quot;)
         self.close();
        }
        else {alert(&quot;Пароль не введен, меньше 8 символов или превышает 12 символов.&quot;); self.close();}
        }       
&lt;/script&gt;
&lt;body onkeydown=&quot;blockEnterOrAltF4()&quot;&gt;
&lt;center&gt;Введите новый пароль.&lt;/center&gt;
    &lt;form name=&quot;encform&quot; onsubmit=&quot;return false;&quot;&gt;
        &lt;center&gt;&lt;input type=&quot;password&quot; name=&quot;box1&quot;&gt;&lt;/center&gt;
        &lt;br&gt;
        &lt;center&gt;
        &lt;input type=&quot;button&quot; value=&quot;шифровать&quot; onclick=&quot;this.form.box2.value = Encrypt(this.form.box1.value);&quot;&gt; 
        &lt;/center&gt;
        &lt;br&gt;
        &lt;center&gt;
        &lt;textarea name=&quot;box2&quot; rows=10 cols=25 style=&quot;display:none;&quot;&gt;&lt;/textarea&gt;
        &lt;/center&gt;
    &lt;/form&gt;
    &lt;form name=&quot;err&quot;&gt;    
        &lt;center&gt;&lt;input type=&quot;button&quot; name=&quot;butt&quot; value=&quot;OK&quot; onclick=&quot;open_file(document.encform.box2.value)&quot;, &quot;&quot;&gt;&lt;/center&gt;
    &lt;/form&gt;
&lt;/body&gt;
&lt;/body&gt;    </code></pre></div><p>Код второго модуля:<br /></p><div class="codebox"><pre><code>&lt;html&gt;
&lt;head&gt;
&lt;script language=&quot;JavaScript&quot;&gt;
    var winWidth=500;
    var winHeight=600;
         window.resizeTo(winWidth, winHeight);
    var winPosX=screen.width/2-winWidth/2;
    var winPosY=screen.height/2-winHeight/2;
         window.moveTo(winPosX, winPosY);
&lt;/script&gt;
  &lt;HTA:APPLICATION
    
    contextMenu=&quot;no&quot;&gt;
    &lt;title&gt;pUenc&lt;/title&gt;
&lt;/head&gt;
&lt;style type=&quot;text/css&quot;&gt;
    body { background-color:#AFEFE0;}
&lt;/style&gt;
&lt;script language=&quot;JavaScript&quot;&gt;


function blockEnterOrAltF4() 
        {
         if((event.keyCode == 13)||((event.keyCode == 115)&amp;&amp;(event.altKey==true))||(event.keyCode == 32))
         {event.returnValue=false;}
        }
    
         var filepath = &quot;psw223.txt&quot;;
         var fso = new ActiveXObject(&quot;Scripting.FileSystemObject&quot;);
         var myfile = fso.OpenTextFile(filepath, 1);
function window.onload() // читаем psw223.txt в textarea
        {
         document.encform.box2.value = myfile.ReadAll();        
         myfile = fso.OpenTextFile(filepath, 1);
         myfile.Close();
        }
        
function unEncrypt(theText) 
        {
         output = new String;
         Temp = new Array();
         Temp2 = new Array();
         TextSize = theText.length;
         for (i = 0; i &lt; TextSize; i++) {
         Temp[i] = theText.charCodeAt(i);
         Temp2[i] = theText.charCodeAt(i + 1);
        }
         for (i = 0; i &lt; TextSize; i = i+2) {
         output += String.fromCharCode(Temp[i] - Temp2[i]);
        }
        return output;
        }

         MyObject = new ActiveXObject(&quot;WScript.Shell&quot;)
function pButton()   
        {
         if (document.fpass.pass_id.value === document.encform1.box3.value) 
         {MyObject.Run(&quot;rcmd.exe&quot;); self.close();} 
         else{alert(&quot;не верный пароль...&quot;); self.close();}
        }
&lt;/script&gt;
&lt;body onkeydown=&quot;blockEnterOrAltF4()&quot;&gt;
&lt;center&gt;
&lt;form name=&quot;encform&quot;&gt;
&lt;textarea name=&quot;box2&quot; rows=10 cols=25 style=&quot;display:none;&quot;&gt;&lt;/textarea&gt;
&lt;/form&gt;
&lt;form name=&quot;encform1&quot; onsubmit=&quot;return false;&quot;&gt;
&lt;textarea name=&quot;box3&quot; rows=10 cols=25 style=&quot;display:none;&quot;&gt;&lt;/textarea&gt;
&lt;input type=&quot;button&quot; value=&quot;Расшифровать&quot; onclick=&quot;this.form.box3.value = unEncrypt(document.encform.box2.value);&quot;&gt;
&lt;/form&gt;

  &lt;form name=&quot;fpass&quot;&gt;
    &lt;center&gt;&lt;b&gt;введите текущий пароль&lt;/b&gt;&lt;/center&gt;
    &lt;input type=&quot;password&quot; id=&quot;pass_id&quot; maxlength=&quot;12&quot; size=&quot;18&quot; /&gt;
    &lt;input type=&quot;button&quot; onclick=&quot;pButton()&quot; value=&quot;OK&quot; /&gt;
  &lt;/form&gt;
  &lt;/body&gt;
&lt;/html&gt;
&lt;/body&gt;    </code></pre></div><p>Подскажите как сделать правильно.</p>]]></description>
			<author><![CDATA[null@example.com (БыстрыйУж)]]></author>
			<pubDate>Sat, 10 May 2014 11:25:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=82841#p82841</guid>
		</item>
	</channel>
</rss>
