為什麼要給應用程式簽名?
1、為什麼要給Android應用程式簽名?
Android系統要求每一個Android應用程式必須要經過數字簽名才能夠安裝到系統中,也就是說如果一個Android應用程式沒有經過數字簽名,是沒有辦法安裝到系統中的!Android透過數字簽名來標識應用程式的作者和在應用程式之間建立信任關係,不是用來決定終端使用者可以安裝哪些應用程式。這個數字簽名由應用程式的作者完成,並不需要權威的數字證照籤名機構認證,它只是用來讓應用程式包自我認證的。
將數字證照與軟體連線時,需要輸入一些軟體的正確資訊。通常,一個數字證照只能保護一個軟體的安全,所以在填寫軟體的域名時需要準確。如果填寫的資訊有錯漏,在一定程度上也會影響簽名。簽名時,需要更改軟體中的相關設定,並將辦理的數字簽名設定為可以信任的證照。
2、為什麼我開發的Android應用程式沒有做什麼簽名也能在模擬器和手機上執行?
你沒有給Android應用程式簽名並不代表Android應用程式沒有被簽名。為了方便我們開發除錯程式,ADT會自動的使用debug金鑰為應用程式簽名。debug金鑰?它在哪?debug金鑰是一個名為debug.keystore的檔案,它的位置:
Ubuntu: ~/.android/debug.keystore (win10: c:/user/.Android/debug.keystore; xp: C:/Documents and Settings/user/.Android/debug.keystore)
“user”對應於你自己的windows作業系統使用者名稱,這也就意味著,如果我們想擁有自己的簽名,而不是讓ADT幫我們簽名的話,我們也要有一個屬於自己的金鑰檔案(*.keystore)
未使用數字簽名的軟體可能無法正常執行,以Windows系統為例,如果使用者下載執行未簽名的軟體, Windows系統會發出紅色安全警告;而未簽名的ActiveX控制元件,Windows會直接攔截不允許執行。因此,數字簽名是軟體發行前必不可少的一道工序。
對軟體進行數字簽名的前提是需要申請一張程式碼簽名證照,它可用於簽署Adobe Air、Apple 平臺、Java、Mozilla物件檔案以及MS Office宏和VBA應用程式。為何要對軟體進行數字簽名呢?
1、應用程式數字簽名不僅減少軟體下載時彈出的安全警告,讓使用者可以放心下載軟體
2、數字簽名可以驗證發行者的真實身份
當使用程式碼簽名證照對軟體進行數字簽名之後,使用者就能知道該軟體的發行者是誰,不用擔心是否是假冒軟體,大大的增加了使用者的可信度,從而建立良好的軟體品牌信譽度,提升公司形象。
3、數字簽名可以防止軟體被惡意篡改
數字簽名就相當於一張“封條”,可以防止軟體發行之後被惡意篡改或被人非法捆綁一些間諜軟體後使用者下載,從而更有效地保護了軟體開發商的切身利益和產品品牌。
我們都知道,程式碼簽名證照主要有OV和EV兩種型別,為什麼軟體更需要EV程式碼簽名證照呢?
1、EV程式碼簽名證照執行的是更加嚴格的稽核標準,它對於證照的申請者進行了嚴格的身份確認,確保證照的使用者身份真實可信。
2、EV程式碼簽名證照通常使用更加嚴格的證照載體來儲存證照,即軟體釋出者在使用EV程式碼簽名證照對軟體進行數字簽名的時候,需要拿到對應的eToken插入到電腦中,輸入密碼方可進行數字簽名,這種方式減少了證照被惡意複製後濫用的風險。
當軟體使用了EV程式碼簽名證照之後,無論是下載還是安裝,Windows皆對這個軟體進行無條件放行,沒有風險警告,沒有安裝攔截,也沒有“發行者未知”的不友好提示,暢通無阻
可見,應用程式數字簽名是軟體程式碼的安全保護者。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70017559/viewspace-2907597/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 程式碼簽名證書能給哪些應用程式進行簽名
- 什麼是TF簽名,為什麼現在普遍都是用testflight簽名!
- 為什麼驅動程式簽名需要EV程式碼簽名證書
- 為什麼要選擇蘋果企業簽名?蘋果
- APP簽名後的應用分發是什麼APP
- 企業應用程式為什麼要定製開發
- 蘋果簽名為什麼會掉?蘋果
- Android 應用簽名Android
- 蘋果企業簽名什麼用?蘋果
- 為什麼我對簽名訊息的簽名驗證在PHP程式碼中未工作?PHP
- 企業簽名為什麼會掉籤?企業簽名掉籤原因是什麼?
- iOS逆向——應用簽名及重簽名原理iOS
- 為什麼超級簽名也會掉?
- 超級簽名是什麼?超級簽名跟企業簽名有什麼區別?
- win10驅動簽名禁用後果_win10驅動程式簽名有什麼用Win10
- Android應用重簽名Android
- iOS應用簽名(上)iOS
- iOS應用簽名(下)iOS
- 為什麼要部署Web應用防火牆(WAF)?Web防火牆
- 什麼是ios簽名?iOS
- 為什麼要選擇做一名程式設計師?程式設計師
- app超級簽名是幹什麼用的?APP
- 為什麼ios企業簽名後的App不可以上架蘋果應用商店?iOSAPP蘋果
- 為什麼要給網橋分配IP地址
- 為什麼要學習大模型應用開發?大模型
- iOS逆向 - 應用簽名原理及重簽名 (重籤微信應用實戰)iOS
- 為什麼不上架,選擇企業簽名?
- iOS逆向 應用重簽名+微信重簽名實戰iOS
- 為什麼要虛擬化,為什麼要容器,為什麼要Docker,為什麼要K8S?DockerK8S
- 蘋果企業簽名到底有什麼用?蘋果
- 為什麼 JavaScript 的 this 要這麼用?JavaScript
- 文件數字簽名工作原理是什麼?文件簽名有什麼好處?哪些行業使用文件簽名證書?行業
- iOS超級簽名和iOS企業簽名有什麼不同?iOS
- 蘋果簽名中出現的TF有什麼用處蘋果
- 電子簽名與手寫簽名的區別,電子簽名的優勢是什麼?
- IOS 逆向開發(三)應用簽名iOS
- 數字簽名的原理和應用
- 給軟體數字簽名