Должны ли библиотеки с открытым исходным кодом иметь цифровую подпись - PullRequest
5 голосов
/ 15 апреля 2011

Рекомендуется всегда подписывать исполняемые файлы (exe, dll, ocx и т. Д.).С другой стороны, в случае проекта с открытым исходным кодом может быть рассмотрено игнорирование вклада в проект со стороны всех других разработчиков.

Для меня это довольно этическая дилемма, и я хотел бы услышать больше мнений по этому поводу от любого из них.люди, которые были в подобной ситуации, или люди, которые участвовали в проекте с открытым исходным кодом.

Я хотел бы отметить, что этот вопрос относится к проекту с открытым исходным кодом, который был написан на C # с использованием .NET 4, поэтому когдапользователь щелкает исполняемый файл, ему или ей будет выдано предупреждение о том, что файл принадлежит ненадежному издателю, если он не имеет цифровой подписи.

Кстати, все сборки уже имеют строгие имена (подпись), но они еще не имеют цифровой подписи (т. е. с использованием сертификата подписи кода Verisign).

Ответы [ 2 ]

4 голосов
/ 15 апреля 2011

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

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

2 голосов
/ 15 апреля 2011

Сказать, что это "весьма этическая дилемма", вероятно, вывести это из пропорции.Вы определенно хотите кодовый знак ваших исполняемых файлов, и я не вижу проблемы с вашей подписью.Например, TortoiseSVN подписан «Stefan Kueng, Open Source Developer».

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

Если бы вы были в США, я бы предложил либо создать LLC или, возможно, 501 (c) (3) организация , которая освобождена от подоходного налога и позволяет отдельным лицам делать налоговые пожертвования на проект.( Многие проекты с открытым исходным кодом объединяются в 501 (c) (3) сущностей, включая WordPress и jQuery .) Я вижу, что вы в Турции, поэтому выВам придется изучить ваши местные требования для формирования какого-либо юридического лица;после создания вы сможете получить сертификат от CA от имени организации вашего проекта, а не от вашей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...