Added lot of junk laying around on harvie.cz
[mirrors/Programs.git] / php / skripty / xor_enc.php
diff --git a/php/skripty/xor_enc.php b/php/skripty/xor_enc.php
new file mode 100644 (file)
index 0000000..f7cc160
--- /dev/null
@@ -0,0 +1,84 @@
+<?php\r
+\r
+function bin_trim ($bin) {\r
+\r
+  $x = (8 - strlen($bin));\r
+  $y = "";\r
+  while($x) {\r
+   $y = ($y."0");\r
+   $x--;\r
+  }\r
+  return($y.$bin);\r
+  \r
+}\r
+\r
+function xor_bytes ($bina, $binb) {\r
+  $bin = "";\r
+  $x = 8;\r
+  while($x) {\r
+    if ($bina[$x-1] XOR $binb[$x-1])\r
+      { $bin = ( 1 . $bin ); } else { $bin = ( 0 . $bin ); }\r
+    $x--;\r
+  }\r
+  return $bin;\r
+}\r
+\r
+//CODE/////////////////////////////////////////////////////\r
+\r
+$message = "POKUS CISLO JEDNA DVA TRI";\r
+$message = ")-#&O&$6(.:E/-:H&#&*H--$.";\r
+$message = "message MESSAGE toto je pokus 545446653\9aèøèø\9eøýá ahoj";\r
+//$message = "%-\e\14) -g&\ 2\11\10\12\ 23N\1f%\1d\15Z\8b\98\17F\97\83\9d\8eÍÜ\ 4\fÝA×CÔI{¼ªÝÌÛ̸Õe\e\89\15\93";\r
+$message = implode("", file("cypher.txt"));\r
+$code = "HHhgHGHGkGBCSEvnkJizzáý76øèèýíé09éuáuázáTR54E4E4Ezázùdlmkdsfh-";\r
+\r
+//print "Pocet parametru: " . $argc . "\n";\r
+//foreach($argv as $param)\r
+//    print $param . "\n";\r
+\r
+//if($argc != 3) { die("Usage: xor.php secretcode in.txt > out.txt\n"); }\r
+\r
+//echo($argv[0]."\n");\r
+//$code = $argv[1];\r
+//$message = implode("", file($argv[2]));\r
+$message = "&.(\fh\1c(-fKH-)!F\ 5\r
+g%«ÍH$\ 6,7\r
+Y";\r
+$code = "gfgFHJghGjhghjfVHGhjGhjGvvXfgdTGfHgHfgFhfVBGcftDtFzdfdgfgf6ztFzF";\r
+\r
+\r
+\r
+//Message to bin array:\r
+$i = 0;\r
+$message_bin = "";\r
+while($i < strlen($message)) {\r
+  $message_bin = ($message_bin . bin_trim(base_convert(ord($message[$i]),10,2)). "\n " );\r
+  $i++;\r
+}\r
+//echo ($message_bin."\n\n"); //Debug\r
+\r
+$message_bin = explode(" ",$message_bin);\r
+\r
+//Encode:\r
+$i = 0;\r
+$y = 0;\r
+while ($i < strlen($message)) {\r
+\r
+  $char = $message_bin[$i];\r
+  $cchar = bin_trim( base_convert( ord($code[$y]), 10, 2) );\r
+  \r
+  //echo($code[$y]); //Debug\r
+  //echo($cchar."\n"); //Debug\r
+  //echo($char); //Debug\r
+  \r
+  $message[$i] = chr( base_convert(xor_bytes($char, $cchar),2,10 ));\r
+  \r
+  $y++;\r
+  if ($y >= strlen($code)) { $y = 0; }\r
+  $i++;\r
+  \r
+}\r
+\r
+echo($message);\r
+\r
+?>\r
This page took 0.174823 seconds and 4 git commands to generate.