国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種版本信息的控制方法和控制裝置的制造方法

      文檔序號:9667158閱讀:267來源:國知局
      一種版本信息的控制方法和控制裝置的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及版本控制領(lǐng)域,尤其涉及一種版本信息的控制方法和版本信息的控制
      目.ο
      【背景技術(shù)】
      [0002]通常軟件版本的控制都是將應(yīng)用程序的版本控制信息存儲于0TP(0neTimeProgra_able)中,同時在應(yīng)用程序的數(shù)據(jù)塊中也記錄了其版本信息,在加載或更新應(yīng)用程序時將二者進行比較來達到版本控制的目的。
      [0003]當(dāng)應(yīng)用程序被加載時,會將數(shù)據(jù)塊中的版本信息與對應(yīng)的0ΤΡ中的版本信息進行比較,如果數(shù)據(jù)塊中的版本信息低于0ΤΡ中對應(yīng)的版本信息,則該數(shù)據(jù)塊將不被加載。當(dāng)應(yīng)用程序被更新時,同樣會判斷數(shù)據(jù)塊的版本信息是否高于0ΤΡ中對應(yīng)的版本信息,如果不是高于,則不更新當(dāng)前的數(shù)據(jù)塊;如果是高于,則更新當(dāng)前的數(shù)據(jù)塊并更新對應(yīng)在0ΤΡ中的版本控制信息。
      [0004]然而因為0ΤΡ的編程特性,0ΤΡ中的版本控制信息升級次數(shù)很有限。如果應(yīng)用程序的更新頻度比較大,便會有很多的升級次數(shù),如此就需要更多的0ΤΡ空間來存儲版本信息。然而0ΤΡ空間畢竟有限,占用太多0ΤΡ空間,會使得成本大大增加。

      【發(fā)明內(nèi)容】

      [0005]本發(fā)明的目的旨在至少解決上述技術(shù)缺陷之一,提供一種版本信息的控制方法和版本信息的控制裝置。
      [0006]本發(fā)明提供一種版本信息的控制方法,所述控制方法包括以下步驟:
      獲取一次性可編程器中的安全計數(shù)值,閃存中版本數(shù)據(jù)塊對應(yīng)的版本控制信息以及所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù);
      根據(jù)所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù)對所述安全計數(shù)值和版本控制信息進行校驗;
      當(dāng)校驗通過時,獲取應(yīng)用程序數(shù)據(jù)塊的版本控制信息;
      判斷應(yīng)用程序數(shù)據(jù)塊的版本控制信息是否高于或等于版本數(shù)據(jù)塊對應(yīng)的版本控制信息;
      如果是,加載應(yīng)用程序數(shù)據(jù)塊中的應(yīng)用程序。
      [0007]從上述方法的方案可以看出,當(dāng)需要加載應(yīng)用程序時,需要先對跟所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù)對所述安全計數(shù)值和版本控制信息進行校驗之后,再進行版本控制,以保證加載應(yīng)用程序的安全性,另外,由于版本信息存儲在閃存中,可以大大提高了版本信息的升級次數(shù)。
      [0008]本發(fā)明還提供版本信息的控制裝置,所述控制裝置包括:
      一次性可編程器,用于存儲安全計數(shù)值;
      閃存,用于存儲版本數(shù)據(jù)塊和應(yīng)用程序數(shù)據(jù)塊; 控制器,用于獲取一次性可編程器中的安全計數(shù)值,閃存中版本數(shù)據(jù)塊對應(yīng)的版本控制信息以及所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù);根據(jù)所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù)對所述安全計數(shù)值和版本控制信息進行校驗;當(dāng)校驗通過時,獲取閃存中應(yīng)用程序數(shù)據(jù)塊的版本控制信息;判斷應(yīng)用程序數(shù)據(jù)塊的版本控制信息是否高于或等于版本數(shù)據(jù)塊對應(yīng)的版本控制信息;如果是,加載應(yīng)用程序數(shù)據(jù)塊中的應(yīng)用程序。
      [0009]從上述控制裝置的方案可以看出,當(dāng)需要加載應(yīng)用程序時,需要先對跟所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù)對所述安全計數(shù)值和版本控制信息進行校驗之后,再進行版本控制,以保證加載應(yīng)用程序的安全性,另外,由于版本信息存儲在閃存中,可以大大提高了版本信息的升級次數(shù)。
      【附圖說明】
      [0010]圖1為本發(fā)明的版本信息的控制方法一種實施例的流程圖;
      圖2為本發(fā)明的數(shù)據(jù)傳輸?shù)目刂品椒ǖ谝粚嵤├牧鞒虉D;
      圖3為本發(fā)明的微代碼結(jié)構(gòu)示意圖;
      圖4為本發(fā)明的數(shù)據(jù)傳輸?shù)目刂品椒ǖ诙嵤├牧鞒虉D。
      【具體實施方式】
      [0011]為了使本發(fā)明所解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
      [0012]本發(fā)明提供一種實施例的版本信息的控制方法,如圖1所示,所述控制方法包括以下步驟:
      S01,獲取一次性可編程器中的安全計數(shù)值,閃存中版本數(shù)據(jù)塊對應(yīng)的版本控制信息以及所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù);
      S02,根據(jù)所述安全計數(shù)值和版本控制信息的簽名數(shù)據(jù)對所述安全計數(shù)值和版本控制信息進行校驗;
      S03,當(dāng)校驗通過時,獲取應(yīng)用程序數(shù)據(jù)塊的版本控制信息;
      S04,判斷應(yīng)用程序數(shù)據(jù)塊的版本控制信息是否高于或等于版本數(shù)據(jù)塊對應(yīng)的版本控制信息;
      S05,如果是,加載應(yīng)用程序數(shù)據(jù)塊中的應(yīng)用程序;
      S06,如果否,加載程序結(jié)束。
      [0013]由于應(yīng)用程序大部分的更新可能是與安全無關(guān)的,僅僅只是功能上的修改,但是會使得應(yīng)用程序更新的頻度比較大,如果將其版本控制信息存儲于0ΤΡ中,為保證能升級足夠次數(shù),則需要非常大的0ΤΡ空間。為避免占用太多0ΤΡ空間又確保版本信息安全可信,本發(fā)明采取以下方式:
      第一,使用部分OTP空間,但不作為存儲版本控制信息用,而是作為計數(shù)應(yīng)用程序涉及安全的升級,即用于存儲安全計數(shù)值,用于記錄應(yīng)用程序的安全升級次數(shù),從而增加控制方法的安全性。另外,將安全計數(shù)值命名為VR-Count er。
      [0014]第二,將版本控制信息存儲于版本數(shù)據(jù)塊(VRDB,Vers1n Data Block)中,而VRDB會被簽名并存儲于閃存(Flash)中;因為Flash沒有OTP的編程特性,部分的存儲空間用于存儲版本信息以便于數(shù)量較多次數(shù)的升級比如:4294967296次,可以大大提高了版本信息的升級次數(shù)。
      [0015]也就是說,系統(tǒng)在啟動時首先會校驗安全計數(shù)值和版本控制信息形成的數(shù)據(jù)組,校驗通過后進行版本控制;如果應(yīng)用程序數(shù)據(jù)塊中的版本信息低于VRDB中對應(yīng)的版本信息,應(yīng)用程序?qū)⒉槐患虞d;版本控制通過后才加載應(yīng)用程序。
      [0016]在多個應(yīng)用程序的情況下,現(xiàn)有技術(shù)將版本控制信息存儲在0ΤΡ中會繼續(xù)增加0ΤΡ空間的使用;而通過以上的版本控制方法,只需要增加一點Flash空間來存儲版本信息,不僅省去原本用來存儲版本信息的0ΤΡ空間,同時也不受限于0ΤΡ的編程特性使版本信息升級次數(shù)有限,真正實現(xiàn)了任意次版本控制。
      [0017]在具體實施中,所述控制方法還包括以下步驟:
      獲取應(yīng)用程序的更新信號;
      獲取更新后應(yīng)用程序數(shù)據(jù)塊的版本控制信息,當(dāng)前版本數(shù)據(jù)塊對應(yīng)的版本控制信息和一次性可編程器中的安全計數(shù)值;
      判斷更新后應(yīng)用程序數(shù)據(jù)塊的版本控制信息是否高于當(dāng)前版本數(shù)據(jù)塊對應(yīng)的版本控制信息;
      如果是,對更新后的版本控制信息和安全計數(shù)值進行簽名,得到更新后的簽名數(shù)據(jù),即更新后的版本控制信息和安全計數(shù)值形成數(shù)據(jù)組,對所述數(shù)據(jù)組使用SHA(SeCUre HashAlgorithm,安全哈希算法)算法進行SHA運算,再進行加密,得到更新后的簽名數(shù)據(jù);
      將更新后的版本控制信息和更新后的簽名數(shù)據(jù)更新到閃存的版本數(shù)據(jù)塊中。
      [0018]如果應(yīng)用程序更新,則升級VRDB中對應(yīng)的版本信息,即更新VRDB;若應(yīng)用程序的更新與安全有關(guān),則同時還需要升級VR-Counter,然后重新簽名數(shù)據(jù)組;將升級后的VRDB、VR-Counter和重新簽名獲得的簽名數(shù)據(jù)更新至相對應(yīng)位置,復(fù)位后重新進入應(yīng)用程序加載流程,也就是說更新后的簽名數(shù)據(jù)作為下一次加載流程中的獲取到的簽名數(shù)據(jù)。
      [0019]在具體實施中,所述版本控制信息包括安全版本號、主版本號和子版本號。
      [0020]在具體實施中,當(dāng)更新后的版本控制信息的安全版本號進行更新時,對所述安全計數(shù)值進行升級。
      [0021]在具體實施中,存儲在VRDB中的版本信息一般為一個32位4個字節(jié)的數(shù)據(jù),各個字節(jié)分別指示應(yīng)用程序數(shù)據(jù)塊的安全版本號、主版本號(2個字節(jié))、子版本號。
      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1