首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在原生FIDO2 (WebAuthN)中实现iOS

在原生FIDO2 (WebAuthN)中实现iOS
EN

Security用户
提问于 2020-10-30 22:47:48
回答 1查看 1.8K关注 0票数 2

我目前正在研究使用Swift在本机FIDO2 (WebAuthN)中实现iOS支持的想法。我知道在本机FIDO2中不支持iOS,只能通过Safari本地应用程序获得,但是Safari不是我目前正在考虑的一种选择。

其思想是实现FIDO2接口,遵循规格,利用安全Enclave作为密钥存储,并通过本地身份验证执行用户身份验证。

据我所知,如果我们在CryptoKit或第三方中使用安全Enclave和一些密码库,我应该能够在本地实现FIDO2接口。我看到在iOS中只有两个库可用:

  1. yubikit-ios:使用Yubico的安全密钥作为密钥存储
  2. WebAuthnKit-iOS:使用安全飞地作为密钥存储;本机实现,但目前未主动维护。但在遵循规范的同时还有一些缺失的小插曲。

我试图通过FIDO联盟验证这种方法,但他们对此表示怀疑,仅仅是因为苹果缺乏对本地API的支持。苹果公司似乎目前正在进行这项工作,但这并不是正式的,目前还没有确定的日期。另外,我想支持较早版本的iOS。

对于那些是安全专家和FIDO2遵从性的人来说,这是否有意义在本地实现它?或者我们是否看到了使用安全飞地实现FIDO2的任何重大/关键问题?

感谢您的任何想法和建议!

EN

回答 1

Security用户

发布于 2022-03-22 15:09:25

有了iOS 15,现在就可以使用一个新的API了。它既支持平台(苹果称这些“传递密钥”,并通过iCloud密钥链共享这些密钥),也支持可移植身份验证器。

正如您提到的,对于允许NFC读取器访问的早期iOS版本,在应用程序本身中通过ISO 14443实现CTAP2是可能

请注意,在SDK方法中,围绕认证的域绑定存在一些安全问题(因为在该场景中,应用程序基本上可以获得未经过滤的身份验证器访问,而不是像本机API或WebAuthN那样仅限于经过身份验证的域)。

考虑到这些担忧,我不确定苹果是否还会授予FIDO的NFC权限。

票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/240267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档