Показать сообщение отдельно
  #4 (permalink)  
Старый 04.06.2018, 12:53
Аватар для xShift
Профессор
Отправить личное сообщение для xShift Посмотреть профиль Найти все сообщения от xShift
 
Регистрация: 22.11.2016
Сообщений: 212

Кароче вот ... Добавляем порядок с алфавитными индексами на сервере и тасуем. На клиенте делаем sort(), что восстанавливает порядок массива.

let test = {"key":"1*G-0:50:25|B-0:25:0|C-0:50:0|D-0:75:0|E-0:0:25|F-1:25:25|H-0:75:25|I-0:0:50|J-1:25:50|K-1:50:50|L-0:75:50|M-0:0:75|N-0:25:75|O-0:50:75|P-0:75:75|A-0:0:0"};
		
		let pattern = test.key.split('*')[0];
		let coords	= test.key.split('*')[1].split('|');
		

		console.log(coords.sort()) // return order

		function compareRandom(a, b) {
		  return Math.random() - 0.5;
		}


		console.log(coords.sort(compareRandom)) // randomize


С учетом того, что капчедрочеры обычно считывают изображение мы имеем шанс не попасть под автоматизированный алгоритм вычисления капчи - ведь она отрисовывается canvas. Далее после ввода паттерна опять мы перетасовываем и отправляем на сервер который делает тоже самое.

Мне кажется лет на 10 этого алгоритма хватит.

Последний раз редактировалось xShift, 04.06.2018 в 12:57.
Ответить с цитированием