2

我通过文本向用户发送 10 位数字和字母代码作为 2FA 的一种方法。我的用例有点不同——不是典型的登录 2FA 代码,而是可用于解锁加密文档的密码。这就是为什么我的代码需要比几位数更长的原因。

我希望它可以被用户轻松复制——有时 iPhone 会制作它,因此您可以单击文本中的代码并轻松复制它。这出现在 6 位数字上,但据我所知,这似乎不适用于 9 位以上的数字。

是否有一套模式可以告诉 iPhone 发送的代码是验证码?像数字阈值或格式?

我当前的消息如下所示:

Thank you for signing up for XYZ. Your verification code is: JWtCtWJmD2g

我也在考虑只发送代码(没有描述)或发送两条消息——一个介绍,然后是单独的代码行。

4

2 回答 2

2

截至 2020 年 2 月,SMS 2FA 代码似乎没有标准化格式。目前,Apple 的一位工程师提议为 SMS 传送创建统一格式。

我发现 iPhone 擅长接收“这是您的代码:_____”,无论有多少位/字母数字,只要:

  • 10 个或更少的字符
  • 不是一个真实的词
  • 无特殊字符(@、&)
  • 该代码与“这是您的代码:”位于同一行
  • 至少有 1 个数字,并且不在由字母包围的字符串末尾(“7AsPlQd”和“xAsPlQd12”不起作用)

更新:2020 年 10 月:我现在可以自动复制 10 个或更少(之前是 9 个或更少)

于 2020-02-05T03:49:29.620 回答
0

上述标准是苹果公司在 8 月 4 日公布的。您现在可以使用以下格式指定自定义代码和域:

747723 is your ExampleCo authentication code.
    
@example.com #747723

第一行是自由格式文本。第二行指定代码对其有效的域,然后在#.

您还可以添加autocomplete=one-time-code到需要 2FA 代码的表单字段。

于 2020-08-04T23:49:43.277 回答