
Apple在自家服务引入同态加密(Homomorphic Encryption)技术保护用户隐私,同时也把该加密技术Swift实作开源出来,让开发者可以更简单地在程序中应用同态加密。
同态加密技术可以在不解密的情况下,对加密数据进行计算,也就是计算过程不需要揭露数据的原始内容,而且计算结果也是加密的,唯有拥有解密密钥的一方,才能解密并查看最终结果。同态性是这种加密技术的关键,也就是加密数据和解密数据上进行数学运算后,会产生相同的结果,当明文数据运行同态操作结果是A,则对应加密数据经过同一操作后,解密后的结果也会是A。
对开发者来说,客户端可以将加密的数据发送到服务器中,服务器在加密数据上进行操作并回传结果,而服务器运行过程中不需解密原始数据,也没有存取解密密钥的权限。这种方法应用在云端服务,可进行敏感数据计算并保护用户数据隐私安全。
传统私密信息截取(Private Information Retrieval,PIR)的实作方法,是让服务器把整个数据库发送到客户端进行本地端处理,如此可以避免服务器掌握正在查找的关键字,但仅适用于小型且不会频繁更新的数据库。
而使用同态加密技术则可扩大应用场景,Apple在自家使用同态加密技术的具体案例之一,是iOS 18的Live Caller ID Lookup功能,该新功能提供来电显示和垃圾电话过滤服务,Live Caller ID Lookup会使用同态加密发送加密查找至服务器,服务器便会根据电话号码信息进行查找,但是又不会知道请求中具体的电话号码。
Apple所开源Swift同态加密套件使用了Swift Crypto中高性能低级加密原语,支持服务器端Swift,并且可使用Benchmark函数库进行简单的基准测试。