关闭

软件是脆弱的

数字信息有很多可能丢失、更改或变得无用。

  • 意外或恶意的人为干预可能会导致删除重要信息,而丢失、不完善或未经测试的备份过程可能会阻止其恢复。 
  • 逻辑格式的更改或所需执行环境的丢失可能导致无法访问、读取、解释、验证或使用数字信息。
  • 缺少或不充分的引用机制可能会破坏我们识别相关信息的能力,即使这些信息没有丢失,否则仍然可读。
  • 加密保护我们的隐私,但也防止在密钥丢失时恢复信息。

几个例子胜过1000个单词

大规模丢失源代码

我们永远不会知道,为修复众所周知的2000年错误(或Y2K)在1999年12月31日之前:宣布的重大灾难实际上从未实现,但这是因为错误的重要实例被及时修复,还是仅仅因为最初没有真正存在重要的错误?

不管发生了什么,修复Y2K错误的竞赛揭示了这一点40%的病例,受影响方(行业、机构等)丢失或错位需要修复的软件的源代码。在某些情况下,他们从未拥有源代码!

恶意攻击软件基础设施

2014年夏天,一名攻击者获得了对CodeSpaces控制面板的访问权,并要求金钱换取将控制权释放回CodeSpace(参见CodeSpaces网站(截至2014年8月)).

当代码空间不遵守并试图收回对其自身服务的控制时,攻击者开始删除资源。

CodeSpaces是一家为软件开发提供托管解决方案的公司,此次攻击严重危及所有托管的软件。

关闭软件开发服务

2015年3月,谷歌宣布破产自2006年推出以来,谷歌代码服务已经使用了多年。

虽然已经宣布了迁移日历,但到2016年底,所有托管的代码都将消失,只有少数例外。

那些重要的软件,其维护者已经离线了?谁会冒着丢失知识的风险来保管这些知识?

关闭软件开发服务(再次)

2015年5月,Gitorious也宣布其免费软件开发托管服务将停止。感谢存档团队,将保留最初在Gitorious上开发的软件项目的只读副本。但要多久呢?

当某个主要软件开发参与者的下一次合并、收购或业务优先级发生变化时,我们会怎么做?

参考机制不足

众所周知,URL(统一资源定位器)不提供持久性。

……无法保证某个URL在某个时间指向给定对象时会继续这样做

T.Berners-Lee等人,RFC 1738

然而,这仍然是当今最常用的机制,用于引用长期应可访问的信息,如科学文章,在查找对特定实验或应用程序重要的软件时会产生灾难性的后果。

…引用URL的半衰期大约为自其发布日期起4年

D.斯皮内利斯。URL引用的衰退和失败。
ACM通讯,46(1):71-772003年1月。

软件遗产项目

我们正在建造有史以来最大的软件源代码存档。 我们正在努力确保我们不会失去重要的软件或其发展历史。我们正在努力最大限度地提高我们不丢失部分软件通用项.