应用

技术

物联网世界 >> 解决方案 >> 物联网方案
企业注册个人注册登录

基于蓝牙通信技术和密钥芯片的手机电子钱包支付系统

  一 项目概述

  1.1 项目背景

  蓝牙(BlueTooth)是一种支持设备短距离通信的无线电技术。能在移动电话、PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用蓝牙技术蓝牙技术能够有效地简化移动通信终端设备之间的通信,使数据传输变得更加迅速高效。

  电子钱包是电子商务购物活动中常用的一种支付工具,主要适用于小额购物。在电子钱包中存放的电子货币,如电子现金,电子零钱等等。常见的电子钱包有如电话IC卡、交通乘车卡等等。

  由于蓝牙设备在手机中有极高的普及度,使用蓝牙通信实现电子钱包对硬件的更新需求小,开发复杂度相对没那么高,能够很快的直接投入应用。在通信过程中的安全主要依赖于加密算法。

  实现了该系统之后,手机不仅仅能够用做支付手段,而且能够用作门禁功能。另一方便,如果在家电之后嵌入蓝牙设备,那么就能够容易的实现一台手机与所有家电及外设通信,控制所有的家电。这样,一台手机实现购物、公交、门禁……几乎拥有无限的可能性。

  1.2设计摘要

  本项目的目标旨在实现一个使用手机作为支付终端的电子钱包支付系统。将FPGA构建为一个密钥芯片,利用手机中的蓝牙设备作为通信手段,实现整一套的电子钱包系统。密钥芯片通过蓝牙接收手机传送过来的钱包数据,解密认证,之后实施消费支付,然后改变钱包参数,通过蓝牙重写入手机之中。整个系统的关键在于三个地方:蓝牙通信的具体实现、交易协议的设计以及密钥算法的安全性。

  1.3 申请捐赠实验板

  Nexys3 FPGA开发板

  二 方案设计

  2.1 系统实现原理与需求分析

  密钥芯片系统需要提供两大功能,一个是认证,另外一个则是加密、解密数据。根据系统设计的需要,在FPGA外围需要接入一个蓝牙的通信设备,以便与手机蓝牙设备通信、交换数据。

  由于支付系统的商业性质,该系统最重要的特性就是安全性。为了实现系统的安全特性,在设计交易协议和加密算法的时候就需要有更多的考虑。以抵御非法用户的各种攻击,保护系统。

  此外,系统需要考虑一个效率的问题。用户愿意花费在支付或者认证的时间是非常短的,这种非接触式的支付必须在1秒之内完成。考虑到蓝牙的传输速率很高,通讯协议以及密钥算法的耗时则是主要的瓶颈因素。

  2.2 硬件资源配置与架构

  需要的硬件资源有:

  具备蓝牙功能的手机、Nexys3 FPGA开发板、相应的蓝牙外设

基于蓝牙通信技术和密钥芯片的手机电子钱包支付系统

2.3 软件架构

  软件层次的设计,首先涉及到密钥芯片与手机端的交换数据的过程,然后是外设(PC)控制芯片并与芯片交换数据的过程。在外设控制芯片的设计时,主要与具体的应用有关。如果是实现门禁功能,可能外设只需要实现开门或者拒绝认证的功能则可,如果是实现支付功能,则需要从外设中获取具体的扣费信息,并返还认证、扣费成功与否的信息给外设。同时,外设需要设定其扣费额度等信息,配置密钥芯片的运行。

  本系统实现的是电子钱包,以之为例,外设需要启动密钥芯片的扣费功能,令其开始接受外部的扣费请求;外设需要设定密钥芯片的扣费额度;当扣费成功(或者失败)的时候,芯片需要返回该信息给外设,而外设则可以做相应的处理。

  

基于蓝牙通信技术和密钥芯片的手机电子钱包支付系统

  在密钥芯片与手机端蓝牙设备交换数据的时候,需要遵循一定的交易协议。由于该协议的设计和实现是本系统的核心部分,决定了整个系统的安全性,因此需要慎重考虑。在本申请书中先提出一个草案,此草案将在具体项目实施的过程中逐步完善,已达到所需的安全性。首先在密钥芯片被设定为可接受请求状态,接着手机端主动发出认证请求,之后密钥芯片返还一段随机明文要求其签名。手机端签名后发送给密钥芯片获得认证。接着手机端获得密钥芯片返还的认证成功的信息之后将加密过的电子钱包数据发送给密钥芯片。芯片完成解密、扣费和加密之后将数据返回给手机端。手机端存储芯片返回的数据,并通知芯片存储成功。整个扣费过程就此结束,接着芯片返回初始状态,等待下一次认证请求。

  下图将给出整个业务的粗略流程图。为了保证整个流程的安全性,在实际开发中需要使用到时间戳、唯一可识别序列号、签名私钥等等信息,而图中为了描述方便,省略这些信息。而在实际的开发中,这些要素是必不可少的。

  

基于蓝牙通信技术和密钥芯片的手机电子钱包支付系统

  相关元器件标签:

  Nexys3 FPGA 数据手册