?

基于OMAP-L137的嵌入式通信終端方案的設計與測試

2016-11-22 01:58李康康胡榮磊
電子設計工程 2016年15期
關鍵詞:開發板驅動程序密鑰

蔣 華,李康康,胡榮磊

(1.北京電子科技學院 通信工程系,北京 100070;2.西安電子科技大學 通信工程學院,陜西 西安 710071)

基于OMAP-L137的嵌入式通信終端方案的設計與測試

蔣 華1,李康康2,胡榮磊1

(1.北京電子科技學院 通信工程系,北京 100070;2.西安電子科技大學 通信工程學院,陜西 西安 710071)

文中主要研究了一種通信終端安全方案的設計和相應的數據測試。安全方案在嵌入式硬件平臺上實現。嵌入式平臺是基于OMAP-L137雙核芯片設計的,芯片包含ARM和DSP兩部分。其中DSP端結合SSX0912協助處理器負責對密碼算法進行處理,ARM端負責通信機制的控制:通過 ARM端的USB接口和外界通信終端進行數據測試。

通信終端;嵌入式;數據測試;OMAP-L137

隨著網絡和通信終端設備的普及,各種通信終端設備如PC機、手機、掌上電腦等如雨后春筍般爆發了出來,人們在辦公室、公交、地鐵,甚至將來可能在飛機上可以不受限制的接入互聯網,我們使用網絡進行電子支付,注冊社交賬號,玩電子游戲,和朋友共享我們的生活,甚至有時候上傳自己的私密信息等等行為;不得不說這拉近了人們間的距離,方便了人們的生活。

然而,在人們享受網絡帶來的便利性的同時,卻面臨著很大的網絡安全問題。我們日常生活中的信息安全性、私密性、可靠性已經變得十分的脆弱。信息安全帶來的安全隱患為用戶帶來了很大的損失針對這些問題,文中提出了一種應對通信終端安全的方案,并進行了通信測試。

1 OMAP-L137簡介

OMAP-L137是由美國德州儀器推出的一款基于ARM926EJ-S核心和一個C674x定點/浮點DSP核心的低功耗應用處理器,可實現456 MHz的內核頻率。DSP可完成高精、高強度的實時處理計算,同時ARM來實施VxWorks、WinCE或Linux等各種高級操作系統。

本方案設計選擇OMAP-L137作為信號處理核心處理芯片,以北京瑞泰創新公司銷售的OMAP-L137最小系統板為核心進行底板設計,選用主控芯片滿足方案設計要求。

2 SSX0912簡介

SSX0912安全模塊采用SSX0912安全芯片為核心設計,可實現SM2,SM3,SM4等國際密碼算法。為了方便應用,SSX0912安全模塊設計有UART總線接口、RS232總線接口和SPI總線接口,用戶可根據應用選擇不同接口。

針對安全應用,SSX0912安全模塊參照X.509V3的證書格式,自定義了證書結構,在模塊內加入了證書和公鑰存儲,方便密鑰協商和身份認證。

3 安全方案的設計

3.1 硬件總體結構

硬件平臺的通信機理是,通過OMAPL137上的 ARM+ DSP處理器,結合 Linux嵌入式操作系統,通過SPI接口調用 SSX0912的密碼算法,然后把系統的生成數據通過 USB接口和外界終端設備連接起來,實現通信終端的安全需求,保證通信終端通信的安全性。其中 DSP處理器負責密碼算法的實現,ARM處理器負責系統機制的控制,ARM和Linux之間的通信方式是通過TI公司的DSPLINK技術??傮w結構圖1如下:

圖1 硬件結構圖

SSX0912安全芯片是協助處理器,對密碼算法進行運算,并且存儲算法生成的數據。本方案中使用的通信終端是Linux操作系統。USB接口是本方案的核心之一,用于與外界數據交互,也就是用來進行數據的測試。

3.2 軟件設計

3.2.1 平臺介紹

在本方案的Linux開發環境中,OMAP-L137上電后,依次啟動的程序是:dsp-nand-ais,UBl,UBoot,Linux Kernel(內核),Linux Filesystem(文件系統)。其中內核指的是uImage,是壓縮了的Linux嵌入式內核,為操作系統的核心。文件系統是RAMDISK文件系統,是基于BusyBox文件系統生成的位于RAM中的文件系統。

Linux內核 uImage和文件系統 ramdisk.gz文件生成以后,通過 U盤或者超級終端,在 Uboot的引導下,先下載內核到地址 0xc0700000,然后再下載文件系統到0xc1180000地址中。

3.2.2 USB設備驅動

本方案中是通過ARM端的USB接口和外界進行通信的,所以USB設備驅動的開發便成了必不可少的一部分。

由于方案中要和通信終端通過 USB接口通信,并且OMAP-L137在通信終端看來是一個 USB從設備(通信終端是主模式),所以要重點探討USB gadget的驅動開發。為了開發方便,在主機端盡量少些或者不寫驅動程序,增強方案的通用性,結合Linux設備驅動程序gadget_serial.c源文件進行設備端驅動程序的改寫。

通過分析Linux USB設備端驅動程序,結合 USB設備程序 zero模塊進行分析,Linux虛擬串口設備驅動程序的程序框架和其它設備驅動的程序框架是一樣的,所不同的是在設備驅動程序里添加一些支持字符處理的接口函數。

添加完一些必要的函數后對Linux內核進行編譯,生成了g_serial.ko文件,將此文件拷貝到開發板文件系統中,通過insmod命令加載,通過命令#cat/proc/devices可以查看到,然后用 mknod/dev/usb_serial c 127 0在 dev下建立節點usb_serial,此時在開發板中就有了USB gadget的驅動。這樣,再通過配置通信終端(Linux主機)的CDC-ACM驅動,就可以實現主機和設備之間(通過USB接口)的數據通信了。

3.3 密鑰交換過程

為了確保通信終端與開發板之間能夠安全通信,要用到密鑰交換原理,具體流程圖如圖2所示:

圖2 密鑰交換原理

過程(1):B用A的公鑰加密會話密鑰和數據,然后一起發送給A。

過程(2):A用自己的私鑰進行解密得到了會話密鑰和數據,然后用會話密鑰對同時發送過來的數據進行加密,緊接著A將加密后的數據用B的公鑰加密后發給B。

過程(3):B在收到A發過來的數據后用自己的私鑰解密,得到過程(2)用會話密鑰加密過的數據。在確定加密數據數據無誤后,重復過程(1)。

過程(4):A用自己的私鑰進行解密得到了新的會話密鑰和加密后的數據,然后用這個會話密鑰對數據進行解密,最后發送給B,再和之前的未加密的數據進行比較。

4 安全方案的通信測試

在兩端的USB驅動成功加載后,就可以在次平臺上進行測試了。測試的程序是由OMAP-l137端和通信終端兩部分組成。

4.1 通信終端程序

此程序在Linux操作系統(即通信終端)上運行,主要包括發送會話密鑰和接收數據部分,程序主要函數有:

程序中的會話密鑰是隨機定義的。將程序在Linux系統上編譯好生成可執行文件test。

4.2 OMAP-l137程序

程序在開發板上運行,主要包括數據的加解密、數據的接收發送部分,主要函數有:

將程序用交叉編譯環境編譯后生成可執行文件 board,下載到開發板中,在超級終端上運行即可。

4.3 測試結果

數據測試的結果如圖3、4所示。

開發板收到的明文和加密后的密文:

圖3 開發板收到的明文和加密后的密文

通信終端收到的密文和解密后的明文:

圖4 通信終端收到的密文和解密后的明文

通過以上兩張圖能說明數據傳輸過程沒有出現問題。通過和加密之前數據對比,發現數據完全一樣,證明測試過程是正確的。

5 結束語

文中主要結合密碼學和通信學相關知識,在OMAP-L137嵌入式平臺下設計了一種安全方案,并成功的進行了數據通信測試。通過測試結果說明此安全方案通用性強,能夠保護用戶的私密信息,并且可以滿足一些終端設備的要求。以后還可以進行密鑰管理方面的研究和探索,具有一定的研究意義和前景。

[1]黃少濱.嵌入式系統USB Gadget驅動研究與實現[D].廣州:華南理工大學,2012.

[2]李彥林.基于OMAPL137嵌入式平臺的手指靜脈身份識別系統的研制[D].重慶:重慶理工大學,2011.

[3]王晨光,喬樹山,黑勇.分組密碼算法SM4的低復雜度實現[J].計算機工程,2013,39(7):177-180.

[4]楊波.現代密碼學[M].北京:清華大學出版社,2003:167-169.

[5]郭敬一.基于WINCE的嵌入式移動通信終端研究與開發[D].太原:中北大學,2007.

[6]劉澤華.基于OMAPL138的便攜式腦電信號檢測系統研究[D].天津:天津職業技術師范大學,2014.

[7]袁巍.AES算法的設計原則與其密鑰擴展算法的改進[D].長春:吉林大學,2010.

[8]夏偉.移動終端中的通信安全技術研究[D].北京:北京郵電大學,2013.

Design and test of OMAP-L137’s embedded communications terminal program

JIANG Hua1,LI Kang-kang2,HU Rong-lei1
(1.Department of Communication Engeering,Beijing Electronic Science and Technology Institute,Beijing 100070,China;2.School of Communication Engineering,Xidian University,Xi’an 710071,China)

This paper studies the design and the corresponding data to test a communication terminal safety programs.Security program implemented on an embedded hardware platform.Embedded platform OMAP-L137 dual-core chip design,the chip includes ARM and DSP in two parts.Wherein the DSP processor is responsible for assisting terminal binding SSX0912 cryptographic algorithms for processing,ARM side is responsible for controlling the communication mechanism:Data tested ARM side USB interface and external communication terminal.

communication terminals;embedded;data test;OMAP-L137

TN918.4

A

1674-6236(2016)14-0157-03

2015-08-10 稿件編號:201508045

蔣 華(1962—),男,山西大同人,碩士,教授。研究方向:信息論與編碼,通信技術。

猜你喜歡
開發板驅動程序密鑰
幻中邂逅之金色密鑰
密碼系統中密鑰的狀態與保護*
基于STM32H7的FDCAN通信系統設計與實現?
阻止Windows Update更新驅動程序
TPM 2.0密鑰遷移協議研究
計算機硬件設備驅動程序分析
一種對稱密鑰的密鑰管理方法及系統
淺析單片機開發板的設計與制作
ARM宣布mbed Enabled Freescale FRDM—K64F開發板通過微軟認證
MiniGUI在基于OMAP5912開發板上的移植
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合