打破"安全黑洞"金山卫士开源计划细则
泡泡网软件频道12月3日 日前,金山网络正式宣布启动金山卫士开源计划,表示此计划旨在打破“安全黑洞”,并建立透明互信的互联网安全环境。其具体内容包括:开放金山云安全客户端应用框架以及服务端应用接口;逐步开放金山卫士产品的所有源代码;任何第三方均可无条件分享、使用、编译金山开源计划提供的专业安全产品,以此构建开放、透明、分享的互联网安全新秩序。
金山卫士开源计划发布后顿时引起业内外许多人士的关注,并有很多网友对此开源计划提出了若干疑问,针对这些疑问金山网络官方逐一给出了详细解答,本文收录了大多数程序员关注的一些常见问题。
1.金山卫士开源方式是什么?
使用Mercurial来管理金山卫士的源代码,Mercurial是一种轻量级分布式版本控制系统,易于学习和使用,您可以使用相关工具获取代码。
2.金山卫士开源计划遵循什么开源协议?
以Apache License V2.0作为代码的许可证,使用者在此许可证授权范围内使用代码,此许可证是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布、销售。此许可证鼓励代码共享和尊重原作者的著作权,同样允许代码修改并进行再次发布(作为开源或商业软件)。
3.代码如何获取?
可在金山网站及开源社区下载。金山卫士开源计划网址:code.ijinshan.com
4.代码如何使用?
任何人都可以自由使用金山开源出的安全作品代码,只需要依据许可证满足以下条件:
*在代码中保留 Apache License 的文本。
*在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议、商标、专利声明和其他原来作者规定需要包含的说明。
*如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache License。
*你可以在Notice中增加自己的许可,但不可以造成对Apache License构成更改。
5.如何获得技术支持?
可以通过社区提供的维基、邮件列表,直接和所有开源作品开发者进行沟通和交流。
6.代码开放步骤。
金山卫士将逐步公开开源代码,首期开源隐私保护器及漏洞扫描器。
7.如何保障安全性?
做为专业的安全公司,我们有能力保证代码库中代码的安全性,防止恶意代码的提交。所有的代码均得到专业程序员的检验和严格的测试,以确保代码的安全性。
8.如何分享代码?
金山卫士的开源模块,都将会提供开发说明文档,来指导大家使用代码。如果大家将代码的修订反馈回来,改进原代码,我们将更加高兴的将你的贡献分享给所有人!
向金山卫士开源社区贡献代码,可以通过以下两种方式:
补丁提交:
在你认可的阶段,导出补丁
通过创建“传票”附件补丁文件,或是直接在社区邮件列表中附件补丁文件;
我们将在测试分支中合并补丁,并进行测试和评估,决定是否接受补丁;
仓库版本合并:
如果你将我们的仓库克隆发布在其它支持Hg的项目托管服务中,或是能自行发布Hg仓库;
在你认可的阶段,对代码打好标签
通过创建"传票"或是直接在社区邮件列表中说明对应标签版本的URL
e.g: http://code.ijinshan.com/hg/rev/1b7b6a6bdfd0
我们将在测试分支中下拉合并你的代码,并进行测试和评估,决定是否接受修订。
9.金山卫士的开源计划将包括哪些模块?
由于开源是系统工程,需要做很多技术准备。因此金山计划在两个月的时间内逐步将金山卫士的所有模块对外开放。开放部分将包括“应用层的所有模块”以及“核心对抗层”和“云安全层”。
10.所有的模块都能公开下载源代码吗?
不同的模块有不同的开放策略。
应用层可以对所有的公众开源,第三方可以直接下载使用。
云安全的API接口开放,可以由客户端进行调用
核心对抗层由于涉及与病毒和木马的对抗,因此不能对公众全面开放,但是第三方可以通过申请成为核心开发者后进行查阅。
11.开源和源代码托管的区别?
开源是无条件将产品的代码对外公开,第三方可查看每一行代码。
源代码托管好比是在银行租了一个保险箱,把东西放进去,公众无法看到任何有价值的内容。
金山卫士开源计划将对外逐步开放产品的所有源代码。源代码对公众可见,不区分个人还是厂商,在Apache License V2.0许可范围内使用。开放源代码后,第三方均可以看到技术细节,对于有志向的开发者,可通过自己的努力来完善程序应用,不断的让产品得到进化,由此形成一套开放型的软件开发模式。开源的部分,完全可实现公众监督。
源代码托管是将源代码提供给第三方机构,机构负责保管代码,源代码仅对机构可见,公众是不可见,这就好比是在银行租了一个保险箱,代码依然是自己的,外界无法得知。由此可见,源代码托管,并不表示开放源代码,技术细节对公众来说实际上还是黑盒子,是一套自闭的系统。■
相关文章:金山“开源”:互联网安全的大同理想