~acetone
@qend
Guest58423
Leopold
Most2
Vasservate
`
anon3
cancername
fidoid
korol4ik
lagemeet
longsky
nil
poriori
segfault
semantica
whothefuckami
zero_tolerance_
`
Попался Youtube-pridurok, у которого 47к видосикофф, которые состоят из: берём вопрос из гугла, берём ответ с форума, делаем презентацию из двух скриншотов, оформляем как видно на две-три минуты, заливаем на тытрубу в FHD.
`
Передайте на #ru гипну или плазу очередную идею для самореализации.
`
Кстати 47к видосикофф - за два года.
`
Ой не тем наш гипн и плаз занимаются, не тем..
segfault
acetone: идеалный проект для твоей zero storage catcha
segfault
acetone: ну и можно попробовать реализовать вторую версию на fastcgi)
segfault
хотя тут даже древнего cgi хватит с огромным запасом
segfault
acetone: кстати данные выбранные на предыдущих страницах можно тоже в cookie запоминать
segfault
и не хранить на сервере вообще ничего
segfault
acetone: на севере будет нужен только приватный ключ хранить и time() / 300 посчитать
segfault
*два раза посчитать, для time() / 300 и (time() / 300) + 1
segfault
ну и time() конечно надо 1 раз вызывать
acetone
segfault: была, кстати, идея сделать унифицированный captcha-gate с ориентацией на i2p: чтобы любой проект можно было защитить от дудоса одним опенсурсным приложением без JS и гугла)
acetone
но надо хотя бы какой-то один проект-инвестор, под нужды которого будет написана первая версия
segfault
acetone: центролизованным?
acetone
segfault: нет, селфхостед опенсурс - каждый сам себе ставить будет
acetone
нечто вроде веб-сервер прокладка между пользователями и приложением
segfault
acetone: проще сделать капчу с нуля, чем ковыряться в чужом api
acetone
хотя, вероятно, разумно будет стараться написать что-то унифицированное, не только для i2p, чтобы проще аудиторию было найти
segfault
acetone: ты писал про sam api
segfault
acetone: но почему-то не писал про bob
segfault
acetone: тебе не понравился bob
segfault
?
acetone
segfault: я говорю про веб-сервер прокладку. никакого апи. I2P -> ПРОКЛАДКА -> ПРИЛОЖЕНИЕ. как nginx люди используют, например, для проксирования. и это тоже прокси, который на своей стороне реализует капчу
acetone
segfault: я говорю ��ро веб-сервер прокладку. никакого апи. I2P -> ПРОКЛАДКА -> ПРИЛОЖЕНИЕ. как nginx люди используют, например, для проксирования. и это тоже прокси, который на своей стороне реализует капчу
acetone
segfault: я говорю про веб-сервер прокладку. никакого апи. I2P -> ПРОКЛАДКА -> ПРИЛОЖЕНИЕ. как nginx люди используют, например, для проксирования. и это тоже прокси, который на своей стороне реализует капчу
acetone
(пардон за дубли)
acetone
bob считается деприкейтед, функционал аналогичный - лучше тащить один апи, чем пытаться использовать два)
segfault
acetone: то есть ты предлагаешь реверсивный прокси-сервер?
segfault
acetone: почему бы не написать плагин для nginx?
acetone
segfault: да, прокси. плагин для nginx звучит интересно, но не сталкивался от слова совсем, посмотрю на досуге что такое
segfault
acetone: ты же писал, что в i2pd он развивается?
segfault
acetone: orignal примеры всегда для bob приводит. он говорил, что reg.i2p работает через lookup в bob
acetone
segfault: в i2pd его поддерживают, но в целом писать на нем что-то - как минимум плюнуть в лицо жава-юзерам, поэтому лучше SAM
segfault
acetone: можно просто встроить libi2pd в приложение работать напрямую с c++ api i2pd
segfault
и i2pd будет работать в самом приложении
segfault
acetone: почему плюнуть в лицо? пусть роутер допиливают. i2pd же поддержал i2cp для совместимости с java i2p приложениями
acetone
я думаю, не имея какой-то внятной аудитории, начинать строить что-то сложное с libi2pd и прочим в этом духе - неоправданно, всё заглохнет, не успев родиться; надо идти по простейшему пути, чтобы реализация заняла минимум времени и уже можно было
acetone
показать сообществу хоть что-то)) ш2з сообщество очень маленькое, поэтому, вероятно, разумно идти вовсе по пути "i2p - это опция, в целом работает даже с клирнетом"
segfault
acetone: да, тоже так считаю
segfault
acetone: я хотел сказать, что можно sam и bob не использовать вообще, чтобы создавать i2p only приложения
segfault
acetone: правда orignal послал меня, когда я спросил, гарантирует ли он стабильность api libi2pd ))
segfault
sam и bob стабильны
acetone
на днях доберусь посмотреть сколько sam на практике позволяет держать сессий, насколько требователен к ресурсам) давно интерес такой есть, да до тестов не доходил
Vasservate
Искал кстати тоже недавно какие-то легковесные опенсурсные капчеслужбы, ничего не нашёл. Если найдёте, скиньте сюда пожалуйста.
Vasservate
Ну либо если чё-то пилить начнёте, есть руки и навыки в системном программировании, в сях и плюсах, могу подсобить
acetone
Vasservate: вот такое я писал было дело: github.com/ZeroStorageCaptcha/api-daemon
segfault
Vasservate: acetone: ого
segfault
есть работники )
acetone
подробнее о том как работает либа капчи (на которой работает вышеуказанный сервис) и почему это легковесное решение, можно почитать в ридми самой либы: github.com/ZeroStorageCaptcha/cpp-lib
Vasservate
acetone: прикольная штука zerocaptcha, не слышал о ней. жаль на qt завязана
segfault
Vasservate: её acetone придумал )
acetone
Vasservate: я из спортивного интереса ее написал пару-тройку лет назад
segfault
вообще я кажется знаю как сделать проще
acetone
первая ссылка - это рест демон, который надо юзать по API. твое приложение получает картинку и токен, а затем проверяет ответ по токену и вводу пользователя, всего два простых эндпоинта и деплой на любой линуксовый сервер за пару минут
acetone
использовать либу имеет смысл только если твой проект уже на плюсах и qt
segfault
acetone: тебе интересно?
Vasservate
acetone: Да, это минус к сожалению, у меня локальные проекты на сях в основном
Vasservate
Надо бы свой костыль похожий наваять
segfault
Vasservate: можно сделать это изящнее
segfault
Vasservate: давай вместе сделаем?
Vasservate
segfault: что предлагаешь?
segfault
Vasservate: в теории на запрос мы можем выдать просто картинку бинарно, так?
segfault
т.е. без base64
acetone
segfault: да, излагай) мне нравится любая дрочка этого жанра
Vasservate
С какой целью? Можно пожать в gzip да, http съест
segfault
просто как image/gif
segfault
самый просто сценарий для программиста и для пользователя это старый и медленный cgi. программу на си надо просто скомпилировать и положить в каталог /cgi-bin/
segfault
из http заголовков мы знаем b32 адрес клиента
segfault
берём time() / 300 и b32 адрес
segfault
и из хэша получаем капчу
segfault
то есть генератор картинок создает капчу по hash(b32 + time() / 300)
segfault
значит само серверное приложение может узнать, какая картинка сгенерировалась, проделав тот же путь
segfault
серверное приложение проверяет ответ, если он верный подписывает и записывает в cookie
Vasservate
time() клиенту будет известен +-. Задержки в ш2з в пределах секунды-трёх, т.е клиенту известна. Свой b32 тоже известен. В обычной сети и тово меньше. Алгоритмы известны, так в чём капчевость?
segfault
Vasservate: хэш шифруется
segfault
ключ есть только у сервера
segfault
и у генератора картинок и у серверного приложения
Vasservate
Ну тогда наверное ты прав
segfault
и этот генератор будет маленькая программа без зависимостей
segfault
там прям в исходники можно включить какой-нибудь libgif, функцию хэширования и функцию криптографической подписи
Vasservate
Как сишную либу можно оформить с биндингами куда угодно
segfault
Vasservate: не, это не либа. это прям программа captchagen.cgi условно
segfault
ей нужна будет только libc для работы
segfault
Vasservate: или ты про либу, которая будет в серверное приложение встраиваться?
Vasservate
Про либу в серверное приложение. Линкуешь -> инитишь -> дергаешь функцию где хочешь
Vasservate
Не вижу смысл программу из этого делать
segfault
Vasservate: т.е. ты предлагаешь, чтобы она просто вернула набор байт с картинкой, которые надо просто отправить по HTTP?
Vasservate
Да
segfault
Vasservate: эту программу всё равно надо сделать будет, потому что как ты вставишь картинку в html? ты же напишешь <img src="..."
segfault
то есть ты тогда сам будешь делать эту программу
segfault
хотя да, программу надо как опцию предлагать, хочешь используй, хочешь, не используй
Vasservate
Если нужна программа, можно её как обертку над либой сделать. Обычно так делается
segfault
Vasservate: да
segfault
Vasservate: я так и предлагаю
segfault
acetone: а было как?
acetone
была ссылка на вечно лежащий нотабаг
segfault
acetone: major не логирует изменение темы
acetone
ага
segfault
acetone: у меня notabug открывается
acetone
segfault: да, через раз
acetone
когда очень нужен может полчаса лежать беспробудно))
segfault
acetone: ты теперь полностью на git.community.i2p перешёл?
acetone
segfault: такое решение я не принимал) но для ш2з-ориентированных проектов вполне адекватно будет
acetone
segfault: про нотэбаг. вот хочу я открыть свой проект, чтобы посмотреть какую-то реализацию, а не могу сколько ни пытаюсь: notabug.org/acetone/samty
Leopold
пишет Error
segfault
(This most definitely is a bug)
segfault
смешно это читать на сайте notabug
acetone
и это у них уже года 4 минимум) как начнет лагать, так пиши пропало
segfault
acetone: раньше не видел чтобы notabug лагал
segfault
acetone: nullnyan.i2p/b/24097#24110
segfault
acetone: на тебя анти-наркоманы ссылаются, как на авторитетное мнение ))
segfault
acetone: это я радуюсь, что твой опыт кому-то помогает
`
Кто такие "анти-наркоманы"?
segfault
`: противники распостранения
korol4ik
Вот так бы побольше людей делали, да поглобальней!