在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

單片機程序存儲中的軟件標識分析

集成電路應用雜志 ? 來源:未知 ? 2018-11-28 17:16 ? 次閱讀

在某些特殊設備中,如智能電表等產品,由于使用方并非產品設計方,而使用方又擔心設計方將程序外泄,帶來使用的安全問題,便要求設計方在單片機存儲程序時可自動形成帶有一定特征和加密特性的軟件標識,以達到使用方可以溯源程序的目的。采用對軟件代碼計算,并形成校驗碼的方式,是單片機程序存儲中的軟件標識的一種良好設計方式。

1 引言

目前,電子設備、智能儀表等器件實現一些功能通常需要安裝對應的應用軟件。為了便于管理,需要對應用軟件進行軟件標識,特別是像電能表這類儀表需要執行法制計量機構頒布的相關標準,更加需要對安裝于其中的軟件進行軟件標識,以實現有效管理[1,2]。

現有技術中,軟件標識一般是由微處理器軟件生成的,用戶可更改軟件標識,也存在軟件更改或更新而未更改軟件標識的情形,不利于器件的管理,存在數據泄露的風險[3,4]。

2 設計思路

在單片機生成方法為存儲在存儲介質中的軟件代碼生成軟件標識,這需要一個前提,即存儲介質包括至少一個第一存儲單元、至少一個第二存儲單元、第三存儲單元。第一存儲單元用于存儲軟件代碼,第二存儲單元用于存儲多項式。其中,每個第二存儲單元中存儲的多項式是不同的。

2.1 實施方法一

如圖 1 所示軟件標識生成方法,包括以下步驟。

步驟一,設置第二存儲單元與第一存儲單元的對應關系。

步驟二,對軟件代碼進行計算以生成校驗碼。其中,不同的軟件代碼生成不同的校驗碼本實施例中,步驟二還包括:(1)從第一存儲單元中獲取軟件代碼,從對應的第二存儲單元中獲取多項式。(2)根據多項式對軟件代碼進行計算,生成校驗碼。

具體,當下載軟件代碼時,將軟件代碼依次寫入第一存儲單元中,每將一個第一存儲單元寫滿則從該第一存儲單元中獲取軟件代碼,從對應的第二存儲單元中獲取多項式,根據多項式對軟件代碼進行計算。

以下通過一個具體實例說明根據多項式對軟件代碼進行計算的過程:例如,一個第一存儲單元中存儲的軟件代碼為 1010。與該第一存儲單元對應的第二存儲單元中存儲的多項式為:H(x)=x3+x+1。

首先,根據變量的指數,將H(x)=x3+x+1轉換成對應的二進制數 1011;由于多項式有4位,則把軟件代碼左移 3(4-1)位,得到 1010000。

其次,用多項式的二進制數對左移 3 位后的軟件代碼進行模2除,得到余位 011,即為校驗碼。

由于每個第一存儲單元均會生成一個校驗碼,軟件代碼存儲于幾個第一存儲單元中,即可得到幾個校驗碼。需要說明的是,校驗碼的位數可根據實際需要自行設置,也即通過設置多項式的最高次冪實現。

步驟三,根據校驗碼生成軟件標識。若一段軟件代碼共有 i 個 16 Bit 的校驗碼,生成軟件標識具體可以是:將 i 個校驗碼進行分組后先進行同或運算,產生 64 Bit 數據,將這 64 Bit 數據與 Flash 的 Key 進行異或運算生成軟件標識。

步驟四,將校驗碼存儲于第三存儲單元中。本實例中,根據不同的軟件代碼生成不同的校驗碼,進而生成不同的軟件標識,也即只要軟件代碼不同,軟件標識必不相同。當器件中的應用軟件被更改、更新,相應的軟件標識也會更改,從而能快速識別器件的應用軟件是否符合用戶要求,實現器件的安全管理。

2.2 實施方法二

在這種實施方法中,提供一種計算機可讀存儲介質,其上存儲有計算機程序,計算機程序被處理器執行時實現實施例一所提供的軟件標識生成方法。計算機可讀存儲介質為 Flash 存儲器。

Flash 存儲器的程序存儲區一般由 M 個存儲塊(也即第一存儲單元)組成,每一存儲塊分若干個頁。程序存儲區只支持片擦除,不支持塊擦除和頁擦除。Flash 存儲器的 NVR 區的 NVR1(也即第二存儲單元)存有一定的長度的數據碼 K(多項式的二進制數),數據碼 K 中的第 n 個 16 Bit 數據 Kn 與 M個數據塊中的第 n 個塊 Mn 對應,在寫 Flash 每個存儲塊時,Flash 控制器根據對應關系選擇相應的多項式計算校驗碼。

其中,NVR1 對用戶不支持讀寫功能。寫完一個存儲塊,則計算出一個 16 Bit 的校驗碼 Cn,并將此校驗碼 Cn 存儲在 NVR 區的 NVR2(也即第三存儲單元)中。NVR2 對用戶有只讀功能。

下載程序時所需要的存儲塊都寫完后,共有 M 個16 Bit 的校驗碼。再將這些校驗碼進行分組后先進行同或運算,產生 64 Bit 數據,將這 64 Bit 數據與Flash 的 Key 進行異或運算生成軟件標識。并將此軟件標識的 64 Bit 數據存儲到 NVR2 中的固定位置。

使用這種方法的計算機可讀存儲介質存儲應用程式,只要 Flash 存儲器中的應用軟件被更改、更新,相應的軟件標識也會更改,從而能快速識別 Flash 存儲器的應用軟件是否符合用戶要求,實現器件的安全管理

2.3 實施方法三

在這種實施方法中,提供一種單片機,如圖 2 所示,單片機包括:計算機可讀存儲介質、控制單元和 TR 接口。其中,計算機可讀存儲介質為實施例 2 所提供的計算機可讀存儲介質。

控制單元分別與計算機可讀存儲介質和 TR 接口電連接??刂茊卧糜谠诮邮盏阶x取指令時從計算機可讀存儲介質中獲取軟件標識,并通過 TR 接口向外輸出軟件標識。其中讀取指令由外設設備生成并發送至單片機。本實施例中,不需要單片機干預,外設設備即可讀取軟件標識,避免單片機對軟件標識進行處理的可能性,便于法律監督機構管理。

在這種實施方法中,可根據實際需求,還可在單片機中設置并串轉換電路??刂茊卧ㄟ^并串轉換電路與 TR 接口電連接。并串轉換電路用于將軟件標識轉換成串行的 Bit 數據流。從而,經過并串轉換的軟件標識可有紅外RS485 通信接口輸出至外設設備。

3 結語

根據不同的軟件代碼生成不同的校驗碼,進而生成不同的軟件標識,也即只要軟件代碼不同,軟件標識必不相同。當器件中的應用軟件被更改、更新,相應的軟件標識也會更改,從而能快速識別器件的應用軟件是否符合用戶要求,實現器件的安全管理。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6037

    文章

    44562

    瀏覽量

    635914
  • 存儲
    +關注

    關注

    13

    文章

    4320

    瀏覽量

    85906

原文標題:單片機程序存儲中的軟件標識研究

文章出處:【微信號:appic-cn,微信公眾號:集成電路應用雜志】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    單片機存儲器擴充與程序下載技巧

    介紹了如何對單片機存儲器進行擴充,以及在這種大容量存儲器條件下的程序下載技巧。關鍵詞:單片機存儲
    發表于 10-14 16:47 ?63次下載

    單片機教程五:單片機延時程序分析

    單片機教程五:單片機延時程序分析 上一次課,我們已經知道,程序
    發表于 05-15 23:00 ?1071次閱讀
    <b class='flag-5'>單片機</b>教程五:<b class='flag-5'>單片機</b>延時<b class='flag-5'>程序</b><b class='flag-5'>分析</b>

    51單片機匯編語言教程_單片機延時程序分析

    51單片機匯編語言教程:5課單片機延時程序分析
    發表于 01-19 15:26 ?0次下載

    STC單片機程序軟件

    STC單片機程序軟件。
    發表于 04-05 16:13 ?7次下載

    單片機存儲器擴充與程序下載技巧

    單片機存儲器擴充與程序下載技巧。
    發表于 05-20 11:16 ?14次下載

    單片機程序燒寫軟件

    單片機程序燒寫軟件
    發表于 01-07 21:01 ?17次下載

    51單片機存儲程序和數據

    初學51總是會有這樣的疑問,從電腦下載程序到開發板后,程序去哪了? C51,用戶或應用程序,系統程序和數據都是存放在哪的?51
    發表于 11-23 17:54 ?9770次閱讀

    51單片機程序下載軟件下載

    51單片機程序下載軟件燒寫程序
    發表于 04-08 17:20 ?14次下載

    單片機仿真軟件適合單片機初學者嗎

    單片機仿真軟件的出現確實方便了單片機的學習,最為知名的單片機仿真軟件為Proteus,該軟件支持
    的頭像 發表于 03-08 11:29 ?2.1w次閱讀

    如何對單片機進行片外程序存儲器設計

    EA=0,單片機只訪問外部程序存儲器,對于8031單片機此引腳必須接地.EA=1,單片機訪問內部程序
    發表于 03-20 15:05 ?5011次閱讀

    基于52單片機程序燒入軟件

    基于52單片機程序燒入軟件
    發表于 06-09 09:46 ?2次下載

    51單片機存儲

    51單片機存儲器51單片機結構:程序存儲器ROM:片內ROM:片外ROM:片內ROM和片外ROM的區分:
    發表于 11-11 20:36 ?15次下載
    51<b class='flag-5'>單片機</b>之<b class='flag-5'>存儲</b>器

    如何知道單片機程序占了多少字節?

    對于單片機程序占了多少字節?單片機還剩多少存儲空間?
    發表于 02-08 16:26 ?6次下載
    如何知道<b class='flag-5'>單片機</b><b class='flag-5'>程序</b>占了多少字節?

    單片機燒錄程序的線比單片機上的少還能燒錄嗎

    單片機燒錄原理 單片機燒錄是指將編寫好的程序代碼通過一定的方式傳輸到單片機存儲,使其能夠按
    的頭像 發表于 09-02 09:54 ?521次閱讀

    單片機燒錄程序用什么軟件

    單片機燒錄程序單片機開發過程的一個重要環節,涉及到將編寫好的程序代碼通過燒錄器寫入單片機的R
    的頭像 發表于 09-02 10:05 ?1325次閱讀
    主站蜘蛛池模板: 手机在线看片福利| 成人综合在线视频| 国产色综合一区二区三区| 欧美亚洲综合另类成人| 国产精品午夜寂寞视频| 丁香视频在线| 欧美特黄三级在线观看| 中文字幕一区二区三区精彩视频| 777色淫网站女女免费| 日本视频一区二区三区| 99热久久精品免费精品| 久久xx| 4438全国最大成人免费高清| 亚洲免费一区二区| xxⅹ丰满妇女与善交| 五月婷婷一区| 欧洲成品大片在线播放| 激情亚洲色图| 一本高清在线视频| 奇米999| 免费被黄网站在观看| 日本不卡视频在线播放| 亚洲成人三级电影| 日本高免费观看在线播放| 久久成人综合网| 一本大道加勒比久久| 国产资源视频在线观看| 亚洲一区毛片| 亚洲色图欧美视频| 欧洲妇女成人淫片aaa视频| 国产精品不卡片视频免费观看| 午夜毛片不卡高清免费| 国产九九热| 欧美成人亚洲| 色视频免费在线观看| 国产又色又爽又黄的网站在线一级| 五月天在线婷婷| 手机看片www xiao2b cm| 国模小丫大尺度啪啪人体| 色妇影院| bt天堂资源种子在线8|