Задать вопрос
alex221000
@alex221000
Начинающий программист

Как воруют, просматривают, копируют исходные коды?

Допустим просто нашёл программу, приложение какое нибудь программное обеспечение или сайт, ну вот я не могу понять просто каким образом можно его взять и посмотреть ? Без всяких программ, просто не могу понять этого, вот допустим я зашёл на сайт открыл исходный код ? Или скачал программу вот передохну мной программа защищённое ПО вот как мне посмотреть если там нету такой Настройки как вообще это все осуществляется, подскажите специалисты, всем спасибо заранее
  • Вопрос задан
  • 599 просмотров
Подписаться 2 Простой Комментировать
Ответ пользователя Данил Шеховцов К ответам на вопрос (3)
@Danil6969
Reverse engineer (native & managed)
Вообще есть 2 разные вещи: программа на компилируемом языке (C/C++/Golang/etc), т.е. исходник; и программа на одном из языков CPU (для GPGPU - GPU), так называемая release версия (либо debug, но суть не меняется, т.к. в отладочных бинарниках информации не сильно больше), она то и попадает на компьютеры клиентов/потребителей софта. Языков CPU (GPU - тем более) существует множество. Код на них необходимо перевести на IR/IL - выдуманный вспомогательный язык, затем в C-подобный функционально эквивалентный декомпилированный код. Так что исходники не раздобыть, но для модов/кряков/etc это лучше, чем ассемблер. Но минус в том, что с таким кодом могут потребоваться танцы с бубном, перед тем, как скомпилировать его снова. Для байткодов всё не так сложно, там декомпилированный код часто совпадает с исходным. Для первых (кроме GPU - в разработке) есть Ghidra, для байткодов: JVM байткод - Fernflower/CFR, C# байткод - JB dotPeek, Python байткод - Uncompiler. Вообще нет никакой защиты в большинстве случаев, по сути вся проблема в разнице между исходником и тем, что способен понять процессор. Поэтому никогда не пытайтесь оттранслировать CPU (x86/PPC/MIPS/ARM/AARCH64/...) в C++, только в C.
Ответ написан
Комментировать