1.背景
SET有一个局限,信用卡号对商家隐藏,不能防止用户提供别人的信用卡号。因此Visa开发了新的协议,称为3D安全协议(3D Secure)。SET与3D安全协议的主要差别在于,持卡人参与使用3D安全协议的付款事务时,要向签发银行的注册服务器注册,即持卡人用卡付款前,要先向签发银行的注册服务器注册。
在实际的3D安全协议事务中,商场收到持卡人的付款指令时,将这个请求通过Visa网络转发到签发银行。签发银行要求持卡人提供用户注册过程中生成的用户ID和口令,持卡人提供这些细节后,签发银行用3D安全协议注册用户数据库验证,只有用户认证成功之后,签发银行才告诉商家接收卡付款。
2.概述
下面看看3D安全协议工作的具体步骤:
第一步:用户在商家站点用购物推车购物,决定付款、用户输入信用卡信息并单击OK按钮。
第二步:用户单击OK按钮时,改向到签发银行站点。银行站点弹出一个屏幕,让用户输入签发银行提供的口令。签发银行按用户全面选择的机制认证用户。这里是使用基于用户名和口令的简单机制。这时,签发银行和验证用户口令,将其与数据库中的项目比较,根据验证结果向商家发一个消息。商家对此作出决策,并向用户显示响应的屏幕。
3.幕后情形
下图描述了3D安全内部操作流程:
3D安全内部操作流程如下:
1.客户在商家站点完成付款手续,即商家得到这个客户的所有数据。
2.商家插件程序位于商家Web服务器上,将用户信息发送到Visa/MasterCard目录。
3.Visa/MasterCard目录查询签发银行的访问控制服务器,检查客户的认证状态。
4.访问控制服务器建立Visa目录的响应,将其发回Visa/MasterCard目录。
5.Visa/MasterCard目录将付款人认证状态发送给商家插件程序。
6.得到响应后,如果用户当前没有认证,则插件将用户改向银行站点,请求银行或签发站点执行认证过程。
7.银行站点运行的访问控制服务器收到用户认证请求。
8.认证服务器根据用户选择的认证机制认证用户。
9.访问控制器服务向收款人域中的商家插件程序返回用户认证信息,将用户改向到商家站点,并将这个信息发送给仓储库中,存放用户认证历史,以便今后使用。
10.插件通过用户浏览器收到访问控制服务器的响应,包含访问控制服务器的数字签名。
11.插件验证响应中的数字签名和访问控制服务器的响应。
12.如果认证成功且访问控制服务器的数字签名有效,则商家向银行发送授权信息。