苹果
「了解个人脉络资讯是AI真正有用的关键,但要用正确的方式来取得,用户不应交出种种生活细节,就为了存到业者AI云上来分析。」苹果软体工程资深副总裁Craig Federighi在WWDC产品发表,点出了现今云端GAI应用最大的两难。
GAI模型需要个人化的资讯,才能提供更准确的建议或行动,但是越强大的LLM越需要算力来推论,只能上云。这就导致,使用者得提供种种个人化的资讯,上传到公云上的GAI服务,可是,又无法确保,GAI业者会如承诺地,不将这些个人私密资料用来训练模型,甚至有些业者干脆调整使用条款,如Meta,宣布日后上传到脸书的公开贴文,将成为模型训练的素材。
如何以「正确的方式」取得,让用户保有最大的隐私自主权,这是苹果AI战略实现「私有化」最关键的一步。苹果不只承诺,从来不会使用用户资料来训练模型,更采取了云地混合架构的AI运算,优先采用装置端AI,当地端模型不敷使用时,改由一个「私有云端运算」(Private Cloud Compute,简称PCC)上的模型来接手推论。
苹果甚至强调,PCC创造了一个全新的云端AI隐私标准。这个隐私标准包括了三项准则,包括了「你的资料永不保留」、「只用于你请求的用途」以及「可验证的隐私承诺」。苹果强调,「私有云端算力」服务,将会遵守这三项要求,会开放第三方来查验。
为了落实这三大隐私准则,来打造高度私有的云端运算环境,苹果采取了5个PCC安全设计原则。一是采取无态运算来处理个人资料,避免资料留存在PCC上遭追踪。其次是用技术确保隐私承诺能做到最强,像是避免靠外部机制或元件来确保安全。第三个原则是禁止任何runtime执行阶段的特权存取,像是移除特权存取功能,就能彻底杜绝管理者绕过隐私控制机制。第四要避免遭攻击锁定的能力,要想办法特定节点遭入侵,导致特定使用者的资料被窃取。最后一项原则也是业界少有人做到的是可验证的透明度,开放给第三方资安研究人员,来验证自己的安全性保证。
苹果在PCC上,如何实践上述五项安全设计,可以分三个层次,从硬体安全、软体安全和安全验证来说明。
从硬体安全、软体安全和安全验证来看PCC隐私实践
先从底层硬体安全开始,PCC的运算节点采用的是苹果晶片的伺服器,苹果自制的系统单晶片,包括了手机、平板和笔电用的M系列或是伺服器用的M2/M3 Ultra系列等,除了内建CPU、GPU和AI运算用的NPU之外,最大特色是内建了一个安全隔离区(Secure Enclave),内有一个开机ROM、AES加密引擎以及产生密钥需要的资料,可以用来处理作业系统上的任何加密、解密需求。
当用户的AI推论请求,从苹果装置传送到云端的PCC节点,在云端进行推论计算,再将结果回传到装置上,都可以使用装置或云端PCC上的晶片硬体加密引擎来提供端到端的加密保护,这也正是苹果采用自家晶片伺服器来打造PCC的原因之一,可以采用同一套硬体晶片加密技术来确保安全,也能用晶片制造时就内建的ROM来确保开机安全。这是苹果PCC运算环境的信任基础。
在PCC软体架构层的安全上,PCC的软体架构包括了4层,最底层的私有云软体OS,维运需要的私有云外挂程式,提供给SRE用工具就属于这类外挂,第三层则是Swift语言打造的ML软体架构层,最上一层则是苹果各种伺服器端执行的大型模型。
进一步来说,PCC节点伺服器底层所用的作业系统,是一个客制化版本。苹果以iOS和macOS为基础,改造出了一款特殊修改过的新版作业系统,保留了执行LLM推论需要的相关元件,来减少软体的攻击面,降低资安风险,也引进了iOS的安全机制,例如程式码签署和安全沙盒,只有经过授权和加密测量的程式码才能在节点上执行。
尤其,这款新OS更移除了传统资料中心管理者惯用的通用管理工具,例如移除了SSH和远端shell工具,改为只提供SRE人员需要的特定用途可观察性工具。并且采用了Swift语言,打造了一套Swift on Server机器学习软体架构,来执行云端基础模型的推论运算。
使用者上传的资料,只会在处理请求的PCC节点上进行推论计算,完成请求后就会删除,不会用任何形式保留,例如像是不会保留在Log或除错讯息中。因为每一次重新启动时,就会随机产生新的加密金钥,也会用加密方式擦除资料也只有获得授权的PCC节点内部的程式,才有权解开端到端全程加密的资料,就连苹果任何员工,都无法解开、看到这些使用者的资料,已无法透过特权工具或机制,来存取得这些节点内的资料。
PCC节点提供给SRE所用的可观测性数据,也经过隐私考量设计,不提供通用性日志记录,而只提供预先设计、结构化和经过跨团队层层审查的Log和指标资讯,才能离开PCC节点,来确保使用者资料在系统管理过程中不会外流到节点外。
透过这一套专为AI推论量身打造的软体技术架构,搭配苹果自制硬体晶片,就可以满足三大AI隐私标准的前两项,至于第三项「可验证的隐私承诺」,苹果的作法更是独树一格。
苹果智慧采取了一套「私有」的云地混合云架构,使用者有最大的资料自主性,连苹果都无法偷看。 自制晶片上的安全隔离区(Secure Enclave)是最关键的信任基础,更释出云端执行环境的映像档和安全相关程式码,来获取全世界的担保。图片来源/苹果
苹果独创的隐私承诺验证新作法
苹果直接释出了正式版本的云端执行环境软体映像档,释出给第三方验证,来审视,苹果自己实际在云端节点所执行的环境,确实做到如他们所承诺的安全保证那样。这个软体映像档包括了PCC私有云软体OS、私有云端外挂程式,以及ML软体架构层,等于是执行大型语言模型需要的所有软体,都在这个映像档中,只有上面的大型语言模型参数和ML程式码没有释出。
释出自家软体映像档,提供给第三方查验安全性,不是苹果独创的作法,有不少软体业者也愿意或公开自家软体程式码或映像档,来证明和担保自家软体的安全性,但多数软体业者释出的版本,虽然也是正式版本,但不一定是实际真正执行的版本,实际在云端主机上执行的,可能是更新更多功能的新版本,或是经过优化、微调后的版本。苹果不只释出实际使用的正式版本,还有一套方法向外界证明。
苹果在年底PCC对外启用后,会发布一个采取了加密防篡设计的公开日志,只能新增纪录不能删除,上面会释出,PCC节点上所有程式码执行的量测数据。另外,也会释出相关软体二进位映像档,供研究人员与日志上的Log纪录比对。苹果也会提供一套官方工具,让资安研究人员分析PCC节点上的软体,最后是透过苹果资安漏洞奖励计划,来奖励那些发现新漏洞的研究人员。
每一个使用者的装置要将资料上传到PCC节点上进行AI推论时,会比对PCC节点上软体的公开金钥,是否符合公开日志上正式版本的软体,而节点上的所有程式码,也同样透过程式码签署技术,来确保属于公开日志上纪录的版本。换句话说,苹果智慧要将资料传到PCC上进行推论时,只能传送到使用了第三方验证软体的PCC节点。苹果透过这个方式,由第三方来查验和担保,PCC云端AI推论主机所用的软体,都是符合苹果对外隐私和安全保证的版本。
苹果还提供了一套PCC虚拟研究环境,可以在本地端Mac上模拟出一个PCC节点,来查验上面软体的功能。不只是释出PCC节点的映像档,甚至,苹果承诺会定期释出资安相关的PCC原始码,提供资安人员检查。
为了证明,自家云端AI是一个高度保护使用者隐私的环境,连苹果自己都无法滥用、偷用的环境,苹果大胆采取了开放完整映像档和关键程式码的作法,更是借力使力,让全世界的资安人才都来帮自己强化安全的高招。
不只如此,自制晶片上的安全隔离区,正是苹果这套私有「云地混合」架构最重要的信任基础,也是最大的差异化特色。透过原厂晶片上的硬体建立信任基础,来确保整个架构的安全,这是其他单靠自家软体,搭配第三方硬体晶片,所难以实现的安全完整性。随著科技巨头争相自行打造晶片,内建硬体安全也将成为新的晶片标准配备。
「你的资料,就是你的资料」这是科技巨头常标榜的顾客「资料自主性」承诺,相当于是苹果「你的资料永不保留」和「只用于你请求的用途」这两项AI隐私原则的要求,但苹果以独创的作法,实践了「可供第三方验证」原则,再一度创造了云端AI隐私的新标准。