Форум программистов, компьютерный форум, киберфорум
Node.js
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
 Аватар для Mesteriis
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637

Работа с сертификатами для авторизации

10.05.2019, 23:46. Показов 4444. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток.

Подскажите есть у кого то пример механизма авторизации на сайте по средством сертификата, речь непросто ssl а именно замена логина и пароля на веб морде
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.05.2019, 23:46
Ответы с готовыми решениями:

Работа с сертификатами
товарищи, обращаюсь к вам ибо гугл к сожалению не помог, нужна помощь в скрипте удаляющем доверительный корневой сертификат и и сертификат...

Электронная подпись+работа с сертификатами
Здравствуйте!дали задание,саму суть понял,не могу разобраться,как начать писать программу.помогите кто чем может. Вот само задание: ...

Работа с QWebView, OpenSSL для авторизации vk
Собственно, установил OpenSSL, кинул два файла в папку с комплиятором, как описано в этом туториале: Problem When you try to open a...

9
274 / 178 / 30
Регистрация: 16.03.2017
Сообщений: 1,631
12.05.2019, 08:43
Уточни ТЗ. (мне тоже интересно)

Авторизация на сайте происходит обычно через куки или передаваемый "параллельно" в запросах серверу токен!
По куке или токену происходит верификацию юзера по базе сервера...
Токен или кука - это почти-"случайная" строка выданная юзеру и прописанная в базу.
Иногда верификация происходит через чужой сервер - (глубоко вникал в OAuth, но) по этой методике работает "авторизация через...гугл/фейсбук/гитхаб" - токен/кука проверяется гуглом, а вашему серверу высылается "авторизация успешна - к вам постучался юзер .... с почтой .... с полом... с... увы другие данные гугла по юзеру вам не доступны по желанию юзера"

Но "сертификаты", увы, еще не изучал... можем вместе изучить (вдруг и мне пригодится)... уточните задачу!
0
 Аватар для Mesteriis
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
12.05.2019, 12:52  [ТС]
andyj, Смотри есть криптодрайвер, допустим КриптоПро (используется при работе с ЭЦП на госуслугах и тд) или тот же пресловутый OpenSSL (открытый протокол в основном для серверов и клиентов, без передачи шифрованных доков) не суть это только алгоритм работы с открытыми и закрытиями ключами. У пользователя есть закрытый ключ (user.key) есть только у него, если утекает то считается что ключ не валидный больше. На сервере есть открытый ключ (user.csr) если коротко с помощью его можно зашифровать, но не расшифровать инфу. И так ТЗ серв шифрует любую строку с помощью открытого ключа, потом юзер когда нажимает авторизовать, получает эту строку расшифровывает ее и отправляет на серв. Серв принимает сравнивает если все ок выдает токен на вход.

Добавлено через 15 минут
Какое профит. Серты выдаются персонально с проверкой паспорта ИНН и все в этом духе. Контролируются ФЗ и удостоверяющими центрами. Сери можно использовать и при регистрации там (в открытом ключе) есть все данный и почта и телефон и фио. Так что в разы упрощается процесс авторизации/регистрации. Подсунул открытый ключ. Серв проверил его через УЦ (около 15 секунд) зашифровал строку, отправил, получил ответ, занес в базу узоров и все. Весь процесс занимает порядка 30 секунд и не каких вводов данных и прочего.
0
274 / 178 / 30
Регистрация: 16.03.2017
Сообщений: 1,631
12.05.2019, 13:02
Планируешь все это в браузере реализовать? Технически реально, но боюсь есть сложности...

Есть опенсорсный браузерный генератор RSA ключей и шифратор/дешифратор для сайта (гуглится или могу прямую ссылку поискать). Глубоко не копал, но внешне похожи на SSL-пары. Надо проверить его совместимость с нодой. В браузере все кодит/докодит. Сложность ключа можно задавать.

В ноде вроде с SSL тоже полная поддержка.

Где клиент будет хранить свои ключи? В браузере? на флешке? на СД (нам в налоговой так дают) ?

Если я правильно понял, есть 3 "участника": клиент с ключем, служба поддержки ключа и ваш сервер? тогда кто будет подтверждать надежность ключа? или закрытый ключ клиенту вы будете от своего сервера выдавать?
0
12.05.2019, 14:21

Не по теме:

Mesteriis, вставлю только свои 5 копеек: сталкивался с похожим на сайте одного гос. реестра, для входа нужно было отправить секретный ключ (отправляется файл) и пароль к нему, вся проверка происходила в браузере. Алгоритм мне неизвестен. Дальше, они сменили способ работы, ключи передавалась на специальных флешках, которые просто так проводником не открыть. Для входа в систему нужно было установить прогу, которая считывает собственным драйвером эту флешку. Еще в браузер нужно было установить расширение, которое бы принимало данные от этого драйвера. Много возни для пользователя, но один раз настроил и все. Т.е. по идеи это возможно, нужно только иметь возможность работать с ключами этой вашей службы.

0
 Аватар для Mesteriis
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
12.05.2019, 17:43  [ТС]
Цитата Сообщение от MrOnlineCoder Посмотреть сообщение
на специальных флешках,
Называется токен, да по требуется
Цитата Сообщение от MrOnlineCoder Посмотреть сообщение
Для входа в систему нужно было установить прогу,
это как раз криптодрайвер
Цитата Сообщение от andyj Посмотреть сообщение
служба поддержки ключа
Не совсем УЦ только генерирует ключ сроком от 3х до 15 месяцев, закрытые ключи только у клиента. Нам они без надобности и без специальной лицензии ФСБ их хранить у себя запрещено, по шапке прилетит так что не обрадуешься.
Цитата Сообщение от andyj Посмотреть сообщение
но внешне похожи на SSL-пары.
Именно только устойчивость, если мне не изменяет память, ssl 254 бита а КЭП от 2048 до 16384 бит в зависимости от OID
Цитата Сообщение от andyj Посмотреть сообщение
закрытый ключ клиенту вы будете от своего сервера выдавать
Нет весь смысал что бы пользователь сам покупал себе ЭЦП, так как они все идет в соответсвии с ГОСТ проблем быть не должно в работе

Добавлено через 1 минуту
Таким образом анонимный вход не возможен, регистрация занимает 20 секунд, и пользователь 100% идентифицирован
0
 Аватар для Mesteriis
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
12.05.2019, 17:45  [ТС]
Что бы было проще пример закрытого и открытого ключа
PS ключи уже отозваны))))
Вложения
Тип файла: 7z Key.000.7z (1.8 Кб, 8 просмотров)
0
274 / 178 / 30
Регистрация: 16.03.2017
Сообщений: 1,631
13.05.2019, 13:50

Не по теме:

я не из РФ - мне ваши запреты ФСБ мало понятны. У нас тоже есть система ключей для подписей, но обычно она используется в спец-программах для "подшития/подписи" документа для электронной отчетности. Поставляются обычно (в налоговых) на CD, но (вроде) потом можно скопировать на флешку или просто на комп бухгалтера



Цитата Сообщение от Mesteriis Посмотреть сообщение
это как раз криптодрайвер
Что из себя представляет "криптопровайдер" и как он подключен к браузеру? Плагин к хрому? "общедоступная" программа к которой у любого JS кода есть доступ?

Немного запутался... Как вы представляете себе подобную авторизацию юзера? Опишите ПОШАГОВО!
0
 Аватар для Mesteriis
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
13.05.2019, 22:51  [ТС]
Цитата Сообщение от andyj Посмотреть сообщение
Что из себя представляет "криптопровайдер" и как он подключен к браузеру? Плагин к хрому?
крипта да в основном это плагин если мы говорим о хроме, опере, яндексе и опере если об ие то просто софтина которая ставица. в целом она условно бесплатная, я думаю у вас ключи от налогой тожеимеют общий формат, так как требования одни и теже.
Цитата Сообщение от andyj Посмотреть сообщение
Опишите ПОШАГОВО!
как происходит у нас.
На примере ООО СКБ контур (это уц, и предоставляет софт для взаимодействия с налоговой ипрочем (пенсионный соцстрах егаис и т.д.)) Есть еще тензор но в целом одно и тоже.
1. Компания (физлицо) заключает договор с ним на какие либо услуги. (юрики естественно для налогой, тогров, егаис и тд) физики для Госуслуг
2. Юзер (юр или физ неважно, разница в реквизитах ключа) предоставляет откртый ключ на сервер. Тупо в открывшемся диалоговом окне.
3. Сервер через УЦ проверяет срок действия серта (списки открыты для общего просмотра, так сказать ридонли с ограниченным функционалом (отправляешь отпечаток ключа и получаешь true или false (с датой окончания)) и, в случае true, направляет кодированную строку, кодирует естественно на основе полученного открытого ключа.
4. браузер получив кодированную строку, декадирует ее с помошь закрытого ключа (напоминаю это можно сделать только если имеется закрытый ключ) и отправляет ее на сервер.
5. Сервер в случае идентичности генерирует токен до конца действия ключа (ну или можно дать пользователю выбор, для секьюритности) и разрешает вход.

В целом сейчас в РФ 100% юр лиц имеют по несколько ключей ну или минимум один, по ФЗ чуть хуже но тоже терпимо.

Цитата Сообщение от andyj Посмотреть сообщение
потом можно скопировать на флешку или просто на комп бухгалтера
У нас в РФ не все ключи можно копировать, есть особый вид ключа который записывается на специальный носитель и потом без нарушения целостности скопировать нельзя. (носители типа *JaCarda и ЭЦП 3,0, *используются в основном в ЕГАИС и в торгах).
Так же попутно можно принимать ключи и от домена не суть важно, алгоритм работы тот же. ТОлько в логике обязательно учесть, что УЦ и Владелец не может быть одним и тем же, иначе момент идентификации теряется, но благо богу кол во УЦ не много. В РФ это все 4 юр лица, и работают по одному и тому же алгоритму, разница только в криптодрайвере но он нас не касается. Так же для РФ, если мы не будем выдавать ключи с конкретным OID то можно в ФСБ не регистрировать, так что на крайняк можем сами их генерировать (это я про ключи)

Добавлено через 36 секунд
PS сори за орфографию, не много пьян и пишу с телефона
0
274 / 178 / 30
Регистрация: 16.03.2017
Сообщений: 1,631
14.05.2019, 14:03
Цитата Сообщение от Mesteriis Посмотреть сообщение
как происходит у нас.
Слишком сложно... Как ВЫ мечтаете использовать подобную технологию? Не как это работает "со стандартными сервисами"...

Допустим я клиент, которых хочет авторизироваться на ВАШЕМ сервере через ключи, которые получил (в той-же налоговой).
Что я должен сделать (порядок моих действий) для авторизации???
Ключи есть, кое-как установил даже КриптоПро.
Что дальше???
Я открываю Ваш сайт и он получает доступ к КриптоПро? Прямо в Хроме? Вы в js сайта можете что-то делать с КриптоПро? Например заставить его "подписать" файл, зашифровать строку или просто выдать в JS информацию по пользователю-владельцу ключа для отправки на сервер? Или выдать сразу токен авторизации???

Ваша задача (на сервере) к моему юзеру (AndyJ) в ВАШЕЙ базе прописать токен высылаемый мной при поключении ключа (когда я вставлю флешку, СД или нажму кнопку в КриптоПро)... Как вы можете получить этот токен? Есть АПИ?

Или вы хотите все это смоделировать/повторить на СВОИХ ключах (из OpenSSL), а не "официальных"?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.05.2019, 14:03
Помогаю со студенческими работами здесь

Нужно написать программу для работы с сертификатами
Нужно разработать программу с web-интерфейсом, которая хранит, информацию о сертификатах, при чем информация о сертификатах на каждого...

Управление сертификатами
Скажите пожалуйста а то что то я совсем не помню . Для чего служат сертификаты в винде ? Где я мого про них почитать в инете ищу и не могу...

Беда с сертификатами
Господа, такое дело, встречаем второй раз за неделю. Началось все с компа на win7. Система отказывалась открывать сайты по https ссылаясь...

Работа после авторизации
День добрый,проблема такова, что не знаю какие действия производить далее,с авторизацией разобрался и получил куку ,но это происходит в...

PKI. Запутался с сертификатами
Здравствуйте! Я разворачиваю PKI и немного запутался в сертификатах. У меня в сети есть ПК с WinXP, Win2003 - для того, чтобы они могли...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru