佛性SEO

 找回密码
立即注册
查看: 1373|回复: 0

详解IFAA标准中的注册认证流程

[复制链接]

176

主题

178

帖子

51

积分

积分
51
发表于 2019-4-9 18:19:38 | 显示全部楼层 |阅读模式
  大家早安,这个周末,红黄蓝继续在让人不安与愤怒,北京的大清理让人深思!安智客继续来聊技术、行业!我们今天来详细了解下IFAA标准!
  IFAA有四个流程,注册、认证、注销、查询
  今天我们来说说注册和认证,注销和查询相对简单。(IFAA联盟:
  具体来说,注册过程中,APP首先会调用指纹认证界面进行手指认证,由于是APP主动发起请求注册,由于IFAATA数据从APP来的,所以首先需要验证证书,表明数据的确是从APP来的,而不是其他APP伪造的请求注册数据。注册过程中IFAATA同时还要验证数据是IFAA服务器下发的,使用IFAA服务器的公钥来验证IFAA服务器的合法性。
  IFAA服务器收到APP的数据后,根据APP的字段,下发注册请求数据。该数据包含TOKEN(用来标识业务的唯一ID)、Challenge(用来避免重放攻击)。
  然后IFAATA会获取当前认证指纹的ID,生成一对业务公私钥,连同服务器端下发的TOKEN、Challenge等保存在以TOKEN为文件名在安全存储中。IFAATA同时会获取认证器版本、DEVICEID组建返回数据,并用产线工具预制的私钥进行签名。向APP返回数据,确保IFAA服务器端确认收到的数据是此设备发的。
  IFAAServer会根据将客户端上传的消息和签名连同deviceid一起发到IFAA认证中心进行验证。IFAA认证中心根据deviceid来索引到具体的设备公钥,并使用该公钥验证签名是否匹配。
  IFAAServer发往IFAA认证中心的消息必须经过自己的私钥签名,并附加上具体的证书链,消息到达IFAA认证中心后,IFAA认证中心先使用附加的证书验证签名,再使用IFAA根证书验证该附加证书的合法性。IFAA认证中心回复给具体IFAAServer的消息将经过IFAA认证中心自己持有的私钥的签名。并将证书附加签名上。以防止认证结果的伪造和篡改。
  IFAA认证流程
  认证流程中,APP也会调用指纹认证界面进行手指认证,IFAATA同样也需要验证证书链的合法性,然后获取认证ID,读取注册时存在安全存储中的数据,将读取的last_id与获取的ID比较指纹是否匹配,如果匹配,则获取认证器版本号、deviceID等组建返回给IFAA服务的数据。并用注册时生成的业务私钥对数据进行签名。
  注册流程与认证流程相比较:
  1,注册流程是生成业务秘钥并保存文件,认证流程是通过token来读取业务秘钥对、lastID,并与认证过程中获取的lastID进行对比,判断出是否认证通过。
  2,注册流程首先是验证服务器端发过来数据的有效性,通过IFAA_CheckCert来,注册流程最后是将生成的业务秘钥对数据返回给服务器,同时使用手机在产线生成的私钥对数据进行签名。
  认证过程不处理产线秘钥。
  如何理解IFAATA端数据到IFAA服务器端数据的保密性需求?
  因为支付过程中IFAATA端数据到IFAA服务器端不会涉及到敏感数据,IFAA服务器和IFAATA之间并没有对数据保密性要求,只需要防抵赖、防篡改即可。
  IFAAServer根据注册时保存的用户公钥来验证用户校验结果的签名,如果验证通过则继续验证用户的生物特征是否匹配。两步均验证通过后,则返回给应用服务器结果。否则返回失败,应用服务器应该信任IFAAServer的验证结果,而不是客户端的验证结果。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

  • 外链吧 | 雨住水巷 | 五金修配网 | 免费优化 | 全能百科 | 万能社区 | 链接购买
  • 在线咨询

  • 外链吧正规seo交流2群

    QQ|手机版|小黑屋|佛性SEO |网站地图|网站地图

    GMT+8, 2024-10-23 00:24 , Processed in 0.063943 second(s), 23 queries .

    快速回复 返回顶部 返回列表