Есть сервер, реализован на Node.js к которому обращается приложения для проверки лицензии и привязки к железу, а также получения и сохранения некого списку. К этому серверу мы не предоставляем доступ закажчику. Но закажчик хочет чтобы сервер-приложения было на его сервере (на его хостинге), поэтому единственный выход, который я вижу - это переписать часть приложения-сервера, которое обслуживает приложения-клиент на Go. На Go я не писал, но это не проблема. Впорос только насколько подлежыт скомпилированый код на Go реверсной инженерии и можно ли для этого использовать что-то попроще (с точки зрения быстроты програмирования), например CPython (а вот Python я неплохо знаю), на котором, насколько мне известно, можно скомпилировать в машинный код (слышал об этом, но ни разу не видел)?
Любой код может быть подвержен реверс-инжинирингу. Не вижу причин по которым го-парашу сложнее реверсить, чем что-то другое. Раз уж так необходимо и пишешь на ноде, запихни всё важное в С/C++-либу для неё и деплой только dll-ку. С Питоном можешь то же самое провернуть, там очень просто. Правда, если заказчик не нубас, исходники попросит.
>>950171 (OP)>насколько подлежыт скомпилированый код на Go реверсной инженерииНа 100%>например CPythonНа 146%
>>950181>го-парашу сложнее реверситьПроще, и намного.Параша для дебилов типа ОПа же.
>>950171 (OP)На сраке перепиши, бббггеее. Лох криварукий, малалетний спидоран, хехе. Хуй саси, губой тряси ббггее.
>>950181и вже если увидят испольняемый файл, желания лесть во внутрь убваится на 95%.
>>950184Одинаково, бббггеее. Я бы дажи сказал слажнее, чем цэ и цопэпэ, хехе. В говланги еще и куча мусара в види рантайма, хуй ентрипоент найдеш коли ниразбираешь.пакерам с вм наебени поверх, лох малалетний, бббггее.
>>950181Гавно, хех. саветы ат школьника, дермище каторава тяжило и тормазит и пердит, хех.
>>950171 (OP)Ебашь на Haskell.
>>950171 (OP)хуейвер
>>950193О дааа, в первую очередь, давно хотел разобартся с Haskell))) Только как обстоят дела обфускацией Haskell ?)
>>950198Лох.
>>950171 (OP)Пидор ты в политаче насрал и сюде теперь принес? Тебе там ответили? ответили, вот и не засирай своим говном доску
Короче, чтобы без лишней мороки, ОП: бери Cython и заливай бинарники.
>>950204хуярники
Питоний код, прогнаный через Numba или Cython в Сишную кашу будет реверсить тяжело, ибо инструментария для этого никто еще не написал. Но кому нахер надо ковырять твой сервер, если можно клиентское приложение вылечить?
>>950308Клиенских 4 мб JavaScript обфусцированого uglify.js - врятли. Проще будет сервер симулировать.
Пидорасы пишушие говнософт с серверами лицензий должны страдать.
>>950350Работай дальше в своем офисе и не высовывайся
>>950171 (OP)>подлежытВут?
>>950359Ебать Хован растолстел.
А вот здесь наоборот предположили то, что я думал - на компилированих языках луше https://toster.ru/q/405998
Вот вам унмики https://toster.ru/q/405998
>>954033>На чем писать сервер, чтобы>Впорос>ЗакажчикЛадно запятые (но неужели тяжело запомнить, что перед "чтобы" и "что" всегда ставится запятая), но слова с опечатками подчёркиваются. Неужели трудно исправить?>В любом случае надо, чтобы найти специалиста, который взломает сервер, было дорого, долго/сложно>Достаточно небольшой кусок с ключевыми алгоритмами.Хороший совет. Вместо того, чтобы разбирать мегабайты ассемблерного кода, тут всё просто и компактно, только то, что нужно. Сразу же можно приступать к работе над восстановлением алгоритма (или патчить, в зависимости от того, что нужно).>построением проверки с использованием асимметричных схем шифрованияВах-вах-вах, как сложно обойти. Это типа сертификатов, если из готового? MITM своим сертификатом. Публичный/приватный ключ? Заменяем на свой и опять MITM. Создаётся свой прокси, эмулирующий сервер.>Но лучше не загибать ценник - не будут и взламывать.Мухахахахахаха.>Ненормативная лексикаТы считаешь, что без неё нельзя обойтись? Что за люди.
>>956141>В любом случае надо, чтобы найти специалиста, который взломает сервер, было дорого, долго/сложноДолго и сложно - это да. А на счёт дорого - нет. Даже если будешь использовать протектор, есть люди, которые специализируются на его полном удалении. Т.е. у них это поставлено на поток. Цена - предположу, что до 500$, и то, очень вряд ли, скорее всего, меньше.> Чтобы эмулировать нужно написать сервер. Хотя это и до 500 строк кода, но все врят-ли это сделают быстрее чем за 2 недели>Для опытного реверсера - 2 недели, если он будет писать пальцами ногСогласен. У меня как-раз ушло столько времени, чтобы сделать эмулятор сервера, но опыта у меня чуть-чуть. C# с всевозможными обфускациями, шифрованиями трафика внутри SSL соединения и прочим, использовал штатный софт, ничего приватного/самописного.>Но! Если сберечь приватный ключ. скажем по SHA512, декомпилятор не сильно поможет. Т. к. шифрованному трафику неоткуда будет взяться.А зачем этот приватный ключ? Что он будет охранять/защищать? Получается, что публичный ключ будет что-то шифровать, это что-то отправляется на сервер, так? В чём проблема подсмотреть, что шифруется и возвращается и заменить публичный ключ на свой? Если он будет вшит в программу, тут ещё возникает проблема смены ключа.