Skip to main content
QUICK REVIEW

[论文解读] UPPRESSO: Untraceable and Unlinkable Privacy-PREserving Single Sign-On Services

Chengqian Guo, Jingqiang Lin|arXiv (Cornell University)|Oct 20, 2021
Advanced Authentication Protocols Security参考文献 38被引用 6
一句话总结

UPPRESSO 是一种保护隐私的单点登录(SSO)系统,通过为用户和依赖方(RP)使用临时伪标识(PID),防止身份提供方(IdP)基于的登录追踪以及依赖方基于的身份关联。它通过将 OpenID Connect 集成的身份转换函数实现不可追踪且无法关联的 SSO,减少隐私泄露,同时不牺牲 SSO 的安全性和性能。

ABSTRACT

Single sign-on (SSO) allows a user to maintain only the credential for an identity provider (IdP) to log into multiple relying parties (RPs). However, SSO introduces privacy threats, as (a) a curious IdP could track a user's all visits to RPs, and (b) colluding RPs could learn a user's online profile by linking her identities across these RPs. This paper presents a privacypreserving SSO scheme, called UPPRESSO, to protect an honest user's online profile against (a) an honest-but-curious IdP and (b) malicious RPs colluding with other users. UPPRESSO proposes an identity-transformation approach to generate untraceable ephemeral pseudo-identities for an RP and a user from which the target RP derives a permanent account for the user, while the transformations also provide unlinkability. This approach protects the identities of the user and the target RPs in a login flow, while working compatibly with widely-deployed SSO protocols and providing services accessed from a commercial-off-the-shelf browser without plug-ins or extensions. We built a prototype of UPPRESSO on top of MITREid Connect, an open-source SSO system. The extensive evaluations show that it fulfills the security and privacy requirements of SSO with reasonable overheads.

研究动机与目标

  • 解决 SSO 中身份提供方(IdP)可跨依赖方(RPs)追踪用户登录活动的隐私威胁。
  • 防止共谋的 RPs 利用持久标识符关联用户在不同服务中的身份。
  • 在增强用户隐私的同时,保持标准 SSO 协议(如 OpenID Connect)的安全性和功能性。
  • 将 SSO 中的隐私挑战形式化为身份转换问题,实现无法关联且不可追踪的认证。

提出的方法

  • 提出一个三阶段身份转换流水线:临时 RP 身份(PID_RP)协商、IdP 将用户身份(ID_U)转换为用户伪标识(PID_U),以及 RP 端派生持久账户(Acct)。
  • 使用安全函数 F_PID_RP 为每个 RP 生成唯一、临时的标识符,隐藏 RP 的真实身份,防止 IdP 在登录过程中识别。
  • 使用第二个函数 F_PID_U 将用户的永久 ID 映射为唯一、临时的伪标识(PID_U),并将其包含在身份令牌中,确保跨 RPs 的不可链接性。
  • 在 RP 端应用第三个函数 F_Acct,通过使用临时陷门,从 PID_U 确定性地派生出一致的持久用户账户(Acct),实现在每个 RP 上的长期用户绑定。
  • 与 MITREid Connect(一个开源 OIDC 实现)集成,确保与现有 SSO 基础设施的向后兼容性。
  • 依赖椭圆曲线哈希(Hs)和安全密钥交换等密码原原子,实现身份绑定而不暴露底层秘密。

实验结果

研究问题

  • RQ1如何防止好奇的身份提供方(IdP)跨多个依赖方(RPs)追踪用户的登录活动?
  • RQ2如何防止共谋的 RPs 即使共享同一用户的永久身份,仍能关联其在不同服务中的身份?
  • RQ3我们能否在实现无法关联且不可追踪的认证的同时,保持标准 SSO 协议的安全性和功能性?
  • RQ4需要何种身份转换机制,才能在不破坏 SSO 信任保证的前提下,将永久身份与临时登录实例解耦?

主要发现

  • UPPRESSO 通过确保 IdP 永远不会知晓 RP 的永久身份(仅披露临时 PID_RP),成功防止了 IdP 基于的登录追踪。
  • 通过确保每个 RP 为同一用户派生唯一、非持久的账户,系统防止了 RP 基于的身份关联,使跨 RP 的相关性分析变得不可行。
  • 在 MITREid Connect 上的原型实现显示,当 IdP、RP 和用户共置时,平均登录延迟为 174 ms;在远程场景下为 421 ms。
  • UPPRESSO 与 OpenID Connect 及其他标准 SSO 协议保持兼容,支持无需修改现有认证流程的部署。
  • 即使存在共谋的 IdP 和部分 RPs,非共谋 RPs 上的用户活动仍因三元组(t, PID_U, PID_RP)的临时性和独立性而受到保护。
  • 通过 RP 证书绑定和 postMessage targetOrigin 机制进行的源验证,防止了未经授权的 RP 伪装,确保了安全的令牌传递。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。