Allregia 9 8 января, 2012 Опубликовано 8 января, 2012 · Жалоба Подскажите пожалуйста "на пальцах", как сделать такую штуку: есть программа, Кейл для М3, программа демонстрационная - показывает возможности железа. По условиям договора с заказчиком, он получает схему и исходник программы, за исключением одного куска. Этот кусочек - несколько функций, в которых закопано собственно ноу-хау. В дальнейшем заказчик будет сам разрабатывать софт, и должен использовать эти функции. Поэтому этот кусочек ему надо как-то передать в пригодном для вставляния в его программу виде, но не в исходниках. Как это попроще сделать? LIB ? OBJ? И собственно, вопрос не только "что" но и "как" - никогда такого не делал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KARLSON 1 10 января, 2012 Опубликовано 10 января, 2012 (изменено) · Жалоба Читайте создание библиотеки dll. Сам делал в Builder C++. По книге Архангельского Программирование в С++. Builder 6.0. Изменено 10 января, 2012 пользователем KARLSON Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 21 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба Кейл для М3 Читайте создание библиотеки dll. :) Лучше все-таки либу сделать, чем obj. С интерфейсом в .h-файле Не знаю как в кейле, но наверняка как у всех. В разделе target или build выбрать library вместо execution При этом список файлов для компиляции должен состоять только из ваших "секретных" файлов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба Читайте создание библиотеки dll. Сам делал в Builder C++. По книге Архангельского Программирование в С++. Builder 6.0. DLL - Dynamic Linking Library, где я ее буду хранить и куда загружать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Edit2007 3 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба M3 - я так понимаю это кортекс Без разницы что отдавать *.lib или *.obj И то и другое можно дизассемблировать при желании (разобрать код на молекулы). И то и другое потребует *.h файл с описанием включенных функций. Так что это мало отличаеется от передачи исходников. Единственное , что исходники можно БЫСТРО поправить для получения своих версий прошивки. С либой или объектником надо повозиться. Вопрос в том, захочет ли заказчик возиться с этим. Если есть необходимость сохранить ноу-хау в секрете то необходимо использовать аппаратную защиту в самом кристале. При этом заказчику отдавать уже контроллеры с прошитым куском секретного кода и с соответствующими блокировками. Ну как-то так. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KARLSON 1 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба DLL - Dynamic Linking Library, где я ее буду хранить и куда загружать? хранить где угодно на жёстком диске, лучше вместе с исходниками. Загружать в исходниках. Просто те функции ноу-хау будут в отдельном файле dll. Про кейл ничего не знаю, может там и ничего этого и нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 21 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба Про кейл ничего не знаю, может там и ничего этого и нет. Вы не поняли, речь идет об исходниках прошивки МК Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Idle 0 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба пдц, google 'keil static library' http://www.keil.com/forum/19277/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vvs157 0 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба Как это попроще сделать? LIB ? OBJ?Можно обработать часть кода обфускатором. Конечно, при достаточной мотивации обходится, но позволяет формально выполнить требование по передаче всего проекта в исходниках. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба речь идет об исходниках прошивки МК Я бы всё ноу-хау написал на асме использовав только относительную адресацию. И заказчику передал бы текстовый файл машинных кодов (.db xx...) и список вызываемых фукций (адресов входа) в виде смещения относительно начала. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 10 января, 2012 Опубликовано 10 января, 2012 · Жалоба хранить где угодно на жёстком диске, лучше вместе с исходниками. Загружать в исходниках. Просто те функции ноу-хау будут в отдельном файле dll. Каком нафиг "жестком диске"?! Все устройство представляет собой плату 3х2см, на которой стоит процессор и еще пара чипов, к которая питается от литиевой батареки и к которой подключено несоколько датчиков. "Ноу-хау" закопано в математике обработке сигналов датчиков. Про кейл ничего не знаю, может там и ничего этого и нет. Естественно нет и быть не может, Кейл - это компилятор для микроконтроллеров, в конкретном случае - для процессора из семейства Cortex-M3 (конкретно -LPC1768). А длл на дельфи/билдере я и сам умею делать. Здесь как бы немножко не тот форум, на котором программирование под писюки рассматривается, разве что как сильно вспомогательная вещь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
am1808 0 11 января, 2012 Опубликовано 11 января, 2012 · Жалоба Каком нафиг "жестком диске"?! Все устройство представляет собой плату 3х2см, на которой стоит процессор и еще пара чипов, к которая питается от литиевой батареки и к которой подключено несоколько датчиков. "Ноу-хау" закопано в математике обработке сигналов датчиков. Естественно нет и быть не может, Кейл - это компилятор для микроконтроллеров, в конкретном случае - для процессора из семейства Cortex-M3 (конкретно -LPC1768). А длл на дельфи/билдере я и сам умею делать. Здесь как бы немножко не тот форум, на котором программирование под писюки рассматривается, разве что как сильно вспомогательная вещь. вам уже ответили, передавайте заказчику функционал в виде либы и да, в любом случае, если аппаратно не защитите, как бы вы не хранили функционал, любой маломальски путный программист при желании дизассемблирует ваше ноу-хау Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 11 11 января, 2012 Опубликовано 11 января, 2012 · Жалоба По поводу дизассемблирования: машинный код после оптимизации в ряде случаев нечитаем даже автором исходника. И это с учетом человеческих имен меток, переменных и функций. Думаю, либа + заголовочный файл вполне защитит "исходный код" от восстановления. Если матан в ноу-хау приличный, то это дополнительный барьер к взлому, а если "2 + 2", то защищать такое ноу-хау крутыми защитами не целесообразно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
am1808 0 11 января, 2012 Опубликовано 11 января, 2012 (изменено) · Жалоба По поводу дизассемблирования: машинный код после оптимизации в ряде случаев нечитаем даже автором исходника. И это с учетом человеческих имен меток, переменных и функций. оптимизация на понимание логики бинаря при дизасемблировании в целом не повлияет Изменено 11 января, 2012 пользователем am1808 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Allregia 9 11 января, 2012 Опубликовано 11 января, 2012 · Жалоба вам уже ответили, передавайте заказчику функционал в виде либы Да я уже понял. и да, в любом случае, если аппаратно не защитите, как бы вы не хранили функционал, любой маломальски путный программист при желании дизассемблирует ваше ноу-хау Железяки заказчик сам будет делать, в разных варантах. И сам софт под них писать. Мы сделали демонстрацонный вариант, полностю рабочий, и собствнно торгуем не прибором а именно самим "ноу-хау" (IP - Intellectual Property) - конструкцией датчиков и мат. обработкой. оптимизация на понимание логики бинаря при дизасемблировании в целом не повлияет Там не логика, там сплошная математика - цифровые фильтры, корреляции, статистические параметры, причем часть в целых и часть в плавучке - сильно не завидую тому, кто это будет дизассемблировать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться