Задать вопрос
limonchik-mike
@limonchik-mike
Веб-мастер

Стоит ли переносить логику работающего онлайн-калькулятора с JS на PHP ради защиты формул от копирования?

Привет всем!

Есть работающий проект — алкогольный калькулятор для водителей. Сейчас вся математика (модифицированная формула Видмарка с кучей наших кастомных коэффициентов и эмпирических поправок) крутится на клиенте на чистом JS. Пользователь меняет значения в форме, график мгновенно перестраивается — интерфейс летает, UX идеальный.

Но встал вопрос защиты интеллектуальной собственности. Формулы и веса выверялись долго, а сейчас конкуренты в нише могут просто открыть DevTools и скопировать всю логику за две минуты.

Задумался о переносе расчетной части на бэкенд (PHP), чтобы отдавать на фронтенд только готовый массив данных для графика. Но есть сильные сомнения, стоит ли ломать то, что отлично работает:

1. Потеря интерактивности: Сейчас расчет происходит за доли миллисекунды. Если перенести на PHP, то при изменении параметров придется слать AJAX-запросы. Будет ли задержка критичной для восприятия (интерфейс перестанет быть «живым»)?
2. Нагрузка на сервер: Когда пользователи начнут активно дергать ползунки, сервер получит лавину мелких запросов. Как это обычно оптимизируют? Дросселированием (debounce/throttle) на фронтенде или агрессивным кэшированием на бэкенде?
3. Целесообразность: Спасает ли вообще перенос на PHP от парсинга, или умный конкурент точно так же напишет скрипт, который задублирует запросы к нашему обработчику и вытянет те же данные?

Поделитесь опытом, стоит ли ради защиты алгоритмов переходить на серверные расчеты в интерактивных калькуляторах, или в вебе проще смириться, накатать обфускатор на JS и оставить все на клиенте?
  • Вопрос задан
  • 2330 просмотров
Подписаться 3 Средний 21 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 8
opium
@opium
Просто люблю качественно работать
конкурент задублирует запросы к API — и по входам-выходам всё восстановит
Ответ написан
Комментировать
@AlexVWill
WebAssembly
Ответ написан
Комментировать
@Shrizt
Однозначно да, если алгоритм того стоит, на клиенте это не защитить
Ответ написан
Комментировать
@Kostik_1993
Web Developer
На мой взгляд это десткий сад. Ну можете усложнить ненмого логику минимизировав JS
Но в целом любой ИИ агент наделает этих формул на раз два и на ваш сайт даже не придётся заходить
Ответ написан
Вы можете зарегистрировать патент на формулу. или как там это сейчас называется. Короче, получить авторское право.
А дальше пусть кто копирует, вы просто жалобу на хостинге, а хостинг бан делает. Или суд на владельца сайта. Главное в html, желательно вначале где-то, укажите что код под авторским правом.
back-end можно защитить, к примеру принимаем домены только от себя.
Ну к примеру, условный a.com и всё. Пришел b.com, мы ему показываем 403 или вообще 404. Берем и путаем тех, кто пытается в back-end стучать.
Ну а вообще, можно придумать безопасность и тд, потому что и домен можно подделать.
Но я бы не стал выдумывать. Авторское право на код и всё. Кто украл, того в суд или хостинг бан.
Ответ написан
@rPman
Переноси код на бакэнд, вводи лимиты на количество запросов, авторизацию пользователя, капчи от ботов и т.п.

Правильно разработанный бакэенд и фронтэнд будут давать задержку ровно на величину ping + время на вычисления (скорее всего считанные миллисекунды), если пинг меньше 200мс то пользователь даже не заметит (как сейчас практически никто не замечает что калькулятор в windows запускается пол секунды).

Просто не переусложняй, обычный http rest или лучше websocket.

Крутилки, кнопки и поля,.. проводи вычисления по требованию а не в момент изменений. Вводи лимиты на количество изменений, потому что иначе, злоумышленник соберет данные о калькуляторе инструментами автоматизации, и либо восстановит формулу либо просто построит полином (условно многомерный сплайн по собранным точкам, сейчас такую задачу ИИ сделает на раз два, даже понимать не нужно что это).

p.s. не уверен что выбрали удачный бизнесплан.
Попробуй найти другие способы отбить затраты на разработку.
Ответ написан
Комментировать
@basili4-1982
может что то вроде https://github.com/spinframework/spin использовать скомпилировать js в wasm и скорость не уменьшиться оно в браузере работает. И код так просто не увидишь. Хотя можно
Ответ написан
Комментировать
@7rows
Frontend Разработчик / Vue / JS / TS / CSS
Кажется, это просто обычный кликбейт.
Вопрос не стоит столько времени, который тут обсуждали, а вот статистику для домена подняли.
Судя по коду, может и формулы что-то и стоят, но сравнение до десятых и простое сравнение, без диапазонов - заставляет задуматься, что там такого уникального.

Количество пива у вас так же, сейчас градусы разные, однако, вы грубо делите все на проценты.
Да, это не к теме, так что, если захотят украсть , укардудт + доработают через ИИ.
Я бы на вашем месте не парился
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы