Законно ли реконструировать форматы двоичных файлов

Законно ли добавление поддержки стороннего формата файла в мое приложение путем обратного проектирования незашифрованного двоичного формата файла из другого приложения и чтения содержимого?


person Community    schedule 23.09.2008    source источник
comment
Вопрос, безусловно, актуален для программистов. Проблема в том, что программисты не могут ответить на него.   -  person Jörg W Mittag    schedule 24.09.2008
comment
Я поддерживаю это. Вы обязательно должны нанять адвоката, чтобы получить содержательный ответ на этот вопрос. Желательно с опытом работы в области интеллектуальной собственности и киберправа.   -  person Eli    schedule 29.01.2009


Ответы (7)


Зависит от вашего местоположения. В ЕС специально разрешено (статья 6 Конвенции ЕС о программном обеспечении) «реконструировать форматы файлов с целью обеспечения совместимости».

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

person Martin Beckett    schedule 23.09.2008

Зависит от рассматриваемого формата, вашего местонахождения и т.д. И это не "взлом", а скорее "реверс-инжиниринг".

Проконсультируйтесь с юристом, с лицензиями приложений, которые производят форматы!

person NeARAZ    schedule 23.09.2008

ArsTechnica недавно опубликовала хорошую статью о законность обратного проектирования в контексте Google Chrome с использованием недокументированного поведения в Windows для некоторых его средств защиты (например, для достижения DEP в некоторых версиях Windows XP).

person Chris Upchurch    schedule 23.09.2008

IANAL, но да, я почти уверен, что это законно, пока вы не обходите какую-то систему защиты от копирования или что-то в этом роде. См. в качестве примера, что OpenOffice может читать документы Word.

person Epaga    schedule 23.09.2008

Все зависит от законов вашей страны и намерения, с которым вы осуществляете обратную разработку формата файла. Вам нужно проконсультироваться с адвокатом/адвокатом/барристером, чтобы быть уверенным. Сверились ли вы с компанией, владеющей форматом файла, чтобы узнать, есть ли опубликованная спецификация или другая информация, которая позволила бы вам взаимодействовать без необходимости обратного проектирования?

person Scott Dorman    schedule 23.09.2008

Интересно, подпадает ли это под действие DMCA в США? Как всегда, лучше всего обратиться к юристу.

person Mark Ransom    schedule 23.09.2008
comment
Раздел 1 DMCA содержит некоторые исключения для обратного проектирования в определенных ситуациях. - person Chris Upchurch; 23.09.2008

Если для этого вам необходимо нарушить условия лицензионного соглашения с конечным пользователем, это незаконно. Хотя в большинстве штатов есть законы, прямо разрешающие обратный инжиниринг, насколько я понимаю, это не «неотъемлемое право», а право, от которого вы можете отказаться на договорной основе. (Другими словами, разрешение обратного проектирования не мешает вам в любом случае согласиться не делать этого.) Однако некоторые юрисдикции идут дальше и прямо заявляют, что обратное проектирование всегда разрешено, даже если в договоре указано иное.

Если вы живете в США, DMCA, как правило, запрещает обратный инжиниринг, если для этого вам нужно обойти «технологию защиты от копирования», но делает особое исключение для ее обхода с целью создания чего-то, совместимого с форматом.

В противном случае это вероятно законно. Однако независимо от ответа здесь проконсультируйтесь с юристом.

person Nick Johnson    schedule 23.09.2008
comment
Лицензионные соглашения с конечным пользователем не могут иметь преимущественную силу перед законами штата или федеральными законами, поэтому они обычно говорят что-то вроде «за исключением… в той мере, в какой это прямо разрешено применимым законодательством», когда речь идет о обратном проектировании. Закон о защите авторских прав в цифровую эпоху имеет явные исключения для обратного проектирования в определенных ситуациях. - person Chris Upchurch; 23.09.2008
comment
@Chris: Если вы подписываете контракт, в котором говорится, что я не буду выполнять обратный инжиниринг x, а есть закон, разрешающий обратный инжиниринг, вы все равно несете ответственность в соответствии с договорным правом, если нарушаете контракт. Другими словами, обратный инжиниринг не является неотъемлемым правом. - person Nick Johnson; 23.09.2008
comment
@Chris: Вы правы насчет исключений DMCA, поскольку DMCA говорит, что вы можете обойти меры защиты от копирования, если вы выполняете обратное проектирование в целях совместимости. Я исправлю ответ. - person Nick Johnson; 23.09.2008
comment
Зависит от страны. если в законе сказано, что вы можете проводить обратный инжиниринг, и вы подписываете контракт, вы не можете проводить реинжиниринг, контракт недействителен в некоторых странах (например, в Германии). Следовательно, большинство контрактов содержат Если один пункт недействителен, сам контракт остается в силе. Законы › Все. - person Michael Stum; 23.09.2008
comment
@Michael: Разве это не означает, что в Германии контракт не может запрещать вам делать все, что вам разрешено делать по закону? И не сделает ли это контракты бессмысленными? - person Nick Johnson; 23.09.2008
comment
@Arachnid: законы некоторых юрисдикций не позволяют компаниям заключать лицензионные соглашения с конечным пользователем, в которых говорится, что я не буду проводить обратный инжиниринг X, поэтому в большинстве лицензионных соглашений с положениями о обратном инжиниринге есть исключения, подобные тому, которое я цитировал ранее. См., например, раздел 5 лицензионного соглашения Windows XP. - person Chris Upchurch; 23.09.2008
comment
Ах. Полезно знать - и хорошо иметь, ИМО. Хотя стандартная формулировка контракта состоит в том, чтобы иметь действительный шаблон целиком или частично в любом контракте. - person Nick Johnson; 23.09.2008
comment
Arachnid: Точно, в Германии вы не можете запретить мне делать что-либо, что разрешено законом, но, конечно, вы можете запретить мне что-либо еще в контрактах. Это одна из причин, по которой Microsofts OEM-Only For Sale with a New Computer-Restriction не применяется в Германии. - person Michael Stum; 23.09.2008
comment
(Обратите внимание, что могут быть крайние случаи, такие как B2B, но на высоком уровне Закон › Контракты) - person Michael Stum; 23.09.2008
comment
Что, если вы сами никогда не согласитесь на EULA? Существуют методы чистой комнаты, когда одна команда реконструирует и документирует, а другая команда реализует документы первой команды. Что, если третья команда сделает все, о чем ее просят, после того, как согласится с лицензионным соглашением? - person David Thornley; 29.01.2009
comment
Вы также можете расторгнуть лицензионное соглашение. Если вы хотите быть железным, пусть это сделает юрист. Во многих местах действуют законы, запрещающие контракты неопределенной продолжительности, поэтому положения о обратном инжиниринге никогда не прекращаются автоматически. - person Zan Lynx; 24.02.2010