• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Java語言的手機軟件開發(fā)技術(shù)分析

      2014-10-21 19:57莫前玲
      計算機光盤軟件與應(yīng)用 2014年24期
      關(guān)鍵詞:Java語言手機軟件軟件設(shè)計

      莫前玲

      摘 要:隨著智能手機的高速發(fā)展,手機軟件開發(fā)成為了當(dāng)下熱門行業(yè)。本文以Java語言為基礎(chǔ),通過分析Java語言的概述及手機軟件應(yīng)用程序及架構(gòu),簡要敘述基于Java語言下手機軟件開發(fā)技術(shù),最后以基于Java語言對手機加密軟件開發(fā)實例進行探討和分析,提高對Java語言在手機軟件開發(fā)技術(shù)更加直觀的了解,對于基于Java語言開發(fā)手機軟件具有借鑒和參考價值。

      關(guān)鍵詞:Java語言;手機軟件;Android操作系統(tǒng);軟件設(shè)計;開發(fā)技術(shù)

      中圖分類號:TP311.52

      1 Java語言概述

      其內(nèi)涵和實質(zhì)是面向網(wǎng)絡(luò)程序設(shè)計的設(shè)計的語言,是程序員的在創(chuàng)建應(yīng)用程序時必備的工具,并且這些應(yīng)用程序在設(shè)計之后,能夠被下載和普遍、穩(wěn)定、安全運用,Java語言是面向?qū)ο蟮恼Z言,內(nèi)部軟件能夠通過部件的形式進行編程,而為了滿足軟件內(nèi)部的協(xié)調(diào)和各種需求,軟件內(nèi)部是相互協(xié)調(diào)的。

      2 基于Java語言設(shè)計手機短信加密軟件實證分析

      現(xiàn)代信息時代,對于信息的保護觀念和意識不斷增強,但是由于手機軟件的開放性,信息安全問題一直是人們關(guān)心的問題,本章主要通過在基于Java語言下,利用數(shù)據(jù)加密算法DES,對手機短信進行加密,揭示Java語言在手機軟件開發(fā)中的具體技術(shù)利用。

      2.1 利用的平臺和技術(shù)

      (1)Android 系統(tǒng)

      Android系統(tǒng)是美國谷歌公司在2007年推出的,依靠其強大的性能和開放性特點,瞬間成為了移動設(shè)備操作系統(tǒng)的佼佼者,從Android系統(tǒng)的架構(gòu)上看,主要包括五個部分:Linux Kernel、Android Runtime 、Libraries、Application Framework和Applications。這五個部分構(gòu)成了Android系統(tǒng)的整個系統(tǒng),其Eclipse 開發(fā)平臺就是基于Java語言的擴展和開發(fā)平臺,許多情況下Eclipse就作為Java集成開發(fā)環(huán)境下使用,但是其用途不僅僅局限在Java語言的開發(fā)中,是Java開發(fā)工具的延伸。

      (2)DES加密算法

      DES算法是1977年美國國家標(biāo)準(zhǔn)局采用的數(shù)據(jù)加密標(biāo)準(zhǔn),主要是利用循環(huán)和迭代將簡單的運算轉(zhuǎn)變?yōu)榉蔷€性變換實現(xiàn)對于數(shù)據(jù)的加密和保護。在56位密鑰和64位二進制信息加密成64位密文信息。其主要有三個具體的流程:首先,出事置換IP,將明文按照一定的邏輯和順序進行順序打亂;其次,乘積交換,進行16輪迭代;最后,逆初始置換IP,按照固定表順序打亂,最終輸出64位信息,此64位信息就是加密信息,從而完成整個明文信息的加密過程。由于DES尋在密鑰位數(shù)和迭代數(shù)問題,導(dǎo)致DES存在明顯的缺陷,而在實際操作過程中,3DES被普遍使用,其中包含了四中模式,分別是DES-EEE3;DES-EDE3;DES-EEE2;DES-EDE2四種使用模式,在操作過程中,手機短信的字符數(shù)較少,一般采用3DES加密處理。

      2.2 基于Java語言的手機加密軟件開發(fā)

      (1)3DES加密與解密

      設(shè)Ek( )和Dk( )代表DES算法的加密和解密過程,K代表DES算法,使用的密鑰P代表明文,C代表密表。

      3DES加密過程為:C=Ek3(Dk2(Ek1(P)))

      3DES解密過程為:P=Dk1((EK2(Dk3(C)

      public static byte[] desEncrypt(String message, String key) throws Exception { Cipher cipher = Cipher.getInstance("DESede"); DESKeySpec desKeySpec = new DESKeySpec(key.getBytes("UTF-8")); SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede"); SecretKey secretKey = keyFactory.generateSecret(desKeySpec); cipher.init(Cipher.ENCRYPT_MODE, secretKey);

      return cipher.doFinal(message.getBytes("UTF-8"));

      在整個設(shè)計過程中,進行對比其他平臺對接發(fā)現(xiàn)對于同樣的加密結(jié)果卻現(xiàn)實不同,所以針對這樣的情況,對于JDK文件進行了檢查,發(fā)現(xiàn)JDK文件現(xiàn)實如下:

      A transformation is a string that describes the operation (or set of operations) to be performed on the given input, to produce some output.

      A transformation is of the form:

      ·"algorithm/mode/padding" or ·"algorithm"

      (in the latter case, provider-specific default values for the mode and padding scheme are used).

      在結(jié)合之前我們所選擇的代碼,編寫的算法是不存在問題的,那導(dǎo)致加密結(jié)果不同的原因在哪?針對此,主要原因出現(xiàn)在MODE和padding。所以在使用JAVA語言編碼時,一定要主義采用相同的MODE和padding,只有這樣才能夠保證通信的正常使用。

      2.2 Java語言手機加密軟件開發(fā)實現(xiàn)

      在基于Java語言下利用DES加密算法實現(xiàn)手機信息加密軟件的開發(fā),在這個過程中,利用虛擬手機平臺,進行加解密程序編寫,模擬和實現(xiàn)加解密程序的運行效果,從而達(dá)到測試和使用加解密軟件。

      (1)將手機連接到電腦中,在安卓虛擬平臺下,對于加解密軟件進行編程,為了更好的實現(xiàn)手機信息加密軟件;

      (2)打開手機信息,進入到手機的短信收發(fā)界面;

      (3)在手機中運行J2ME MIDlet程序,點擊手機的消息的便捷界面,從而進行手機信息的編寫,編寫完成之后,選擇相應(yīng)的聯(lián)系人,從而完成整個短信內(nèi)容的編寫過程;

      (4)進入目標(biāo)手機的接收界面,對于剛剛編寫的接收信息進行編輯,從而達(dá)到解密的目的,解密完成后,此次加解密操作就算完成了。

      2.3 手機加密軟件開發(fā)的難點

      加解密軟件利用的是JDK1.5,此次的實驗主要是針對Android手機開發(fā)的應(yīng)用軟件,所以適用性上僅僅適用于安卓手機用戶,不能夠移植到其他系統(tǒng)中,特別是蘋果IOS操作系統(tǒng)中,在實際的軟件開發(fā)過程中,DES加密密鑰在Java庫函數(shù)中是隨機產(chǎn)生的,所以在操作的過程中,用戶沒有輸入相應(yīng)的密鑰操作,和普通手機發(fā)短信沒有表面的區(qū)別。其中難點在于軟件必須通信雙方共同是同才能夠正常的實現(xiàn)短信的收發(fā)功能,如果一方未安裝加密軟件,則加密軟件就不能發(fā)揮相應(yīng)的作用。

      3 結(jié)束語

      移動電子設(shè)備已經(jīng)成為了人們生產(chǎn)、生活必不可少的重要工具,伴隨著技術(shù)的不斷革新和發(fā)展,手機的功能越來越強大,在帶給人們便利的背后,離不開對于手機軟件開發(fā)的創(chuàng)新和探索。近年來,對于手機軟件的需求和要求不斷提高,不僅需要新穎的軟件和應(yīng)用程序,更需要穩(wěn)定、安全、便捷的操作體驗,所以在Java語言編程下的手機軟件需要在發(fā)展和創(chuàng)新的過程中不斷積累經(jīng)驗,提高軟件的安全性、穩(wěn)定性和適用性,從而推動手機的發(fā)展。

      參考文獻:

      [1]楊治.手機軟件交互設(shè)計研究[D].哈爾濱工程大學(xué),2013.

      [2]韓路,高賢強.基于Android系統(tǒng)的手機軟件開發(fā)研究[J].電子技術(shù)與軟件工程,2014(03):60-61.

      [3]周銳棠.闡述Java語言在手機中的結(jié)合運用[J].數(shù)字技術(shù)與應(yīng)用,2010(11):204.

      猜你喜歡
      Java語言手機軟件軟件設(shè)計
      告訴你貓開不開心的手機軟件
      心血管病患者服藥提醒手機軟件的設(shè)計與應(yīng)用
      業(yè)務(wù)員手機軟件如何用 更能提升效率
      阿鲁科尔沁旗| 老河口市| 濮阳市| 合江县| 吉安县| 阜宁县| 和静县| 吉林市| 六盘水市| 南乐县| 灌阳县| 锦州市| 汶川县| 运城市| 瑞丽市| 乐清市| 永川市| 屯门区| 巩义市| 墨脱县| 曲阳县| 无为县| 原阳县| 茌平县| 荥阳市| 五常市| 黎城县| 嘉祥县| 福清市| 新野县| 绥德县| 富川| 新绛县| 宁明县| 金阳县| 蒲江县| 武穴市| 莲花县| 阿拉善右旗| 河池市| 富川|