Форум программистов, компьютерный форум, киберфорум
Наши страницы
Objective-C
Войти
Регистрация
Восстановить пароль
 
Computershik
3 / 3 / 4
Регистрация: 03.08.2015
Сообщений: 111
#1

Дешифровка ссылки (перевести с PHP на Object C) - Objective-C

30.01.2018, 14:05. Просмотров 671. Ответов 3

Здравствуйте! Шарю в PHP, но поставил себе задачу перевести одну вещицу на Object C
PHP
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
define('VK_ID', intval($argv[1]));
function decode($str){
  $vals = explode("#", explode("?extra=", $str)[1]);
  $tstr = vk_o($vals[0]);
  $ops = vk_o($vals[1]);
  $ops_arr = explode(chr(9), $ops);
  $len = sizeof($ops_arr);
  for($i = $len - 1; $i >= 0; $i--){
    $args_arr = explode(chr(11), $ops_arr[$i]);
    $op_ind = array_shift($args_arr);
    switch($op_ind){
      case "v": $tstr = vk_v($tstr); break;
      case "r": $tstr = vk_r($tstr, $args_arr[0]); break;
      case "x": $tstr = vk_x($tstr, $args_arr[0]); break;
      case "s": $tstr = vk_s($tstr, $args_arr[0]); break;
      case "i": $tstr = vk_i($tstr, $args_arr[0]); break;
    }
  }
  return $tstr;
}
$vk_str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMN0PQRSTUVWXYZO123456789+/=";
function vk_o($str){
  global $vk_str;
  $len = strlen($str);
  $result = "";
  for($s = 0, $index2 = 0; $s < $len; $s++){
    $sym_index = strpos($vk_str, $str[$s]);
    if($sym_index !== false){
      $i = (($index2 % 4) !== 0) ? ( ($i<<6) + $sym_index) : $sym_index;
      if(($index2%4) != 0){
        $index2++;
        $shift = -2 * $index2 & 6;
        $result .= chr(0xFF & ($i >> $shift));
      } else {
        $index2++;
      }
    }
  }
  return $result;
}
function vk_s($str, $start){
  $len = strlen($str);
  if($len > 0){
    $cur = abs($start);
    $shuffle_pos = array();
    for($i = $len - 1; $i >= 0; $i--){
      $cur = (($len * ($i + 1)) ^ $cur + $i) % $len;
      $shuffle_pos[$i] = $cur;
    }
    for($i = 1; $i < $len; $i++){
      $offset = $shuffle_pos[$len - $i - 1];
      $prev = $str[$i];
      $str[$i] = $str[$offset];
      $str[$offset] = $prev;
    }
  }
  return $str;
}
function vk_i($str, $i){
  return vk_s($str, $i ^ VK_ID);
}
function vk_v($str){
  return strrev($str);
}
function vk_r($str, $i){
  global $vk_str;
  $vk_str2 = $vk_str . $vk_str;
  $vk_str2_len = strlen($vk_str2);
  $len = strlen($str);
  $result = "";
  for($s = 0; $s < $len; $s++){
    $index = strpos($vk_str2, $str[$s]);
    if($index !== false){
      $offset = ($index - $i);
      if($offset < 0){
        $offset += $vk_str2_len;
      }
      $result .= $vk_str2[$offset];
    } else {
      $result .= $str[$s];
    }
  }
  return $result;
}
function vk_x($str, $i){
  $xor_val = ord($i[0]);
  $str_len = strlen($str);
  $result = "";
  for($i = 0; $i < $str_len; $i++){
    $result .= chr(ord($str[$i]) ^ $xor_val);
  }
  return $result;
}
Есть два способа -
1) Читать полгода литературу по языку, который не является моим основным. (жалкие оправдания моей лени тщательно учить новый язык и нехватки времени)
2) Обратиться за помощью к гуру Киберфорума.

Как видите, мне нужно дешифровать ссылку на аудио ВК. Код на PHP уже есть.
Прошу помочь!

Среда разработки - XCode 7.2.1

На входе есть строка с зашифрованным URL, нужно, чтобы получить расшифрованную ссылку можно было, натравив полученную функцию на исходную.

Переведите, кому не лень, пожалуйста.

Добавлено через 17 часов 4 минуты
И разумеется игнор
http://www.cyberforum.ru/php-beginners/thread972009.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.01.2018, 14:05
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Дешифровка ссылки (перевести с PHP на Object C) (Objective-C):

Mod_rewrite, Как изменить вид ссылки типа index.php?cat=php
ссылка получается вот такая: ...

PHP Editor for Object Model
работаю с объектной моделью по непонятному мне шаблону проектирования, но...

Uncaught TypeError: Object [object Object] has no method
Всем привет. Я новичок в этой сфере. у меня возникла ошибка в консоли при...

что выбрать php, Object Pascal,c++
Здравствуйте. можете помощь у меня проблема, я написала программу на php...

Fatal error: Call to a member function query() on a non-object in db.php on line 23
Все привет. Я только учусь делать сайты с помщью ООП и паттерна mvc. Вот мой...

3
Computershik
3 / 3 / 4
Регистрация: 03.08.2015
Сообщений: 111
07.02.2018, 20:01  [ТС] #2
игнор...
зато по-любому уже украли вышеприведенный код и наштамповали сайтов
0
Computershik
3 / 3 / 4
Регистрация: 03.08.2015
Сообщений: 111
11.02.2018, 20:40  [ТС] #3
Играем в молчанку дальше
0
mid150
29 / 30 / 17
Регистрация: 02.04.2016
Сообщений: 98
13.04.2018, 07:27 #4
Computershik, вы бы комментариев в код добавили, может помог бы кто, а то ещё и в phpшном коде разбираться не каждый захочет.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.04.2018, 07:27
Привет! Вот еще темы с решениями:

Объясните что он хочет- PHP Fatal error: Call to a member function get() on a non-object
Добрый день помогите, устанавливаю модуль multimerch_7.7.4 для opencart, сайт...

Fatal error: Call to a member function on a non-object in C:inetlocalhostwww estpearuser.php on line 57
Поймал такой глюк. Fatal error: Call to a member function on a non-object in...

Ссылки в php
Привет народ! Такой вопрос... Делаю сайт на php и у меня проблема со ссылками,...

PHP ссылки
Здравствуйте, не могу понять следующий кусок кода: function...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru