ivysymbian wrote:
(Capabilities是官方的講法,不知道翻譯成什麼才好)...(恕刪)
一般來講會翻譯成「能力」,比如說近年來大家耳熟能詳的 CMMI 認證,這個方法論名稱中的 "C" 便是 "Capability" 一字(Symbian Signed 使用的是複數型態),而不少人也都將其 CMM 翻譯為「能力成熟度模型」,這裡若要使用能力來解釋也算是十分貼切。不過其實個人以為,有些字何必一定要翻譯,翻譯出來也不見得能兼顧信、達、雅,或是能直覺又中肯的傳達,倒不如直接使用原文會比較恰當,這點於 IT 領域中又特別常見。
為什麼稱為 capabilities,可以想像成它們就是一群作業系統提供給應用程式呼叫的功能,比如說小到像是做出一個選單供使用者自選項中挑選一個值,控制螢幕的背光等等,一直到程式可以讀取使用者資料,甚或對某些檔案進行操作等等,都必須按照作業系統給程式的遊戲規則(介面)以及獲得作業系統的允許方可進行,這些確實很像一個一個的能力,也就是 Symbian Signed 管制的標的。
目前這些 Capabilities 分成四個群組,第一是不予限制,也就是不用經過任何程序,任何的程式都可以使用的,大約有 60% 左右的 capabilities 屬於此類。第二便是只要使用者同意(User Grantable Basic Capabilities)便可以獲得的,如果各位於您的手機上安裝程式時,有留意過某些程式的安裝程序中會出現一個對話視窗,裡面說這個應用程式像你請求一些權限,比如說存取(讀寫)你的個人資料云云,然後左功能鍵顯示 "Continue"(或 "繼續"),就是在「要求你的同意」,此時只要你不是按下 "Cancel"(取消)而是按下 "Continue",就表示「身為使用者的你同意這個程式的請求,並且自主的賦予他請求的能力」,這類的 capabilities 包括讀、寫你的個人資料,使用網路或本地端的服務,以及使用者環境的變數等。第三就是本次討論的重點,必須到 Symbian Signed 申請帳號,然後跑一大堆程序後才能給予程式的 capabilities(Symbian Signed Extended Capabilities),官方把這裡所需要的憑證(Sign 是動詞,大家翻簽證,但那個「證」自然是名詞,原文是 Certificate,中文翻譯為憑證)稱為 Developer Certificate,顧名思義便是給開發者(程式設計師)使用的。程式開發時為了不斷地改版與測試,但又必須找一批手機來反覆安裝測試,並且按照程式需求,需要更多被限制也更敏感的 capabilities,所以使用複雜且受 Symbian 統一管控的程序來管制,比如說要想使用 GPS 相關功能,或是存取機器本身的資訊等等都在此類。最後還有一類 capabilities,就是更為特殊需求但強大的,比如說對於 Disk 的管理,DRM(數位授權管理)、多媒體應用等等的皆屬此類,而且申請門檻更高。
Symbian Signed 對於每一種身份(使用者、應用程式開發商、發行商等等)來說,都有著不同的意義,若論對於使用者而言,本意其實是維護他們使用的設備,不致遭受惡意程式的侵害,進而對於設備甚或個人的隱私造成傷害。比如說要是不用 Sign,一個偽裝成導航軟體或運動軌跡紀錄的惡意程式,便可以不斷地將你的位置發送給特定的伺服器,等於帶了一個追蹤器在身上,就算你事後發現,因為當初沒有 Sign 過,就沒人知道是誰放出的程式,你或服務供應商、電信營運商、手機製造商或是 Symbian 都比較難找到始作俑者進行究責。所以若使用者維持手機的預設值沒有更動,沒有 sign 過程式的應該就會安裝失敗,減少遭到惡意程式侵害的風險。而只要是正當方式取得的,還真是絕大部分不用你用 Developer Certificate 去簽過,Symbian 甚至也提供 Freeware Signing 的機制,免費軟體只要通過測試,一樣可以取得為了公開發行的認證,安裝時便不用使用者額外用開發者憑證去簽。
講到底,幫人家申請憑證,到底算不算是助長盜版呢,我還是以為見仁見智,比如說對岸著名的 A4 輸入法,就會同時釋出兩種版本,一種是內測,當初參加的人都必須留下 IMEI 與 email,由開發團隊直接向 Symbian 提出申請,核可後這些人的手機上便可以直接安裝內測版本。但為了讓很多人可以使用(不然光是請求、抱怨、痛哭、放狗咬人者就可以煩死他們),他們也釋出了公測版本,但就必須要經過 Developer Certificate 簽過才能安裝使用,這樣的情況下自然會有不少人需要有人幫他們完成簽證,那這應該就不算是助長盜版。
其實很多事情都有情、理、法三個層面的不同考量,雖說是老生長談了,不過我們可以想想,同樣一把水果刀,拿在善良百姓或是要持刀犯罪的罪犯手中自然完全不同,但若今天因為罪犯持刀犯行,我們難道就要把賣刀的老闆抓起來嗎?可是那為什麼很多國家又禁止槍枝的買賣?那就是因為程度與造成的傷害不同。香煙、大麻與各級毒品也是同樣的道理。所以今天要思考的是一個 Developer Certificate 可以造成的傷害與影響到底有多大,被幫助的人又會拿著他去做什麼樣的事情。若傷害夠大,又有一定的疑慮,那個人以為,也沒有必要以「偽善」兩字冠給出來呼籲不要幫人簽證的網友們。何況偽善是必須同時要某人「做出」他「要求/希望不要做」的事情,這兩點都滿足才能成立的,基於此,沒有證據而丟給人這樣兩個字,也許有欠公允。
Wise men talk coz they have something to say; fool