сервер хранит изначально:
1. server-username
2. key
и знает формулу создания hash = (username.key)
Клиент передает на сервер:
1. client-username
2. client-hash
и знает формулу как создать client-hash (перед его отправкой на сервер):
client-hash = (client-username.key)
(та же что и на сервере!)
Сервер обрабатывает:
1. Создает временно свой server-hash = (server-username.key)
2. Проверяет на основе принятых данных:
if (server-username==client-username && server-hash==client-hash) {
// AUTH OK.
} else {
// AUTH FAIL!
}
-----------------
PS: можно добавить в формулу текущую дату (timestamp) и IP-адрес клиента для сложности... НО! не забудьте включить в API функцию перезапроса авторизации в ПРОЗРАЧНОМ! режиме. (смена соты и т.п.)
ритм - это тоже, что и распознавание схожих текстов, изображений и т.д. - никакой разницы. Т.е. нужно определить значимые переходы (расстояние Хемминга или любой аналог) и далее их структурировать в виде дерева.
тон - это частота в Гц.
нота до первой октавы = 261.625565 Гц
и по аналогии ритма далее определяете...
сложно для понимания - нет.
много кода? - да)
Так может проще нащелкать и отослать, а проверять уже на сервере? (трафик)
PS: можно еще проверять не все подряд точки, а с каким-то интервалом (сеткой) или диагонали...
мощности точно хватит...
вот с аккумулятором могут быть проблемы - быстро разряжаться будет от постоянных вычислений...
Осталось просто выбрать что важнее: трафик или акк? )))
(в FireFox 33.0) Инструменты -> Веб-разработка -> ............
про e-mail: использовать можно любые, главное чтобы авторизация поддерживалась у скрипта (я не смотрел как там)...
думаю, навряд ли....
Нажмите F12 (профилирование запросов) в FireFox и отправьте форму (нажмите кнопку отправки данных) и посмотрите: будет ли найден скрипт (код 2xx или 301/302) contact_me.php или нет (код 4xx)...
@zoonman ну да, как раз так и планировал (мой коммент выше), только вначале - сформировать массив строк через парсинг JS-скрипта для прозрачной локализации (не массивом), т.к. лишний раз "рыться" в "чужих" js-библиотеках не очень хотелось бы....
@Heian пока вижу для себя подход:
1. языковой версии файла нет => {парсинг JS -> замена нужных строк -> кэширование на диск с добавлением языка к имени...}
2. грузим из кэша готовый файл
@EgorKluch не хотелось бы множить потоки при выводе сообщений, логику которых обрабатывает клиентский скрипт без обращения к серверу...
Когда идет взаимодействие JS с сервером (через ajax) - тут полностью согласен.
Поэтому и ищу оптимальный вариант по нагрузке на сеть, клиента и сервер...
Adobe Audition - для сведения композиций в offline (есть авто-определение темпа)