[论文解读] On the Feasibility of Attribute-Based Encryption on Smartphone Devices
本论文通过 AndrABEn(一个使用 Android NDK 的 C 语言库)证明了在 Android 智能手机上实现属性基加密(ABE)的可行性。与以往基于 Java 的实现相比,AndrABEn 实现了高达 10 倍的性能提升和显著更低的能耗,证明了 ABE 在移动应用中是可行的,尽管此前有观点认为其不可行。
Attribute-Based Encryption (ABE) is a powerful cryptographic tool that allows fine-grained access control over data. Due to its features, ABE has been adopted in several applications, such as encrypted storage or access control systems. Recently, researchers argued about the non acceptable performance of ABE when implemented on mobile devices. Indeed, the non feasibility of ABE on mobile devices would hinder the deployment of novel protocols and services--that could instead exploit the full potential of such devices. However, we believe the conclusion of non usability was driven by a not-very efficient implementation. In this paper, we want to shine a light on this concern by studying the feasibility of applying ABE on smartphone devices. In particular, we implemented AndrABEn, an ABE library for Android operating system. Our library is written in the C language and implements two main ABE schemes: Ciphertext-Policy Attribute-Based Encryption, and Key- Policy Attribute-Based Encryption. We also run a thorough set of experimental evaluation for AndrABEn, and compare it with the current state-of-the-art (considering the same experimental setting). The results confirm the possibility to effectively use ABE on smartphone devices, requiring an acceptable amount of resources in terms of computations and energy consumption. Since the current state-of-the-art claims the non feasibility of ABE on mobile devices, we believe that our study (together with the AndrABEn library that we made available online) is a key result that will pave the way for researchers and developers to design and implement novel protocols and applications for mobile devices.
研究动机与目标
- 挑战此前认为 ABE 因性能限制在移动设备上不可行的普遍观点。
- 实现并评估一个专为 Android 智能手机设计的高性能 ABE 库。
- 在相同条件下,对比基于 C 的 ABE 实现与现有基于 Java 的解决方案在性能和能效方面的表现。
- 提供一个免费、可直接投入生产的 ABE 库(AndrABEn),以促进移动隐私和访问控制领域的未来研究与应用开发。
提出的方法
- 使用 Android 原生开发工具包(NDK)在 C 语言中实现 CP-ABE 和 KP-ABE 方案,以获得底层系统性能。
- 设计 AndrABEn 为轻量级、可移植的 C 库,专为移动 CPU 和内存限制优化。
- 在相同设置下,对 AndrABEn 与 Wang 等人(2014 年)的基于 Java 的实现进行受控实验评估。
- 测量关键 ABE 操作(密钥生成、加密、解密)的执行时间、内存使用量和能耗。
- 为验证对比公平性,重新实现了 Wang 等人提供的基于 Java 的方案,尽管原始源代码不可用。
- 使用配备 1 GB 内存和标准安全参数(128 位)的三星 Galaxy Nexus 智能手机作为测试设备。
实验结果
研究问题
- RQ1与先前认为不可行的观点相反,属性基加密是否能在现代 Android 智能手机上高效实现?
- RQ2在性能和能效方面,低级 C 实现的 ABE 与高级 Java 基础实现相比如何?
- RQ3在真实智能手机设备上,ABE 操作的实际执行时间和能耗成本是多少?
- RQ4在资源受限的移动环境中,基于 C 的 ABE 库是否能显著优于现有的基于 Java 的实现?
主要发现
- AndrABEn 将 CP-ABE 密钥生成时间从基于 Java 的约 200 秒减少到 30 秒以下。
- CP-ABE 加密在 30 秒内完成,解密在 20 秒内完成,而基于 Java 的实现分别耗时约 70 秒和 80 秒。
- AndrABEn 中的 KP-ABE 操作仅需 3 秒完成密钥生成和加密,解密耗时 12 秒,远快于先前工作报告的 90–110 秒。
- AndrABEn 中 CP-ABE 操作的能耗低于每项 5 J,而基于 Java 的实现中密钥生成的能耗为 70–100 J。
- 重新实现的基于 Java 的 CP-ABE 方案密钥生成耗时约 360 秒(而 AndrABEn 仅需约 25 秒),证实了性能差距的存在。
- AndrABEn 在所有操作中均展现出一致的性能优势,执行时间、内存使用量和 CPU 占用率均显著低于先前的最先进水平。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。