基于安卓平台的铁路人事办公系统的研究与应用

2013-06-21 07:00卢志强上海铁路局信息技术所
上海铁道增刊 2013年1期
关键词:人事安卓人事管理

卢志强 上海铁路局信息技术所

1 概述

1.1 研究内容

随着智能手机的快速普及,智能手机操作系统市场风生水起。为了让智能手机用户能够随时随地查询互联网所提供的服务,一种高效的办法就是将应用系统的功能拓展到手机终端上,让手机能够通过移动网以及互联网访问Web网站并处理各种各样的业务。因此,智能手机的应用软件及其需要的服务将有广阔的发展前景。对于铁路办公管理来说,需要找到适应社会的高效率、低成本和快节奏的方法,安卓平台具有无限的吸引力。

安卓平台铁路人事办公系统是一个基于安卓手机平台的应用系统,该系统实现了人事部门领导在任何时间、任何地点都能使用安卓智能手机读取相关人事信息,处理相关人事业务的功能。铁路人事办公系统的上线使得人事办公摆脱了时间和场所的局限,人事部门领导可以随时进行人事管理工作,有效提高管理的效率。考虑到人事信息的安全保密,利用DES算法对数据进行加密,DES算法是安全性比较高的一种算法,目前只有一种方法可以破解该算法,那就是穷举法,它采用64位密钥技术,实际只有56位有效,8位用来校验的.譬如,有这样的一台PC机器,它能每秒计算一百万次,那么256位空间它要穷举的时间为2285年.所以这种算法还是比较安全的一种算法。

1.2 研究意义

随着智能手机的普及,移动办公技术得到了迅猛的发展。这种全新的办公模式,通过在手机上安装企业信息化软件,使得手机也具备了和电脑一样的办公功能,而且它还摆脱了必须在固定场所固定设备上进行办公的限制,对企业管理者和商务人士提供了极大便利,为企业和政府的信息化建设提供了全新的思路和方向。它不仅使得办公变得随心、轻松,而且借助手机通信的便利性,使得使用者无论身处何种紧急情况下,都能高效迅捷地开展工作,对于突发性事件的处理、应急性事件的部署有极为重要的意义。

1.3 研究现状和发展趋势

安卓是一种基于Linux的自由及开放源代码的操作系统,主要使用于便携设备,如智能手机和平板电脑。开放手机联盟(OHA)成员可以任意使用和修改安卓的SDK软件包。这款软件包括了操作系统、用户界面和应用程序,即智能手机工作所需要的全部软件。安卓的最大特点是其开放性体系架构,为众多移动应用开发者提供了良好的系统性平台,不仅具有移动应用的集合,并且可以针对自身的特殊需要“定制化开发”,而且还支持各种可扩展的用户体验,包括丰富的图形组件、多媒体支持功能以及强大的浏览器。 安卓操作系统发展迅猛主要得益于免费、开源和良好产业运作策略,这三点为安卓在智能手机市场赢得更多的发展机遇。系统的免费让更多的厂商加入,推动了份额的上升;代码的开源让更多的开发者进入应用开发;应用的丰富吸引了更多用户选择,这也是谷歌值得众多厂商学习的地方。此外,谷歌通过OHA联合众多厂商进行系统研发,不断更新版本,将系统应用推广到更多的终端产品中,确保用户体验持续改善。

DES使用一个 56位的密钥以及附加的 8位奇偶校验位,产生最大 64位的分组大小。这是一个迭代的分组密码,使用称为 Feistel的技术,其中将加密的文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一半进行"异或"运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。DES使用 16个循环,使用异或,置换,代换,移位操作四种基本运算。

2 系统分析

2.1 研究目标

(1)了解安卓应用程序的设计和开发过程。

(2)保障数据的安全保密,利用DES算法对数据文件进行加解密。

2.2 需求分析

铁路人事办公系统建立在安卓平台上,启动程序后能够进行对人事机构的查看、人事所属单位部门的查看、人事信息的详细信息的查看,不需要网络的访问,降低用户访问位置的限制和要求,系统让在无办公网络环境(如列车上、站段、车间等地方)下的用户享受到查看到人事详细信息带来的便利,改变以往的纸质办公模式,摆脱纸质文档的束缚。系统安装简单,操作方便,通过定时传送数据,我们采用了先将所有数据文件进行加密,通过安卓平台人事办公系统客户端进行解密,同时对铁路人事办公系统的访问也做了加密处理,保障数据的保密安全,将人事办公系统系统化、信息化,提高人事管理水平。

2.3 性能分析

程序响应速度快、安全性高、信息处理快。

3 系统设计

3.1 系统的总体设计(见图1)

图1 总体设计

根据用户需求从数据库中相关的表中取出数据,根据关联对筛选出来的数据进行处理,

考虑到信息的安全保密,不可直接使用,必须进行加密处理,这里将使用DES加密算法进行加密,生成加密文件,人事办公系统必须通过相应的解密算法进行解密展现数据信息。

3.2 用户界面设计

根据需求分析可以知道,应用程序应包含三个主要的用户界面(见图2),这里需要进一步分析每个界面中应该包括哪些显示内容。

图2 系统流程图

4 关键技术研究

4.1 数据处理文件批量生成技术

根据客户的需求筛选出需要的表和字段,只取出干部信息,排除掉减少人员的部门。

select a.rybm,a.xm,c.dwmc,c.dwbsm,f.dwxxbmbs,a.jg,a.csd,a.mz,a.csrq,a.hkszd,a.xb,a.jrdprq,a.cjgzrq,a.jkqk,a.xjszwmc,a.xrzwhz,a.zzmm from gg_zgjbxx a,rs_zgjbxx b,lz_dwjbxx c,lz_dwxsbmxx f where a.rybm=b.rybm and a.dwbsm=c.dwbsm and a.gbgrbs in ('02','03','05')and a.bmbm=f.dwxxbmbs and c.dwbsm like'999900020010%'and f.dwxxbmbs not like'%CCCC'

数据处理完毕后会批量生成文件供加密使用。

4.2 加解密技术

本系统加解密需要到的软件包 javax.crypto为 cryptographic(加密)操作提供类和接口。在此包中定义的 cryptographic操作包括加密、密钥生成和密钥协商,以及消息验证代码 (MAC)生成。

加密支持包括对称密码、不对称密码、块密码和流密码。此包还支持安全流和封装的对象。

javax.crypto.Cipher类提供加密和解密功能,与所有的引擎类一样,可以通过调用Cipher类中的getInstance静态工厂方法得到Cipher对象。

public static Cipher getInstance(String transformation);

参数transformation是一个字符串,它描述了由指定输入产生输出所进行的操作或操作集合。参数transformation总是包含密码学算法名称,比如DES,也可以在后面包含模式和填充方式。参数transformation果没有指定模式或填充方式,就使用特定提供者指定的默认模式或默认填充方式。当以流加密方式请求以块划分的cipher时,可以在模式名后面跟上一次运算需要操作的bit数目,例如采用“DES/CFB8/NoPadding”和“DES/OFB32/PKCS5Padding”形式的 transformation参数。如果没有指定数目,则使用提供者指定的默认值(例如 SunJCE提供者使用的默认值是64bit)getInstance工厂方法返回的对象没有进行初始化,因此在使用前必须进行初始化。

通过getInstance得到的Cipher对象必须使用下列四个模式之一进行初始化,这四个模式在Cipher类中被定义为final integer常数,我们可以使用符号名来引用这些模式:

ENCRYPT_MODE,加密数据

DECRYPT_MODE,解密数据

我们可以调用以下的init方法之一来初始化Cipher对象:

ecipher.init(Cipher.ENCRYPT_MODE,key,paramSpec);

dcipher.init(Cipher.DECRYPT_MODE,key,paramSpec);

必须指出的是,加密和解密必须使用相同的参数。当Cipher对象被初始化时,它将失去以前得到的所有状态。即,初始化Cipher对象与新建一个Cipher实例然后将它初始化是等价的。

5 系统应用情况

铁路人事办公系统自2012年7月投入使用以来,经过不断的完善优化,实现了对整个上海铁路局人事资源数据的全覆盖,减少了人事管理中的复杂环节,减轻了人事部门领导的工作强度和难度,改变以往人事管理的工作方式,数据准确,实时性高,有效地提高了人事管理工作的效率。

猜你喜欢
人事安卓人事管理
iPhone不卡的秘密曝光:安卓也能享受
人事人才
人事人才
人事人才
人事人才
人事管理
文物表情包
加强和改进事业单位人事管理
人事档案数字化在人事管理中的重要性
一种基于安卓系统的手机侧抓包分析方法