欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種適合批量生產的usbkey設備內固件的實現方法

文檔序號:8257842閱讀:536來源:國知局
一種適合批量生產的usbkey設備內固件的實現方法
【技術領域】
[0001]本發(fā)明涉及一種USBKEY技術,具體涉及一種USBKEY的固件技術。
【背景技術】
[0002]USB Key是一種USB接口的硬件設備。它內置單片機或智能卡芯片,有一定的存儲空間,可以存儲用戶的私鑰以及數字證書,利用USB Key內置的公鑰算法實現對用戶身份的認證。由于用戶私鑰保存在密碼鎖中,理論上使用任何方式都無法讀取,因此保證了用戶認證的安全性。
[0003]由于USBKEY已經在安全領域獲得了廣泛的應用,所以USBKEY的生產廠商在提供產品時,往往需要在規(guī)定時間內提供給客戶數量很大的產品,這就需要提高USBKEY的生產效率。
[0004]但是由于不同的客戶要求不一致,比如要求USBKEY底層的通訊協議有的是CCID協議,有的是UDK協議,或者是其他的協議,導致生產時預置數據的生產工具種類繁多,不好維護,反而降低了 USBKEY的生產效率。
[0005]另外的一個問題是目前PC端只有UDK協議可以支持端口綁定功能,能在不斷電的情況下給HUB特定的多個端口發(fā)送程序數據,其它協議的情況下要斷電重新插拔識別后才能夠向多個端口發(fā)送數據,如果USBKEY生產的數量大,而且還需要不斷的斷電和上電,這將極大的影響效率。

【發(fā)明內容】

[0006]針對現有USBKEY生產過程中所存在的問題,本發(fā)明的目的在于提供一種適合批量生產的USBKEY設備內固件的實現方法,能夠極大的提高USBKEY的生產效率。
[0007]為了達到上述目的,本發(fā)明采用如下的技術方案:
[0008]一種適合批量生產的USBKEY設備內固件的實現方法,所述方法包括如下步驟:
[0009](I)在USBKEY設備的固件程序中,預先寫入不同協議的固定的枚舉應答信息和設備通信協議的應答信息;
[0010](2)在枚舉請求階段,PC機會發(fā)枚舉請求命令,固件分解請求命令,根據不同的請求,把預先固定的枚舉應答信息,再返給PC;
[0011](3) PC根據USB固件返的信息進行相應的處理:如果返回UDK的固定枚舉信息,設備就被識別成m)K設備;如果返回CCID固定枚舉信息,設備就被識別成CCID設備;
[0012](4)設別成相應設備后,進入通訊階段,根據對應協議的通信格式,進行相應的處理,并返回相應的數據。
[0013]在一優(yōu)選方案中,所述方法的具體實施過程如下:
[0014](I)首先在USBKEY設備的固件程序中設置相關通訊協議的固定枚舉信息和對應的通訊協議;
[0015](2)在USBKEY設備第一次上電的過程中,PC會發(fā)送枚舉請求信息,固件枚舉成單一的m)K協議,pc端將識別出來該協議,再利用專門的生產端口綁定工具,向相應的端口的USBKEY發(fā)送專用的預制數據,在相關數據寫入后,再寫入用戶通訊協議專用的標志位;
[0016](3)USBKEY設備斷電進行重新啟動,固件重啟時根據標志位判斷應該枚舉成的設備類型,然后把相應的枚舉信息返回,使得USBKEY設備形成對應的通訊協議設備。
[0017]進一步的,所述步驟(2)中在寫入用戶通訊協議專用的標志位時,由USBKEY設備中的固件程序調用FLASH的讀寫函數,在USB設備內置FLASH中確定的地址上寫入相應的數據。
[0018]本發(fā)明提供的USBKEY內部的固件實現方法,即能夠在生產階段統(tǒng)一利用UDK協議進行預制數據操作;在使用階段可以變成客戶所需要的CCID通訊協議,完成正常的用戶功能;采用本方案的固件設計方法,能夠簡化生產環(huán)節(jié),大幅度的提高USBKEY的生產效率。
【附圖說明】
[0019]圖1為本發(fā)明中USBKEY內固件的實現原理示意圖;
[0020]圖2為本發(fā)明中的具體處理流程圖。
【具體實施方式】
[0021]為了使本發(fā)明實現的技術手段、創(chuàng)作特征、達成目的與功效易于明白了解,下面結合具體圖示,進一步闡述本發(fā)明。
[0022]本發(fā)明可在固件程序中首先實現UDK協議、CCID等協議的枚舉信息和相應通訊協議的處理流程,通過在USB的固件程序中,預先寫入不同協議的固定的枚舉應答信息和設備協議的應答信息。
[0023]在枚舉請求階段,PC機會發(fā)枚舉請求命令,固件分解請求命令,根據不同的請求,把預先固定的枚舉信息,再返給PC。
[0024]PC就能根據USB固件返的信息,對該USB設備進行對應的處理:如果返回UDK的固定枚舉信息,設備就被識別成UDK設備,如果返回CCID固定枚舉信息,設備就被識別成CCID設備。
[0025]在別成相應設備后,進入通訊階段,每種協議都有固定的格式,根據協議的命令,做相應的處理,返回相應的數據即可。
[0026]基于上述原理,本發(fā)明的具體方案如下:
[0027]參見圖1,其所示為本方案中USBKEY內固件的實現原理示意圖。由圖可知,在該固件程序中實現UDK通訊協議和CCID通訊協議兩種協議的處理和相互的切換。整個過程分為三個階段:生產前、生產時以及生產完成后。
[0028]在生產前,在固件程序中實現了兩種USB協議的完整處理:CCID的枚舉端點信息和CCID的通道處理、UDK的枚舉端點信息和UDK的通道處理。
[0029]在生產階段中,協議沒有切換前的時候,USBKEY設備默認是UDK協議,固件只會接收UDK端點發(fā)送的數據,這樣在USBKEY設備第一次上電的過程中,PC會發(fā)送枚舉請求信息,固件分解請求命令,由于USBKEY設備默認是UDK協議,故固件枚舉成單一的UDK協議。PC端相應的端口將識別出來該協議,PC端將利用專門的生產端口綁定工具(即生產工具),通過UDK端點向相應的端口的USBKEY發(fā)送專用的預制數據(如密碼或證書);固件接收到PC端發(fā)過來的數據后,將調用USBKEY的COS系統(tǒng)進行數據的讀寫,在預制數據讀寫完成后,再寫入用戶通訊協議專用的標志位(即相應的FLASH的特定位),用來表示下一次要切換成的協議(即CCID協議)。
[0030]在寫入用戶通訊協議專用的標志位時,固件程序調用FLASH的讀寫函數,在USB設備內置的FLASH中確定的地址上寫入相應的標志位數據,如果寫數據1,那么該地址上的數據就是I ;寫入2,該地址上數據就是2。其中,數據O:表示單一的UDK的設備;數據1:表示CCID協議的設備;數據2:CCID+UDK的復合設備。
[0031]生產階段完成后,USBKEY重新上電后,USBKEY首先檢測是否是USB的默認工作協議(如單UDK協議);如果不是,則檢測標志位,按照生產寫入的標志位,切換到用戶工作的協議(即CCID協議),USBKEY將會枚舉成CCID協議。此時,PC端將該USBKEY設備識別成CCID設備,利用CCID通道和USBKEY進行通訊,按照接收APDU命令,COS處理,返回CCID數據的流程周而復始,此時UDK通道就不再接收預制數據。
[0032]該過程在具體實現時,
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
遂川县| 长顺县| 蕲春县| 峡江县| 交口县| 无极县| 修文县| 利辛县| 渝中区| 梅州市| 泾阳县| 徐水县| 湟中县| 聂荣县| 武城县| 永宁县| 芜湖县| 新密市| 泰顺县| 温泉县| 宜黄县| 资兴市| 两当县| 山阴县| 平昌县| 都江堰市| 阳泉市| 巴彦县| 黎城县| 晴隆县| 吴堡县| 宁海县| 泾源县| 大兴区| 平罗县| 苍梧县| 江津市| 平昌县| 平阳县| 留坝县| 吉林省|