

免费预览已结束,剩余56页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录前言第一章 系统开发背景1.1公交子系统目标1.2关于本系统概述1.3关于本系统所用des算法实现过程分析第二章 系统需求分析.2.1 公交子系统需求分析.2.2 发放密钥系统需求分析.第三章 系统设计3.1 系统流程图3.2 数据库设计 3.2.1 表的结构设计3.3 安全性设计 第四章 系统实施.4.1 系统开发工具选择 4.1.1 前端开发工具 4.1.2 后台数据库开发工具4.2 主要程序部分源代码介绍第五章 系统运行5.1 系统运行环境 5.1.1 本机硬件环境. 5.1.2 本机软件环境.5.2 系统操作 5.2.1 系统登陆. 5.2.2 帐号管理. 5.2.3 密钥发放系统查询 5.2.4 模拟发放密钥 5.2.5 编辑结果.5.3 系统主要窗体及说明第六章 毕业设计总结参考文献附录等. 前言1993年以来,随着国家金卡工程的实施,国际上先进的ic卡应用技术被引入我国。而随着我国信息产业及城市建设的不断发展,城市一卡通这个新概念也走入了我们的生活。城市一卡通系统就是采用先进成熟的计算机技术,构筑城市一卡通应用的信息平台,为城市信息化管理提供科学依据。目标系统将涵盖公交、地铁、自来水、电业、煤气等城市公共事业各个方面。通过城市一卡通实现客运、地铁的消费、煤气、自来水、供电的结算等一卡化,统一规范,信息共享,一卡多用,方便使用,为城市居民提供方便的优质服务,提高整个城市的生活质量 。由于沈阳市城市一卡通工程项目关系到市民的切身生活,关系到各个加入业主的利益。因此,系统的安全设计尤为重要。沈阳市城市一卡通安全系统的实施,使全市形成一个完整的智能卡运营系统,构建出一个具有高安全性、高可靠性、可扩充的一卡通系统平台。第一章 系统开发背景1.1 公交子系统目标沈阳位于中国东北地区的南部,是东北地区的中心城市,是连通关内与东北各地的咽喉。沈阳市总面积为12980平方公里,其中城区面积185平方公里。1999年沈阳市总户数为212.6万户,其中市中心区(市内五区和郊区九个街道)户数为112.6万户,全市人口总数677.1万人,其中市区480万人。城市信息网络已初步建立,以isdn(综合业务服务网)和psdn(公共电话网)为主,这为城市信息化建设提供了良好的网络基础。针对上述城市自然状况,在沈阳比较适合实施城市信息一卡化的发展目标,实现公交、地铁的消费、煤气、自来水、供电的结算等一卡化,实现统一规划,信息共享,一卡多用。一卡化方便用户使用,为城市居民提供方便的优质服务,提高整个城市的生活质量。沈阳城市一卡通具体功能需求为在非金融领域实现“一卡多用”。城市一卡通公交子系统的目的,是把目前公共汽车的无人售票及其它售票方式以ic卡电子收费作为支付手段,以计算机系统为信息处理方法的现代化管理系统,一方面能加快客运汽车的收费速度、提高效率、方便市民;另一方面自动化处理客运信息、准确结算、动态分析,为客运企业的运营,城市交通的管理,城市建设及发展奠定良好的基础。1.2 本系统概述本密钥管理子系统完成整个系统的各种密钥生成、分配、装载和更新功能。通过密钥管理子系统,实现管理部门能够对整个系统的进行安全布控,从而使得整个系统运行置于管理部门的安全控管,消除了研制、生产单位对系统的安全构成的威胁。这样,从根本上保护了应用管理部门的利益不受侵害。密钥管理子系统通过逐级发卡初始化实现密钥生成、分配、装载。各城市首先由主管领导生成城市总控卡,并结合建设部发放的城市主密钥卡生成城市密钥母卡。由城市密钥母卡生成并装载isam卡、esam模块和用户卡密钥。沈阳市一卡通工程项目系统在设计时重点考虑了安全要求。在系统运行的各个环节采用多项安全措施,如:采用高安全的交易流程,关键数据加带数据签名密文传输,应用系统叫色授权管理。并却选取高安全性系统平台产品,应用系统安全设计与系统平台产品的安全性相结合,保证系统的安全。系统中交易安全通过采用金融规范来保证;系统运行的安全通过确保网络系统安全来实现,信息安全主要是保证信息传输安全和存储安全。1.3 des算法实现过程分析1.处理密钥:1.1从用户处获得64位密钥.(每第8位为校验位,为使密钥有正确的奇偶校验,每个密钥要有奇数个”1”位.(本文如未特指,均指二进制位)1.2具体过程:1.2.1对密钥实施变换,使得变换以后的密钥的各个位与原密钥位对应关系如下表所示:表一为忽略校验位以后情况 57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,41.2.2把变换后的密钥等分成两部分,前28位记为c0,后28位记为d0.1.2.3计算子密钥(共16个),从i=1开始。1.2.3.1分别对ci-1,di-1作循环左移来生成ci,di.(共16次)。每次循环左移位数如下表所示:循环次数12345678910111213141516左移位数11222222122222211.2.3.2串联ci,di,得到一个56位数,然后对此数作如下变换以产生48位子密钥ki。变换过程如下:14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,321.2.3.3按以上方法计算出16个子密钥。2对64位数据块的处理:21把数据分成64位的数据块,不够64位的以适当的方式填补。22对数据块作变换。bitgoestobitbitgoestobit581573350249344234135344333626525371861738107939281406095941521051424411434336123544281327452014194612151147416348621761495418535046194551382037523021295322222154142313556245566425635756265558482747594028396032293161243023621631156383276423将变换后的数据块等分成前后两部分,前32位记为l0,后32位记为r0。24用16个子密钥对数据加密。241根据下面的扩冲函数e,扩展32位的成48位32,1,2,3,4,5, 4,5,6,7,8,9, 8,9,10,11,12,13, 12,13,14,15,16,17, 16,17,18,19,20,21, 20,21,22,23,24,25, 24,25,26,27,28,29, 28,29,30,31,32,1242用eri-1与ki作异或运算。243把所得的48位数分成8个6位数。1-6位为b1,7-12位为b2,43-48位为b8。244用s密箱里的值替换bj。从j=1开始。s密箱里的值为4位数,共8个s密箱2441取出bj的第1和第6位串联起来成一个2位数,记为m.。m即是s密箱里用来替换bj的数所在的列数。2442取出bj的第2至第5位串联起来成一个4位数,记为n。n即是s密箱里用来替换bj的数所在的行数。2443用s密箱里的值sjmn替换bj。8个s密箱如下所示:-s-boxes1binaryd1d6=00011011/d2.d5/dec0123000001404150001141511200102137148001131482010042141340101515269011061113210111781117100083101551001910612111010106129310111112117141100125931011011395100111014035611111578013-s-boxes2binaryd1d6=00011011/d2.d5/dec0123000001530130001111314800102847100011314711101004615103010151124150110638134011174141210008912511100197086101010211271011111310612110012126901101130935111014511214111115105159-s-boxes3binaryd1d6=00011011/d2.d5/dec0123000001013131000110761000102904130011314990010046386010153415901106156380111751007100081211410019138115101010125214101111714123110012111251111011341110511101421514211111581712-s-boxes4binaryd1d6=00011011/d2.d5/dec0123000007131030001113861500102141190001133506010040612100101561511101106907130111710313810008141591001927141010108235101111512141111001211151211011312102711101441482111115159414-s-boxes5binaryd1d6=00011011/d2.d5/dec0123000002144110001112112800102421120011311211701004741010101510713140110611137201117618131000885156100195091510101031512010111115105911001213361011011309341110141480511111596143-s-boxes6binaryd1d6=00011011/d2.d5/dec0123000001210940001111514300102104152001131525120100497290101521285011066912150111785310100080671110019131014101010313411011114141071100121401611011371113011101453118111115118613-s-boxes7binaryd1d6=00011011/d2.d5/dec0123000004131600011110411001022111113001131471380100415412101015093401106817100111713101471000831410910019123155101010956010111171281511001252014110113101552111014689311111516212-s-boxes8binaryd1d6=00011011/d2.d5/dec01230000013172000112151110010281341400113481701004610940101515312100110611714801117142131000810120151001995612101010361091011111411130110012501531101130143511101412956111115728112444返回2441直至8个数据块都被替换。245把b1至b8顺序串联起来得到一个32位数。对这个数做如下变换:bitgoestobitbitgoestobit16121772818203241921414202953221126272228732317892419192515101326231130272612628513222918141130311543110162532246把得到的结果与li-1作异或运算。把计算结果賦给ri。247把ri-1的值賦给li。248从241循环执行,直到k16也被用到。25把r16和l16顺序串联起来得到一个64位数。对这个数实施22变换的逆变换。以上就是des算法如何加密一段64位数据块。解密时用同样的过程,只需把16个子密钥的顺续颠倒过来,应用的顺序为k16,k15,k14,。k1。第二章 系统需求分析2.1公交子系统需求分析城市一卡通公交子系统的目的,是把目前公共汽车的无人售票及其它售票方式以ic卡电子收费作为支付手段,以计算机系统为信息处理方法的现代化管理系统,一方面能加快客运汽车的收费速度、提高效率、方便市民;另一方面自动化处理客运信息、准确结算、动态分析,为客运企业的运营,城市交通的管理,城市建设及发展奠定良好的基础。2.2发放密钥系统需求分析2.2.1 需求概述在系统设计中,既考虑信息资源的充分共享,又要注意信息的保护和隔离,因此系统应针对不同的应用和不同的网络通信环境,采取不同的措施,包括系统安全机制,数据存取的权限,数据传输的加密等等。2.2.2需求分析2.2.2.1系统保证交易数据的安全性,交易内容不可被复制,修改和删除2.2.2.2系统保证交易的安全性,杜绝非法交易。防止用户通过非法手段窃取数据。2.2.2.3系统确保数据的正确性和完整性2.2.2.4系统确保操作人员的合法性,严格授权,未经过系统授权的人不能进行相关操作或者访问相关数据。在考虑技术先进性和开放性的同时,还应该从系统结构,技术措施,设备性能,系统管理,厂商技术支持及维修能力等方面着手,确保系统运行的可靠性和稳定性,达到最大的平均无故障时间。实施密钥管理系统的目标功能o 实施对整个系统的安全布控和监控 o 实现对系统的管理权限分割和分配 o 抵御外界安全攻击,防范系统崩溃 o 实现开发人员和生产厂家的安全脱钩 o 保证应用系统正常安全运营 o 保护应用提供方利益不受侵犯 密钥管理系统必须能够保证:o 密钥生成只受控于应用提供方 o 开发人员和生产厂家不能掌握应用密钥 o 密钥调制和生成过程必须是安全的 o 密钥的装载过程必须是安全的 o 密钥的存储必须是安全的 o 某个个体密钥被侦破不能造成系统崩溃 o 密钥的工作必须是安全的。密钥的更新是必须安全的第三章 系统设计3.1系统主要算法流程图a码单b码单rmk 一级密钥(一级密钥卡)8个gmk 二级密钥(二级密钥卡)8个加密机 保存二级密钥气密钥母卡内,外,m(三级密钥卡)3个copypsam 卡copypsam 卡copypsam 卡copypsam 卡复制气密钥母卡发卡用户卡电密钥母卡内,外,m(三级密钥卡)3个水密钥母卡内,外,m(三级密钥卡)3个公交密钥母卡内,外,m(三级密钥卡)5个复制气密钥母卡发卡复制气密钥母卡发卡复制公交密钥母卡发卡 3.2数据库设计 表3.2.1 一级密钥 序号字段名称标示符类型可否为空1流水号lshintn2领导编号ldidintn3管理员idglyidintn4码单编号mdidintn5日期rqdaten6码单类别mdlbintn 表3.2.2 二级密钥 序号字段名称标示符类型可否为空1流水号lshintn2部门idbmidintn3管理员idglyidintn4日期rqdaten5密钥类别mylbintn 表3.2.3 三级密钥 序号字段名称标示符类型可否为空1流水号lshintn2管理员idglyidintn3部门idbmidintn4日期rqdaten5密钥类别mylbintn 表3.2.4 领导信息 序号字段名称标示符类型可否为空1领导名字ldmctextn2领导编号ldidintn 表3.2.5 管理员信息 序号字段名称标示符类型可否为空1管理员编号glyidintn2管理员名字glymctextn3管理员权限glyqxintn 表3.2.6密钥类别序号字段名称标示符类型可否为空1密钥类别mylbintn2类别名lbmtextn 表3.2.7 码单信息 序号字段名称标示符类型可否为空1码单mdintn2码单idmdidintn 表3.2.8 权限信息 序号字段名称标示符类型可否为空1权限编码qxidintn2权限名称qxmctextn 表3.2.9 系统日志 序号字段名称标示符类型可否为空1人员编号ryidintn2日期rqdaten3操作类型czlxtextn 表3.2.10 单位信息序号字段名称标示符类型可否为空1单位ididintn2单位名称mctextn3级别levelintn3.3系统安全性设计3.3.1 一卡通安全性设计这里介绍的是实际的城市一卡通的安全设计情况。为了确保系统的可靠与安全,确保交易的准确与完整,防止非法的攻击和破坏。系统使用ic卡金融规范中规定的交易流程来保障交易的安全,在这个流程中,密钥是重要的组成部分。密钥的产生、存储、发放、使用、更新与淘汰过程是否能保证绝对的安全可靠,保证平稳联接与过度,它直接关系到沈阳市民的切身利益,关系到运营方与各个资源方的切身利益,关系到系统的可用性,是关系到系统成功或失败的关键。密钥的产生密钥由密钥管理系统产生,产生的过程保证安全可靠,产生后分别将密钥安全的写入密钥卡和加密机中,密钥管理系统可以一次产生一组密钥,也可以一次产生多组密钥。也可以分多次产生不同版本的密钥。密钥的存储密钥平时分别存储在加密机和密钥卡中,加密机和密钥卡都是数据开盖易失的,可以保证保存的安全。其中,加密机保存在ic卡管理中心,密钥卡则由负责人保存在安全的地方。密钥的发放密钥的发放指的是用户卡、工作卡和psam卡初始化时向卡中写密钥的过程,密钥的发放使用密钥卡,由密钥卡与待发的卡通过特定的程序进行信息交互,使用安全的方式将密钥写入用户卡、工作卡或psam卡中。在用户卡中,只写入了用户卡需要的密钥,在工作卡中,只写入了工作卡需要的密钥,在psam卡中,只写入了psam卡需要的密钥。在用户卡,工作卡和psam卡中写入的密钥,是经过分散的密钥,分散的过程只可顺序进行,不可逆。密钥的使用密钥的使用指的是在交易中进行认证的过程,此过程分别由加密机和psam卡完成。机密机安装在ic卡管理中心,psam卡安装在脱机设备(例如车载机、三表表具)中,在交易过程中,与用户卡或工作卡进行安全的信息认证,确认交易的合法性。密钥的更新与淘汰密钥在使用一段时间之后,就应该主动的进行更新和淘汰,更新和淘汰的过程中,应保证系统的平稳过度,换句话说,是在普通市民不知道的情况下完成的。密钥的更新采用psam卡与加密机、用户卡与工作卡交替更新的方式完成,更新的过程中,psam卡与加密机的密钥一起更新,用户卡与工作卡一起更新,交替更新的周期为用户卡与工作卡的使用寿命。用户卡的密钥更新有两种方式:通过预装密钥的方式和更换用户卡的方式。在预装密钥方式中,用户卡中以事先装有部分密钥,但在应用过程中只使用其中一个密钥,当系统需要更换密钥时,通过更换psam卡和修改后台密钥参数来启用预装的密钥,淘汰作废的密钥。在第二种方式,即通过更换用户卡更换密钥的方式中,用户卡已发到用户手中后,又产生了新的密钥,则从此时开始,首先更换psam卡和修改后台密钥参数使其同时支持新旧密钥,随后发放一批新的用户卡并装入新的密钥,此后,用户新租的ic卡均为新卡,当全部旧卡都到期回收后,就完成了密钥更换。更新完毕,不再使用的密钥被淘汰 第四章 系统实施4.1 开发工具的选择4.1.1 前端软件开发工具的选择本系统使用vb6.0来开发前端软件。visual basic 6.0 是美国微软公司研制的windows环境下的一种快速、简洁的开发工具,它最突出的特点是可视化、事件驱动和交互性。它是可视化程序开发工具,在开发过程中所看到的界面,与程序运行时的界面基本相同。同时它还为程序员提供了若干界面设计所需要的对象(称为控件),程序员在设计界面时,只要将所需要的控件放到窗口的指定位置即可,整个界面设计的过程基本不需要编写代码。它提供了开发windows 应用程序最迅速、最简捷的方法。在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。程序从第一行代码执行并按应用程序中预定的路径执行,必要时调用过程。用vb开发的应用程序,代码不是按照预定的路径执行,而是在相应不同的事件时执行不同的代码片段。事件可以由用户操作处罚,也可以由来自操作系统或其他应用程序的消息触发,甚至由应用程序本身的消息触发。这些事件的顺序决定了代码执行的顺序,因此应用程序每次运行时所经过的代码的路径都是不同的。传统应用程序的开发过程要分成3个明显的步骤:编码、编译和测试代码。但是vb与传统语言不同,它是使用交互式方法开发应用程序,使3个步骤之间不再有明显的界限。在c、pascal等语言里,如果编写代码时发生了错误,则在开始编译应用程序时该错误就会被编译器捕获,此时必须查找并改正该错误,然后再次进行编译,对每一个发现的错误都要重复这样的过程。vb在编程者输入代码时便进行解释,实时捕获并突出显示大多数语法或拼写错误。除实时捕获错误外,vb也在输入代码时部分地编译该代码,当准备运行和测试应用程序时,只需极短时间即可完成编译。如果编译器发现了错误,则将错误突出显示于代码中,这是可以更正错误并继续编译,而不需从头开始。因为vb有着交互特性,我们在开发应用程序时,就可以测试代码的运行结果,而不必等到编译完成后。而我选择使用vb6.0最重要的原因是它比以前的版本增加了新的数据处理机制ado数据处理方法。ado是数据访问对象模型,提供应用程序与数据库之间的通信。ado是ole db的接口,提供连接、读取、操作和更新sql server数据的方法。ado组合并取代了vb6.0之前的版本中依靠data access object(dao,数据存取对象)以及remote data objects(rdo,远程数据对象)来进行数据处理。ado非常易于使用,能实现的功能也很全面。通过ado,不仅可以连接本地数据库,而且可以连接远程数据服务器。ado在企业和internet应用程序中的性能较好。与dao和rdo等数据访问库相比,ado对象模型很简单。尽管它显示一个层次,顶层一个对象,但很多对象都可以独立生成。这里,实例化对象所需的任何其他对象都是在幕后生成的。ado对象模型如下图,主要有五个对象,可以实例化更多底层集合和对象。connectionerrorserrorpropertiespropertypropertypropertiesparameterparamenterscommandrecordsetpropertypropertiesfieldfieldsrecordfieldsstreamfield 图4.1 图4.14.1.2 后台数据库的选择我选择microsoft sql server 2000作为我的后台数据库数据库系统是一种管理数据的工具,从这个简单的定义中,我们可以了解到它必须具备如下的特点:大量现代的数据库系统往往非常庞大,因此任何一个数据库系统都必须以可靠的外部存储器作为硬件基础。持久数据库系统中的数据必须能够长久的保存下去,不能一应用完成数据就随之消失。数据库系统中的数据必须长久的保存在可靠的存储器中,持久地为各种各样的客户服务。可靠万一数据库系统发生软件或硬件方面的故障,应该能够快速将系统恢复到系统出现故障之前的状态。共享众多使用数据库的用户,应该能够按照特定的有序的方式存取数据。sql server是一种高效的关系数据库系统,是microsoft公司开发的基于结构化查询语言(sql)和客户机/服务器模型的高性能的关系数据库管理系统,sql server 2000 是ms sql server 的最新版本。 所有的关系型数据库系统都必须使用sql语言来操作数据库中的数据。sql server数据库系统使用的数据查询语言为transact-sql语言,该语言是标准sql语言的一个超集,大大提高了数据查询的效率。关系型数据库的数据查询语言在许多方面都接近一种高级编程语言。因此在sql server数据库系
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 63522-31:2025 FR Electrical relays - Tests and measurements - Part 31: Magnetic remanence
- 课件河中石兽
- 口腔机构管理培训
- 随机抽查单词课件
- 课件模式设置
- 幼儿美术颜色课件
- 煤矿防疫培训课件
- 课件最后一页文案壁纸
- 课件显示设置
- 广东高数工专自考试题及答案
- 《教室不乱跑》课件
- 2025混凝土建材购销合同范本
- 支教考试笔试试题真题及答案
- 2024-2025学年四年级第一学期语文教学计划及教学进度表
- 餐饮公司中标协议书
- 肥胖症诊疗指南(2024年版)解读
- 入股瑜伽店协议书
- 旅游团队境外医疗援助补充协议
- 汽车报废委托协议书
- 光伏支架生产工艺流程
- 钢结构雨棚作业安全技术交底
评论
0/150
提交评论