Защита файлов от редактирования

Автор Uhbif, 19.01.11, 15:46:46

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.

Uhbif

Подскажите кто знает!!!
Проблемка заключается в том, что нужно, что бы чертеж компаса(или 3Д-шка) которая попадет в руки постороннему человеку смогла открыться и этот файл можно было просмотреть, НО редактирование было полностью невозможным, или вовремя редактирования начинали твориться "Чудеса" с чертежом(типа все само по себе разъезжается и т.п.).
Важно, что бы нельзя было с этого файла скопировать часть чертежа и вставив в новосозданый документ уже там редактировать.
У меня на уме есть вариант с созданием геометрических взаимосвязей на чертеже, но это тоже под вопросом, потому как я незнаю можно ли их потом както удалить при желании.

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

Администратор

Какими-то прямыми способами, увы, не сделать (именно в такой формулировке - "чтобы такая защита не была похожей на защиту (отсутствие запроса паролей), а вызывала полно недоумение и отбивала желание редактировать и что либо копировать").

Но можно придумать какие-то искусственно-придурошные способы. Например: написать для графических документов библиотечку, которая будет:

-- сливать все виды в системный, масштабируя все элементы физически (ну то есть делать, как чертят люди, не умеющие пользоваться видами -- отрезок 100 мм, который должен быть в масштабе 1:5, превращать в отрезок 20 мм в масштабе 1:1)

-- значения всех размеров превращать из автоматических в ручные (чтобы на том самом отрезке 20 мм стоял размер 100)

-- размеры, допуски, таблицы и т.д. и т.п. заменять примитивами (стрелочка, состоящая из трёх отрезков, и тому подобное)

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

Т.е. при открытии всё будет нормально видно (и можно распечатать или перерисовать -- т.е. полностью от кражи идеи это не зашищает). А вот при попытке выделить или переместить линию она будет разваливаться на точки или чёрточки. А если даже скопируешь всю эту кучу чёрточек -- застрелишься при необходимости поменять несколько размеров.

Но это надо именно библиотеку делать. И держать у себя нормальный исходник файла, а потенциальным недобросовестным использователям отдавать версию файла, "испорченную" этой библиотекой.

P.S. Для 3D пока не придумала, но тоже что-то в этом роде. Или как минимум вставить деталь-заготовку без истории.

Вячеслав

Цитата: Uhbif от 19.01.11, 15:46:46
Проблемка заключается в том, что нужно, что бы чертеж компаса(или 3Д-шка) которая попадет в руки постороннему человеку смогла открыться и этот файл можно было просмотреть, НО редактирование было полностью невозможным, или вовремя редактирования начинали твориться "Чудеса" с чертежом(типа все само по себе разъезжается и т.п.).


А сохранения чертежа в растровом формате недостаточно? Или нужно поиздеваться над студентами Харьковского политеха?  :)

Алхимик

Цитата: Администратор от 19.01.11, 16:41:29
P.S. Для 3D пока не придумала, но тоже что-то в этом роде. Или как минимум вставить деталь-заготовку без истории.


для 3D можно рассыпать все детали на маленькие, да что маленькие микроскопические кубы или круче микроскопические шары. Потянеш за кусок он и оторвется.

sulyco

Цитата: Алхимик от 19.01.11, 17:22:10
... микроскопические шары.

Так называемые молекулы. Аль бо атомы. Это будет определяться по назначенному для детали материалу.  88))

Администратор

Цитата: Алхимик от 19.01.11, 17:22:10
для 3D можно рассыпать все детали на маленькие, да что маленькие микроскопические кубы или круче микроскопические шары.


IMHO, в 3D прямое повторение этого приёма малореально:

1) Прикиньте, сколько "микрошариков" нужно для составления даже самой примитивной модели (чтобы она при этом приемлемо выглядела). И с какой скоротью будет открываться модель, содержащая такое количество элементов.

2) Чтобы разложить отрезки, окружности и даже сплайны на маленькие чёрточки или прямоугольники, достаточно знаний школьний геометрии (ну, макимум, первый курс института). Чтобы "набить" микроэлементами оболочку не самой сложной 3D-модели, боюсь, знания математики нужны уже на уровне геометрического ядра КОМПАС. Да и API, в отличие от случая с 2D, будет намного меньше помогать.

Так что я всё же склоняюсь к тому, что для 3D-модели надо любым способом лишать её истории построения. А чего-то такого, чтобы она "разваливалась" или странно себя вела при попытке копирования или редактирования,  как-то не придумывается :)

sulyco

А разве это не просто преобразование твердотелки в облако точек?  :o

Администратор

1. Каких точек -- математических? Они же ведь без веса и объёма -- что с ними дальше-то делать?

2. Насколько знаю, облако точек можно получить из поверхности, но не из твёрдого тела. И всё равно вопрос №1.

sulyco

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

Администратор

Вы поймите: "облако точек" -- это математические точки. Даже если их наставить густо-густо, они не смогут имитировать изображение поверхности (ни цветом, ни гладкостью, вообще никак).

Один длинный геометрический отрезок можно неотличимо имитировать набором коротких отрезков. Но нельзя набором _математических_ точек. Так же и с поверхностями и телами.

Sinus

1. Сходу напрашивается перегнать все чертежи в в акробатовский формат PDF и пусть смотрят. Модели тоже можно перегнать в че-нибудь, например в тот же акробат-3D.
2. Если поразмыслить хорошо бы в компасе ввести такую же защиту документов как в акробате.
Раздельные разрешения на просмотр, редактирование, копирование, подписывание, заполнение форм и т.д. и т.п.
3. Если же Вам хочется:
Цитата: Uhbif от 19.01.11, 15:46:46
Важно тоже что бы такая защита не была похожей на защиту(отсутствие запроса паролей), а вызывала полно недоумение и отбивала желание редактировать и что либо копировать с этого файла у того кто хочет использовать уже проделанный труд.

и чертежей не сильно много в пределах десятка, приходит на ум: сохранить в jpg  с хорошим разрешением (допустим разрешение точек на дюйм 450) в цвете. Создать новый чертеж, изменить его оформление на "без оформления", создать в системном виде новый слой вставить туда полученную картинку взяв ее в документ! (а не ссылкой!). Сменить активный слой на системный слой в системном виде, а новоиспеченный слой с картинкой сделать фоновым слоем. Получаем не редактируемый компасовский файл чертежа. Минусы этого всего такие: Слишком много телодвижений надо, размер файла увеличивается в десятки раз, и кто хорошо знаком с компасом и с работой с видами и слоями сразу поймет в чем дело.
4. Ну а с моделями все понятно. Модели лишить истории.

Kirilius83

А почему тогда просто не давать картинками?
Для 3Д есть специальная прога, импортируешь в ее формат, там вроде редактировать нельзя, только просмотр...

Администратор

Варианты сохранения в другие нередактируемые форматы рассматривались многократно в других темах. И там их и нужно обсуждать :)

Пожелание "ввести в КОМПАСе защиту как в Акробате" также обсуждалось подробно, смотрите в этой конференции.

Я так понимаю, что в настоящей теме автору хочется, чтобы "это" выглядело как документ КОМПАС, было документом КОМПАС, открывалось КОМПАСом, не было похоже на защищённый каким-либо образом документ, но тем не менее давало только просмотреть себя, а при любой попытке "потрогать" сходило бы с ума :)

Вячеслав

Лично моё мнение: подобная защита файлов от редактирования - извращение, аналогичное хоккею на траве и балету на льду.

Администратор

По-моему, это намного хуже, чем хоккей на траве и балет на льду :)

sulyco

написать макрос, вживляемый в чертеж или в модель. Работа макроса такова, что вызов на любой команды, не связанной с просмотром (наздом-перемещением-поворотом) или с печатью, вызывает "вылет" Компаса.

Администратор

А что, в КОМПАСе можно написать такой макрос, который будет запускаться без просьбы пользователя (т.е. фактически вирус)?

sulyco


Администратор

Ну, если Вы умеете это делать, то Вам виднее :)

sulyco

не, я, конечно, не умею, но думалось, что "компутер может все, что хочет от него человек". Ну, кроме разве что "большой красной кнопки", да и то временно  88))