Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Авторизация и аутентификация / 18 сообщений из 18, страница 1 из 1
05.05.2012, 14:04
    #37783627
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Предположим, пользователь запускает приложение в соц.сети, например вконтакт, а приложение обращается к внешнему серверу. Каким образом сервер может удостовериться, что этот пользователь именно тот, за кого себя выдаёт, а не какой-то злоумышленник имитирует его, с корыстными целями? Нужно чтобы клиентское приложение передало серверному приложению какой-то ключ, который ему передаёт соц.сеть, которое в свою очередь попробует обратиться к апи соц.сети при помощи этого ключа?
...
Рейтинг: 0 / 0
05.05.2012, 14:09
    #37783632
Abstraction
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот Дивуар,

Сертификат, не?
...
Рейтинг: 0 / 0
05.05.2012, 14:13
    #37783639
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
AbstractionКот Дивуар,

Сертификат, не?
Хмм, а как он поможет? Их на каждого пользователя нужно?
...
Рейтинг: 0 / 0
05.05.2012, 14:28
    #37783660
Abstraction
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот Дивуар,

Идея сертификата: я создаю сертификат (Priv, Pub), публикую (отсылаю через общедоступный канал, в отношении которого считается, что хакер может за ним наблюдать, но не искажать информацию в нём) пару (Pub, [подтверждение того, что я это я, скажем, ФИО]). После этого, когда я хочу связаться с "сервером", тот генерирует случайное число из большого диапазона и шифрует его с помощью Pub. Я его получаю и расшифровываю с помощью Priv (хакер это сделать не может, я никому Priv не передаю, а без него не обойтись), после чего отсылаю расшифрованное число и команду обратно серверу. Он понимает, что я прислал загаданное им число (хакер его не мог просто угадать, так как число из большого диапазона), и на основании этого с чистой душой выполняет команду.
...
Рейтинг: 0 / 0
05.05.2012, 14:34
    #37783665
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
AbstractionКот Дивуар,

Идея сертификата: я создаю сертификат (Priv, Pub), публикую (отсылаю через общедоступный канал, в отношении которого считается, что хакер может за ним наблюдать, но не искажать информацию в нём) пару (Pub, [подтверждение того, что я это я, скажем, ФИО]). После этого, когда я хочу связаться с "сервером", тот генерирует случайное число из большого диапазона и шифрует его с помощью Pub. Я его получаю и расшифровываю с помощью Priv (хакер это сделать не может, я никому Priv не передаю, а без него не обойтись), после чего отсылаю расшифрованное число и команду обратно серверу. Он понимает, что я прислал загаданное им число (хакер его не мог просто угадать, так как число из большого диапазона), и на основании этого с чистой душой выполняет команду.
Хмм, но я не вижу тут аутентификации юзера. Тут только защита от подмены юзера в процессе работы.
...
Рейтинг: 0 / 0
05.05.2012, 14:39
    #37783677
Abstraction
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот Дивуар,

Есть связывание пользователя "на том конце провода" с некоторой ранее опубликованной информацией. Соответственно, можно связать "пользователя на том конце провода сейчас" с "пользователем, с которым был сеанс связи три месяца назад". То есть, презюмируя что три месяца назад это был не хакер, мы выводим что это не хакер и сейчас.
В Вашей схеме первого поста, клиентское приложение, условно говоря, ключ не "передаёт", а "демонстрирует".
...
Рейтинг: 0 / 0
05.05.2012, 14:43
    #37783682
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
AbstractionКот Дивуар,

Есть связывание пользователя "на том конце провода" с некоторой ранее опубликованной информацией. Соответственно, можно связать "пользователя на том конце провода сейчас" с "пользователем, с которым был сеанс связи три месяца назад". То есть, презюмируя что три месяца назад это был не хакер, мы выводим что это не хакер и сейчас.
В Вашей схеме первого поста, клиентское приложение, условно говоря, ключ не "передаёт", а "демонстрирует".
А, то есть ключ бы шифровать надо, при передаче. Ну ясно. Плюс неким образом генерировать уникальный идентификатор пользователя на своём сервере, при первом обращении пользователя, а потом по описанной вами технологии, в следующие сеансы удостоверяться что это он.
...
Рейтинг: 0 / 0
05.05.2012, 14:44
    #37783684
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Хотя не, в том алгоритме юзер сам должен сертификат где-то хранить, а мне так не подходит.
...
Рейтинг: 0 / 0
05.05.2012, 14:59
    #37783714
Abstraction
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот ДивуарХотя не, в том алгоритме юзер сам должен сертификат где-то хранить, а мне так не подходит.То есть? Тогда раскройте смысл словосочетанияавторпользователь именно тот, за кого себя выдаётА именно, что значит "выдаёт" и что значит "тот".
...
Рейтинг: 0 / 0
05.05.2012, 15:04
    #37783720
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
AbstractionКот ДивуарХотя не, в том алгоритме юзер сам должен сертификат где-то хранить, а мне так не подходит.То есть? Тогда раскройте смысл словосочетанияавторпользователь именно тот, за кого себя выдаётА именно, что значит "выдаёт" и что значит "тот".
Что он к примеру не декомпилировал программу (хотя тут можно обфускатором помешать), или ещё как-то не подставил чужой id, так как эта информация вконтакте открытая.
...
Рейтинг: 0 / 0
05.05.2012, 15:09
    #37783731
Abstraction
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот ДивуарЧто он к примеру не декомпилировал программу (хотя тут можно обфускатором помешать), или ещё как-то не подставил чужой id, так как эта информация вконтакте открытая.
???
Проверка программой себя на модификацию - это действие параллельное работе с удалённым сервером. Сервер должен считать, что пакеты ему прислал кто угодно, а не обязательно именно эта программа.
...
Рейтинг: 0 / 0
05.05.2012, 15:14
    #37783739
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
AbstractionКот ДивуарЧто он к примеру не декомпилировал программу (хотя тут можно обфускатором помешать), или ещё как-то не подставил чужой id, так как эта информация вконтакте открытая.
???
Проверка программой себя на модификацию - это действие параллельное работе с удалённым сервером. Сервер должен считать, что пакеты ему прислал кто угодно, а не обязательно именно эта программа.
Да не, пофигу на модификацию, главное чтобы юзер был именно тем, за кого себя выдаёт.
...
Рейтинг: 0 / 0
05.05.2012, 15:17
    #37783744
Abstraction
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот Дивуар,

Ещё раз - чем отличается, в Вашем понимании, "выдавать" от "быть"? Либо эксклюзивной информацией a.k.a. "пароль", либо прошлой историей общения, которая тогда должна быть преобразована в некоторую, хранящуюся на компьютере либо в голове пользователя информацию.
...
Рейтинг: 0 / 0
05.05.2012, 15:21
    #37783754
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
AbstractionКот Дивуар,

Ещё раз - чем отличается, в Вашем понимании, "выдавать" от "быть"? Либо эксклюзивной информацией a.k.a. "пароль", либо прошлой историей общения, которая тогда должна быть преобразована в некоторую, хранящуюся на компьютере либо в голове пользователя информацию.
Выдавать, это подсовывать серверу чужой id пользователя.
Быть, это говорить серверу свой собственный id пользователя.
...
Рейтинг: 0 / 0
05.05.2012, 15:31
    #37783778
Abstraction
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот ДивуарВыдавать, это подсовывать серверу чужой id пользователя.
Быть, это говорить серверу свой собственный id пользователя.
Что значит "собственный"? Тот, для которого я знаю также пароль "ВКонтакте"? Тогда следует попросить "ВКонтакте" провести проверку, без этого никак. Вопрос, делает ли он это...
...
Рейтинг: 0 / 0
05.05.2012, 15:54
    #37783814
Кот Дивуар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
AbstractionКот ДивуарВыдавать, это подсовывать серверу чужой id пользователя.
Быть, это говорить серверу свой собственный id пользователя.
Что значит "собственный"? Тот, для которого я знаю также пароль "ВКонтакте"? Тогда следует попросить "ВКонтакте" провести проверку, без этого никак. Вопрос, делает ли он это...
Да у них дока мерзкая, по этой теме уже не раз перечитывал, непонятно. Ладно, попробую на днях некоторые идеи.
...
Рейтинг: 0 / 0
12.05.2012, 17:06
    #37791404
kolobok0
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
Кот Дивуар...а не какой-то злоумышленник имитирует его, с корыстными целями?...

используйте ранее накопленный опыт до вас:
в тех же самых банках существует не мало схем аутентификации:

использование доп. канала (мобильник, почта, телеграф и т.д..)
использование карточки доступа. при условии достаточной быстрой блокировки данных с карточки(несколько десятков разных кодов. юзаются один раз) в случае потери клиентом - надёжность данного метода высокА.

и т.д..

(круглый)
...
Рейтинг: 0 / 0
14.05.2012, 08:00
    #37792600
XDiaBLo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Авторизация и аутентификация
kolobok0,
Не, это всё не понадобится, я (Кот Дивуар это тоже я) всё точно выяснил, вконтакт передаёт клиенту auth_code, который можно передать в своё серверное приложение, которое в свою очередь вычисляет этот auth_code по некоторым данным клиента, и секретному ключу, и сверяет присланное с вычисленным. Если совпадает, значит клиент тот, за кого себя выдаёт. Секретный ключ известен только серверному приложению, и серверам вконтакта, клиенту его взять неоткуда, поэтому подделать auth_code невозможно.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Авторизация и аутентификация / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]