基于蓝牙技术的RFID-SIM卡在SQLite中的数据存储过程分析

基于蓝牙技术的RFID-SIM卡在SQLite中的数据存储过程分析摘要:RFID-SIM卡既具有普通SIM卡一样的移动通讯功能,又能够通过附与其上的天线与读卡器进行近距离无线通信,从而能够扩展至非典型领域,尤其是手机现场支付和身份认证功能。蓝牙技术,实际上是一种低功率短距离无线连接技术,是通过由无线电收发器和链路控制器组成蓝牙芯片进行数据传输的。SQLite是一种轻量级的、嵌入式的关系型数据库。它是采用程序驱动,即由程序调用相应的API来实现数据的存取。其资源占用少, 不具有外部依赖性,能直接嵌入到应用程序中,目前已经在Android手机等许多领域中采用。讨论RFID-SIM卡非接触面的无线射频功能通过蓝牙技术在SQLite中进行数据存储的应用,系统研究了整个数据流程。
关键词:RFID-SIM,蓝牙,SQLite,Android
0 引言
目前,在非接触式用户身份认证应用领域中由于M1卡存在安全隐患,已有被具备智能刷卡功能的RFID-SIM手机卡逐步取代的趋势。将RFID-SIM手机卡应用在办公大楼、汽车、校园等的升级改造中,体现了“多卡合一、一卡通用”的需求。而与
此同时,随着Android手机操作系统盛起,其应用程度也越来越高,作为该系统的数据库SQLite,由于它实现了完备的、可嵌入的、零配置的SQL数据库引擎,因此非常适合应用于嵌入式应用开发中。于是如何将RFID-SIM手机卡里的数据保存到用户手机的数据库中,以增加数据的安全性和便于用户的查
m1卡询成了普遍关心的问题。我们将讨论怎样利用蓝牙技术把RFID-SIM卡数据保存到Android系统的SQLite中的数据库。
1 RFID数据获取
1.1 RFID-SIM卡的非接触性构成
RFID-SIM卡的非接触界面具有和普通无线射频识别RFID 同样的功能,是一种非接触式的通信技术,利用无线电波在媒体上读写相关数据、实现目标的自动识别。基本的射频识别系统一般由电子标签
射频卡)、读卡器、主机等部分组成。在EPC标准体系中, RFID系统是一个层次清晰的网络结构,如图1所示(由标签、阅读器、Savant服务器、EPC、ONS等要素构成)。电子标签中保存有约定格式的编码数据,通常会附着在物体的表面,用于唯一标识标签附着的物体;阅读器可读出电子标签上的编码,通过与电脑相连数据线将数据传入计算机,等待处理。
1.2 数据读取
标签进入读写器发出的无线射频信号区后,接收读写器发出的射频信号。无源标签或被动标签凭借线圈上的感应电流获得
能量启动标签控制电路和射频电路发送出存储在芯片中的数据。有源标签或主动标签主动发送某一频率的信号,读写器直接接受标签发射的信号进行解码后,恢复为标签的原始信息,然后送至中央计算机等应用系统,进行有关数据处理。最后系统将处理后的数据一部分送至服务器,一部分传给蓝牙设备,等待数据的传送。
2 蓝牙数据传送
蓝牙设备之间的通信主要包括了4个步骤:设置蓝牙设备;寻局域网内可能或者匹配的设备;连接设备和设备之间的数据传输。
其原理是把一块小且功耗低的无线电收发芯片嵌入到传统电子设备中。蓝牙芯片包括无线电收发器和链路控制器(LC)。无线收发器是蓝牙设备的核心,使用的无线电频段在ISM2.4GHZ 到2.48GHZ之间。控制连接包括:软件连接——链路管理器(LM)和硬件——链路控制器(LC)。LM执行链路设置、监权、配置;负责连接、建立和拆除链路并进行安全控制。LC实现数据发送和接受。逻辑LC和适应协议具有完成数据拆装、控制服务质量和复用协议的功能,该层协议是其它各层协议实现的基础。图1显示了无线收发器的主要操作和功能。蓝牙链路控制器执行基带通信协议和相关的处理过程。图1也概括了基带的主要功能,负责跳频以及蓝牙数据和信息帧的传输。
根据蓝牙的工作原理,我们可以方便的把数据在短时间内
输送到手机端,等待手机端系统的处理。
3 数据接收和SQLite数据存储
3.1 数据接收
3.2 SQLite和Java的连接
SQLite与Java的连接需要使用Javasqlite接口驱程。因为SQLite的源代码是C语言,而且上只提供了C和Tcl语言的接口,为了应用Java接口,要采用第三方的接口驱程Javasqlite。Javasqlite连接SQLite的方式通常是程序使用Java标准规范的JDBC接口,这样开发人员只要对JDBC有了解就可以了。
Javasqlite中的Java代码包含JNI接口和多个版本的JDBC 接口程序,可根据你的Java运行环境的版本选择相应的JDBC程序。Java类包加上Sqlite_jni.dll文件,组成了SQLite的Java接口库,在应用Java语言调用JDBC或JNI接口时,都是通过应用Java 的本地化技术调用Sqlite_jni.dll文件,完成对SQLite数据库的操作。
3.3 数据存储过程
SQLite采用模块化程序设计,主要由3个子系统、8个独立的模块构成。
(1)接口
由两部分组成:核心API(core AP)I和扩展API(exten-sion AP)I,核心API的函数实现基本的数据库操作,扩展API 通过创建自定义的SQL函数去扩展SQLite。
(2)编译器
在编译器中,分词器和分析器对SQL语句进行语法检查,然后把它转化为底层能更方便处理的分层的数据结构——语法树,然后把语法树传给代码生成器(code generato)r进行处理。而代码生成器根据它生成一种针对SQLite的汇编代码,最后由虚拟机执行。
(3)虚拟机
架构中最核心的部分是虚拟机,或者叫做虚拟数据库引擎VDBE,它和Java虚拟机相似,解释执行字节代码。VDBE的字节代码由128个操作码(Opcodes)构成,它们主要集中在数据库操作。它的每一条指令都用来完成特定的数据库操作(比如打开一个表的游标)或者为这些操作栈空间的准备(比如
压入参数)。
(4)后端
后端由B-tree,页缓存和操作系统接口(即系统调用)构成。B-tree的主要功能就是索引,它维护着各个页面之间的复杂的关系,便于快速到所需数据;Pager的主要作用就是通过OS 接口在B-tree和Disk之间传递页面。
该体系结构的核心是虚拟数据库引擎(VDBE)。VDBE完成

本文发布于:2024-09-23 10:24:05,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/359399.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   蓝牙   标签   数据库   进行
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议