TWI766608B - 程式簽章方法 - Google Patents

程式簽章方法 Download PDF

Info

Publication number
TWI766608B
TWI766608B TW110108576A TW110108576A TWI766608B TW I766608 B TWI766608 B TW I766608B TW 110108576 A TW110108576 A TW 110108576A TW 110108576 A TW110108576 A TW 110108576A TW I766608 B TWI766608 B TW I766608B
Authority
TW
Taiwan
Prior art keywords
signature
program
processing module
log
tampered
Prior art date
Application number
TW110108576A
Other languages
English (en)
Other versions
TW202236120A (zh
Inventor
王正皇
梁進
徐碩宏
Original Assignee
新加坡商捷普電子(新加坡)公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 新加坡商捷普電子(新加坡)公司 filed Critical 新加坡商捷普電子(新加坡)公司
Priority to TW110108576A priority Critical patent/TWI766608B/zh
Priority to US17/686,545 priority patent/US20220294641A1/en
Application granted granted Critical
Publication of TWI766608B publication Critical patent/TWI766608B/zh
Publication of TW202236120A publication Critical patent/TW202236120A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3249Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Abstract

一種程式簽章方法,適用於對一待發布程式進行簽章,並藉由一與一簽章伺服單元連接的運算裝置來實施,該方法包含以下步驟:(A)根據一簽章端公鑰、一簽章程式碼及一簽章端數位簽章驗證一簽章程式是否無遭竄改;(B)當驗證出該簽章程式無遭竄改時,經由該簽章程式之執行,獲得並傳送一相關於該待發布程式的發布端雜湊值至該簽章伺服單元,以使該簽章伺服單元根據該發布端雜湊值獲得並傳送一發布端數位簽章至該運算裝置;及(C)在接收到該發布端數位簽章後,經由該簽章程式之執行,根據該發布端數位簽章與該待發布程式產生一經簽章的待發布程式。

Description

程式簽章方法
本發明是有關於一種簽章方法,特別是指一種用於避免所欲發布之程式遭惡意竄改的程式簽章方法。
程式在開發或出貨過程中,需要多次更新程式版本修正問題,程式版本一般都由供應商提供,不過如果有駭客或員工惡意提供非法的程式來嵌入一些非法代碼甚至人工失誤造成刷新問題,都會對供應商造成極大的商譽傷害。
考慮到程式的安全性問題,通常都會為程式進行加密動作,刷新的工具會為程式解密並檢查程式的可靠性(是否被竄改)。現有技術在加密程式時,會將程式傳遞給專門執行簽章的人員,藉由人員人工操作硬體安全模組以進行簽章流程進而獲得簽章後的程式,然而,經過人工處理可能會有操作失誤,或者程式被替換掉或竄改後才進行簽章的風險,故實有必要尋求解決之方案。
因此,本發明的目的,即在提供一種自動簽章,以避免人為操作失誤或人為竄改待發布程式進而提升安全性的程式簽章方法。
於是,本發明程式簽章方法,適用於對一待發布程式進行簽章,並藉由一與一簽章伺服單元連接的運算裝置來實施,該運算裝置包含一儲存模組及一電連接該儲存模組的處理模組,該儲存模組儲存有一用於簽章該待發布程式的簽章程式及一用於認證該簽章程式的簽章端公鑰,該簽章程式包含一簽章端數位簽章及一簽章程式碼,該程式簽章方法包含以下步驟:
(A)藉由該處理模組根據該簽章端公鑰、該簽章程式碼及該簽章端數位簽章驗證該簽章程式是否無遭竄改;
(B)當該處理模組驗證出該簽章程式無遭竄改時,藉由該處理模組經由該簽章程式之執行,獲得一相關於該待發布程式的發布端雜湊值,並將該發布端雜湊值傳送至該簽章伺服單元,以使該簽章伺服單元根據該發布端雜湊值獲得一發布端數位簽章,且將該發布端數位簽章回傳至該處理模組;及
(C)在該處理模組接收到該發布端數位簽章後,藉由該處理模組經由該簽章程式之執行,根據該發布端數位簽章與該待發布程式產生一經簽章的待發布程式。
本發明的功效在於:藉由該處理模組執行該簽章程式以自動對該待發布程式進行簽章,以避免人為操作失誤或人為竄改待發布程式進而提升安全性,此外,該處理模組在執行該簽章程式前,還會先驗證該簽章程式是否無遭竄改,以確保該簽章程式所執行之簽章程序正確且安全。
參閱圖1,本發明程式簽章方法的實施例適用於對一待發布程式進行簽章,並藉由一運算裝置11來實施,該運算裝置11包括一連接該通訊網路100的通訊模組111、一儲存模組112及一電連接該通訊模組111與該儲存模組112的處理模組113。該儲存模組112儲存有一用於編譯該待發布程式的編譯程式、一用於認證該編譯程式的編譯端公鑰、一用於認證一編譯日誌檔的編譯日誌公鑰、一用於簽章該待發布程式的簽章程式、一用於認證該簽章程式的簽章端公鑰、一用於認證一簽章日誌檔的簽章日誌公鑰、一用於發行該待發布程式的發行程式、一用於認證該發行程式的發行端公鑰,及一用於認證一發行日誌檔的發行日誌公鑰。該編譯程式包含一編譯端數位簽章及一編譯程式碼。該簽章程式包含一簽章端數位簽章及一簽章程式碼。該發行程式包含一發行端數位簽章及一發行程式碼。該運算裝置11經由一通訊網路100與一簽章伺服單元12及一管理端13連接。該簽章伺服單元12包含一簽章伺服器121及一硬體安全模組122(Hardware security module,簡稱HSM)。
在本實施例中,該運算裝置11之實施態樣可為一個人電腦、一筆記型電腦,或一伺服器等。該管理端13之實施態樣可為一個人電腦、一筆記型電腦、一伺服器、一平板電腦,或一智慧型手機等。
以下將藉由本發明程式簽章方法之實施例來說明該運算裝置11、該簽章伺服單元12與該管理端13中各元件之作動,該實施例包含一編譯程序、一簽章程序及一發行程序。
參閱圖1與圖2,該編譯程序說明了如何編譯該待發布程式,並包含下列步驟。
在步驟21中,該處理模組113根據該編譯端公鑰、該編譯程式碼及該編譯端數位簽章驗證該編譯程式是否無遭竄改。當該處理模組113驗證出該編譯程式無遭竄改時,流程進行步驟22;當該處理模組113驗證出該編譯程式已遭竄改時,流程結束。
值得一提的是,步驟21包含以下子步驟(見圖5)。
在子步驟211中,該處理模組113利用該編譯端公鑰解密該編譯端數位簽章以獲得一編譯端雜湊值。
在子步驟212中,該處理模組113獲得另一相關於該編譯程式碼的編譯端雜湊值。其中,該處理模組113係對該編譯程式碼進行雜湊運算以獲得該另一編譯端雜湊值。
在子步驟213中,該處理模組113判定該編譯端雜湊值及該另一編譯端雜湊值是否相符,以驗證該編譯程式是否無遭竄改。當該處理模組113判定出該編譯端雜湊值及該另一編譯端雜湊值相符時,即代表該編譯程式無遭竄改時,流程進行步驟22;當該處理模組113判定出該編譯端雜湊值及該另一編譯端雜湊值不相符時,即代表該編譯程式已遭竄改時,流程結束。
在步驟22中,該處理模組113經由該編譯程式之執行,將該待發布程式進行編譯,以獲得一編譯後的待發布程式。值得一提的是,該待發布程式例如是一軟體或一韌體,當該待發布程式為軟體時,該編譯後的待發布程式例如為一位元檔;當該待發布程式為韌體時,該編譯後的待發布程式例如為一映像檔(image file)。
在步驟23中,該處理模組113經由該編譯程式之執行,產生與該編譯後的待發布程式之編譯有關的該編譯日誌檔,該編譯日誌檔包含一編譯日誌數位簽章及一編譯日誌資料。該編譯日誌資料例如包含一編譯檔名、一編譯開始時間、一編譯完成時間、一編譯狀態及一編譯檔路徑等。藉由該編譯日誌檔的留存,可留下編譯之紀錄,以供查核編譯過程中是否有不合理之處。該編譯日誌數位簽章係藉由將該編譯日誌資料進行雜湊運算以獲得一對應該編譯日誌資料之雜湊值後,再將對應該編譯日誌資料之該雜湊值利用一對應於該編譯日誌公鑰的編譯日誌私鑰加密而獲得。
在步驟24中,該處理模組113根據該編譯日誌公鑰、該編譯日誌資料及該編譯日誌數位簽章驗證該編譯日誌檔是否無遭竄改。當該處理模組113驗證出該編譯日誌檔無遭竄改時,流程進行步驟31(亦即,簽章程序);當該處理模組113驗證出該編譯日誌檔已遭竄改時,流程結束。
值得一提的是,步驟24包含以下子步驟(見圖6)。
在子步驟241中,該處理模組113利用該編譯日誌公鑰解密該編譯日誌數位簽章以獲得一編譯日誌雜湊值。
在子步驟242中,該處理模組113獲得另一相關於該編譯日誌資料的編譯日誌雜湊值。其中,該處理模組113係對該編譯日誌資料進行雜湊運算以獲得該另一編譯日誌雜湊值。
在子步驟243中,該處理模組113判定該編譯日誌雜湊值及該另一編譯日誌雜湊值是否相符,以驗證該編譯日誌檔是否無遭竄改。當該處理模組113判定出該編譯日誌雜湊值及該另一編譯日誌雜湊值相符時,即代表該編譯日誌檔無遭竄改時,流程進行步驟31;當該處理模組113判定出該編譯日誌雜湊值及該另一編譯日誌雜湊值不相符時,即代表該編譯日誌檔已遭竄改時,流程結束。
參閱圖1與圖3,該簽章程序說明了如何簽章該編譯後的待發布程式,並包含下列步驟。
在步驟31中,該處理模組113透過該通訊模組111經由該通訊網路100傳送一簽章認可請求至該管理端13。若一持有該管理端13之審核人員同意該編譯後的待發布程式之簽章時,該管理端13可經由一審核人員之輸入操作來產生並傳送一認可回覆至該運算裝置11。
在步驟32中,該處理模組113判定是否透過該通訊模組111經由該通訊網路100接收到來自該管理端13之回應於該簽章認可請求的該認可回覆。當該處理模組113判定出有接收到該認可回覆時,流程進行步驟33;當該處理模組113判定出無接收到該認可回覆時,流程結束。
在步驟33中,該處理模組113根據該簽章端公鑰、該簽章程式碼及該簽章端數位簽章驗證該簽章程式是否無遭竄改。當該處理模組113驗證出該簽章程式無遭竄改時,流程進行步驟34;當該處理模組113驗證出該簽章程式已遭竄改時,流程結束。值得一提的是,該處理模組113驗證該簽章程式是否無遭竄改的流程類似於子步驟211~213,故不再重述。
在步驟34中,該處理模組113經由該簽章程式之執行,獲得一相關於該編譯後的待發布程式的發布端雜湊值,並將該發布端雜湊值透過該通訊模組111經由該通訊網路100傳送至該簽章伺服單元12之簽章伺服器121。
在步驟35中,在該簽章伺服器121經由該通訊網路100接收到該發布端雜湊值後,該簽章伺服器121將該發布端雜湊值提供給該硬體安全模組122進行加密以獲得一發布端數位簽章,且經由該通訊網路100將該發布端數位簽章回傳至該處理模組113。
在步驟36中,在該處理模組113透過該通訊模組111經由該通訊網路100接收到該發布端數位簽章後,藉由該處理模組113經由該簽章程式之執行,根據該發布端數位簽章與該編譯後的待發布程式產生一經簽章的待發布程式。其中,該處理模組113係將該發布端數位簽章與該編譯後的待發布程式結合以產生該經簽章的待發布程式。
在步驟37中,該處理模組113經由該簽章程式之執行,產生與該經簽章的待發布程式之產生有關的該簽章日誌檔,該簽章日誌檔包含一簽章日誌數位簽章及一簽章日誌資料。該簽章日誌資料例如包含一簽章全域唯一識別碼 (Globally Unique Identifier,簡稱GUID) 、一簽章檔名、一簽章開始時間、一簽章完成時間、一簽章狀態及一簽章檔路徑等。藉由該簽章日誌檔的留存,可留下簽章之紀錄,以供查核簽章過程中是否有不合理之處。該簽章日誌數位簽章係藉由將該簽章日誌資料進行雜湊運算以獲得一對應該簽章日誌資料之雜湊值後,再將對應該簽章日誌資料之該雜湊值利用一對應於該簽章日誌公鑰的簽章日誌私鑰加密而獲得。
在步驟38中,該處理模組113根據該簽章日誌公鑰、該簽章日誌資料及該簽章日誌數位簽章驗證該簽章日誌檔是否無遭竄改。當該處理模組113驗證出該簽章日誌檔無遭竄改時,流程進行步驟41(亦即,發行程序);當該處理模組113驗證出該簽章日誌檔已遭竄改時,流程結束。值得一提的是,該處理模組113驗證該簽章日誌檔是否無遭竄改的流程類似於子步驟241~243,故不再重述。
參閱圖1與圖4,該發行程序說明了如何發行該經簽章的待發布程式,並包含下列步驟。
在步驟41中,該處理模組113根據該發行端公鑰、該發行程式碼及該發行端數位簽章驗證該發行程式是否無遭竄改。當該處理模組113驗證出該發行程式無遭竄改時,流程進行步驟42;當該處理模組113驗證出該發行程式已遭竄改時,流程結束。值得一提的是,該處理模組113驗證該發行程式是否無遭竄改的流程類似於子步驟211~213,故不再重述。
在步驟42中,該處理模組113經由該發行程式之執行,將該經簽章的待發布程式上傳至一軟體製品倉庫如,Artifactory。
在步驟43中,該處理模組113經由該發行程式之執行,產生一與該經簽章的待發布程式之發行有關的發行日誌檔,該發行日誌檔包含一發行日誌數位簽章及一發行日誌資料。該發行日誌資料例如包含一程式包名、一問題修正及一發行版本通知等。藉由該發行日誌檔的留存,可留下發行之紀錄,以供查核發行過程中是否有不合理之處。該發行日誌數位簽章係藉由將該發行日誌資料進行雜湊運算以獲得一對應該發行日誌資料之雜湊值後,再將對應該發行日誌資料之該雜湊值利用一對應於該發行日誌公鑰的發行日誌私鑰加密而獲得。
在步驟44中,該處理模組113根據該發行日誌公鑰、該發行日誌資料及該發行日誌數位簽章驗證該發行日誌檔是否無遭竄改。當該處理模組113驗證出該發行日誌檔無遭竄改時,流程進行步驟45;當該處理模組113驗證出該發行日誌檔已遭竄改時,流程結束。
在步驟45中,該處理模組113產生一包含該編譯日誌檔、該簽章日誌檔及該發行日誌檔的待發布程式日誌資料。藉由將所有程序所產生的日誌檔一併提供給客戶,以供客戶查核該待發布程式自編譯、簽章到發行過程中是否有任何不合理之處。
綜上所述,本發明程式簽章方法,藉由該處理模組113執行該編譯程式、簽章程式及發行程式以自動對該待發布程式進行編譯、簽章及發行,以避免人為操作失誤或人為竄改待發布程式進而提升安全性。此外,該處理模組113在執行該編譯程式、簽章程式及發行程式前,皆會先驗證該編譯程式、簽章程式及發行程式是否無遭竄改,以確保該編譯程式、簽章程式及發行程式所執行之編譯、簽章及發行程序正確且安全。再者,所有程序所產生的日誌檔皆會被留存下來而無法刪改,以供查核該待發布程式自編譯、簽章到發行過程中是否有任何不合理之處,故確實能達成本發明的目的。
惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。
11:運算裝置 111:通訊模組 112:儲存模組 113:處理模組 12:簽章伺服單元 121:簽章伺服器 122:硬體安全模組 13:管理端 100:通訊網路 21~24:步驟 31~38:步驟 41~45:步驟 211~213:子步驟 241~243:子步驟
本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中: 圖1是一方塊圖,說明實施本發明程式簽章方法之實施例的一運算裝置與一簽章伺服單元及一管理端連接; 圖2是一流程圖,說明本發明程式簽章方法之實施例的一編譯程序; 圖3是一流程圖,說明本發明程式簽章方法之實施例的一簽章程序; 圖4是一流程圖,說明本發明程式簽章方法之實施例的一發行程序; 圖5是一流程圖,說明該運算裝置如何驗證一編譯程式是否無遭竄改;及 圖6是一流程圖,說明該運算裝置如何驗證一編譯日誌檔是否無遭竄改。
31~38:步驟

Claims (10)

  1. 一種程式簽章方法,適用於對一待發布程式進行簽章,並藉由一與一簽章伺服單元連接的運算裝置來實施,該運算裝置包含一儲存模組及一電連接該儲存模組的處理模組,該儲存模組儲存有一用於簽章該待發布程式的簽章程式及一用於認證該簽章程式的簽章端公鑰,該簽章程式包含一簽章端數位簽章及一簽章程式碼,該程式簽章方法包含以下步驟:(A)藉由該處理模組根據該簽章端公鑰、該簽章程式碼及該簽章端數位簽章驗證該簽章程式是否無遭竄改;(B)當該處理模組驗證出該簽章程式無遭竄改時,藉由該處理模組經由該簽章程式之執行,獲得一相關於該待發布程式的發布端雜湊值,並將該發布端雜湊值傳送至該簽章伺服單元,以使該簽章伺服單元根據該發布端雜湊值獲得一發布端數位簽章,且將該發布端數位簽章回傳至該處理模組;(C)在該處理模組接收到該發布端數位簽章後,藉由該處理模組經由該簽章程式之執行,根據該發布端數位簽章與該待發布程式產生一經簽章的待發布程式;及(D)藉由該處理模組經由該簽章程式之執行,產生一與該經簽章的待發布程式之產生有關的簽章日誌檔,該簽章日誌檔包含一簽章日誌數位簽章及一簽章日誌資料。
  2. 如請求項1所述的程式簽章方法,其中,步驟(A)包含以下子步驟: (A-1)藉由該處理模組利用該簽章端公鑰解密該簽章端數位簽章以獲得一簽章端雜湊值;(A-2)藉由該處理模組獲得另一相關於該簽章程式碼的簽章端雜湊值;及(A-3)藉由該處理模組判定該簽章端雜湊值及該另一簽章端雜湊值是否相符,以驗證該簽章程式是否無遭竄改。
  3. 如請求項1所述的程式簽章方法,該儲存模組還儲存有一用於認證該簽章日誌檔的簽章日誌公鑰,在步驟(D)後,還包含以下步驟:(E)藉由該處理模組根據該簽章日誌公鑰、該簽章日誌資料及該簽章日誌數位簽章驗證該簽章日誌檔是否無遭竄改。
  4. 如請求項3所述的程式簽章方法,該儲存模組還儲存有一用於發行該待發布程式的發行程式及一用於認證該發行程式的發行端公鑰,該發行程式包含一發行端數位簽章及一發行程式碼,在步驟(E)後,還包含以下步驟:(F)當該處理模組驗證出該簽章日誌檔無遭竄改時,藉由該處理模組根據該發行端公鑰、該發行程式碼及該發行端數位簽章驗證該發行程式是否無遭竄改;及(G)當該處理模組驗證出該發行程式無遭竄改時,藉由該處理模組經由該發行程式之執行,將該經簽章的待發布程式上傳至一軟體製品倉庫。
  5. 如請求項4所述的程式簽章方法,在步驟(G)後,還包含 以下步驟:(H)藉由該處理模組經由該發行程式之執行,產生一與該經簽章的待發布程式之發行有關的發行日誌檔,該發行日誌檔包含一發行日誌數位簽章及一發行日誌資料。
  6. 如請求項5所述的程式簽章方法,該儲存模組還儲存有一用於認證該發行日誌檔的發行日誌公鑰,在步驟(H)後,還包含以下步驟:(I)藉由該處理模組根據該發行日誌公鑰、該發行日誌資料及該發行日誌數位簽章驗證該發行日誌檔是否無遭竄改;及(J)當該處理模組驗證出該發行日誌檔無遭竄改時,該處理模組產生一包含該簽章日誌檔及該發行日誌檔的待發布程式日誌資料。
  7. 如請求項1所述的程式簽章方法,該儲存模組還儲存有一用於編譯該待發布程式的編譯程式及一用於認證該編譯程式的編譯端公鑰,該編譯程式包含一編譯端數位簽章及一編譯程式碼,在步驟(A)前,還包含以下步驟:(K)藉由該處理模組根據該編譯端公鑰、該編譯程式碼及該編譯端數位簽章驗證該編譯程式是否無遭竄改;及(L)當該處理模組驗證出該編譯程式無遭竄改時,藉由該處理模組經由該編譯程式之執行,將該待發布程式進行編譯,以獲得一編譯後的待發布程式;其中,步驟(B)之發布端雜湊值係對該編譯後的待發布程式進行雜湊運算而獲得,步驟(C)之經簽章的待發布 程式係結合該發布端數位簽章與該編譯後的待發布程式而產生。
  8. 如請求項7所述的程式簽章方法,在步驟(L)後,還包含以下步驟:(M)藉由該處理模組經由該編譯程式之執行,產生一與該編譯後的待發布程式之編譯有關的編譯日誌檔,該編譯日誌檔包含一編譯日誌數位簽章及一編譯日誌資料。
  9. 如請求項8所述的程式簽章方法,該儲存模組還儲存有一用於認證該編譯日誌檔的編譯日誌公鑰,在步驟(M)後,還包含以下步驟:(N)藉由該處理模組根據該編譯日誌公鑰、該編譯日誌資料及該編譯日誌數位簽章驗證該編譯日誌檔是否無遭竄改;其中,當該處理模組驗證出該編譯日誌檔無遭竄改時,步驟(A)被執行。
  10. 如請求項9所述的程式簽章方法,該運算裝置還與一管理端連接,在步驟(N)後,還包含以下步驟:(O)當該處理模組驗證出該編譯日誌檔無遭竄改時,藉由該處理模組傳送一簽章認可請求至該管理端;(P)藉由該處理模組判定是否接收到一來自該管理端之回應於該簽章認可請求的認可回覆;及其中,當該處理模組判定出有接收到該認可回覆時,步驟(A)被執行。
TW110108576A 2021-03-10 2021-03-10 程式簽章方法 TWI766608B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW110108576A TWI766608B (zh) 2021-03-10 2021-03-10 程式簽章方法
US17/686,545 US20220294641A1 (en) 2021-03-10 2022-03-04 Program signing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW110108576A TWI766608B (zh) 2021-03-10 2021-03-10 程式簽章方法

Publications (2)

Publication Number Publication Date
TWI766608B true TWI766608B (zh) 2022-06-01
TW202236120A TW202236120A (zh) 2022-09-16

Family

ID=83103663

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110108576A TWI766608B (zh) 2021-03-10 2021-03-10 程式簽章方法

Country Status (2)

Country Link
US (1) US20220294641A1 (zh)
TW (1) TWI766608B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201447635A (zh) * 2013-06-10 2014-12-16 Jie Chen 基於數位簽章代碼的內容驗證方法
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
CN108566381A (zh) * 2018-03-19 2018-09-21 百度在线网络技术(北京)有限公司 一种安全升级方法、装置、服务器、设备和介质
CN109472166A (zh) * 2018-11-01 2019-03-15 恒生电子股份有限公司 一种电子签章方法、装置、设备及介质
TW202020705A (zh) * 2018-11-21 2020-06-01 中華電信股份有限公司 憑證有效性驗證系統及其方法
TWI698113B (zh) * 2019-10-09 2020-07-01 郭谷彰 電子裝置之認證方法及系統
CN111723405A (zh) * 2020-05-11 2020-09-29 上海黔易数据科技有限公司 一种去中心化的多重数字签名/电子签章方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003003169A2 (en) * 2001-06-28 2003-01-09 Cloakware Corporation Secure method and system for biometric verification
US8850211B2 (en) * 2009-04-27 2014-09-30 Qualcomm Incorporated Method and apparatus for improving code and data signing
US9100174B2 (en) * 2012-08-31 2015-08-04 Freescale Semiconductor, Inc. Secure provisioning in an untrusted environment
KR101976006B1 (ko) * 2012-11-08 2019-05-09 에이치피프린팅코리아 유한회사 웹 서버의 자체 서명 인증서를 이용한 사용자 인증 방법, 이를 수행하기 위한 클라이언트 장치 및 웹 서버를 포함하는 전자 장치
US10615971B2 (en) * 2017-05-22 2020-04-07 Microsoft Technology Licensing, Llc High integrity logs for distributed software services
EP3704611A4 (en) * 2017-11-03 2021-06-02 Nokia Technologies Oy TRUSTED COMPUTER PROCESS AND APPARATUS
WO2021076868A1 (en) * 2019-10-16 2021-04-22 Coinbase, Inc. Systems and methods for re-using cold storage keys
US20210314166A1 (en) * 2020-04-03 2021-10-07 Mastercard International Incorporated Systems and methods for use in appending log entries to data structures
US20220076253A1 (en) * 2020-09-06 2022-03-10 David Chaum Computation mixing

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201447635A (zh) * 2013-06-10 2014-12-16 Jie Chen 基於數位簽章代碼的內容驗證方法
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
CN108566381A (zh) * 2018-03-19 2018-09-21 百度在线网络技术(北京)有限公司 一种安全升级方法、装置、服务器、设备和介质
CN109472166A (zh) * 2018-11-01 2019-03-15 恒生电子股份有限公司 一种电子签章方法、装置、设备及介质
TW202020705A (zh) * 2018-11-21 2020-06-01 中華電信股份有限公司 憑證有效性驗證系統及其方法
TWI698113B (zh) * 2019-10-09 2020-07-01 郭谷彰 電子裝置之認證方法及系統
CN111723405A (zh) * 2020-05-11 2020-09-29 上海黔易数据科技有限公司 一种去中心化的多重数字签名/电子签章方法

Also Published As

Publication number Publication date
TW202236120A (zh) 2022-09-16
US20220294641A1 (en) 2022-09-15

Similar Documents

Publication Publication Date Title
US11258792B2 (en) Method, device, system for authenticating an accessing terminal by server, server and computer readable storage medium
TWI449395B (zh) 安全數位簽章系統
TW201820132A (zh) 用於可程式化設備的統一程式設計環境
US9898587B2 (en) Software protection using an installation product having an entitlement file
US20070235517A1 (en) Secure digital delivery seal for information handling system
US20110085667A1 (en) Various methods and apparatuses for securing an application container
US8495383B2 (en) Method for the secure storing of program state data in an electronic device
CN102685727B (zh) 一种应用程序发送、运行方法、系统、服务器和终端
CN107111713A (zh) 软件系统的自动验证
WO2015161683A1 (zh) 一种统一apk签名的方法及其系统
CN110278115B (zh) 热更新方法及装置
CN102171652A (zh) 为电子装置提供可信软件的方法
CN110414190B (zh) 应用安装包的签名方法、相关装置、存储介质及电子设备
WO2017080262A1 (zh) 一种 apk 签名认证方法及其系统
CN103152182A (zh) 一种电子数据认证验证方法
JP2017517942A (ja) 多者間信用照会のapk署名方法及びシステム
JPH10301773A (ja) 情報処理装置および情報処理方法、並びに記録媒体
CN106936588B (zh) 一种硬件控制锁的托管方法、装置及系统
US9954900B2 (en) Automating the creation and maintenance of policy compliant environments
CN102065077A (zh) 终端应用软件分发方法及系统
CN101883122B (zh) 安全连接创建方法以及用于创建安全连接的客户端设备
KR101523309B1 (ko) 어플리케이션 배포 시스템 및 방법
WO2019080110A1 (zh) 一种 apk 签名认证方法及系统
CN114282193A (zh) 一种应用授权方法、装置、设备及存储介质
US20100223469A1 (en) Method, System and Computer Program Product for Certifying Software Origination