June Huang 的部落格

智慧型手機 - 安全風險與防護

June Huang 的照片

行動電話近年來迅速進化,原先必須透過電腦處理的工作,漸漸的也能夠透過手機處理。現在,智慧型手機已經能夠輕易取代筆記型電腦,音樂播放器和掌上型遊戲主機,以滿足人們在這些方面的需求。但是,隨著增加廣泛的功能所帶來的副作用,智慧型手機也如同個人電腦一樣容易受到攻擊。

最常見的風險是:遺失手機。當您遺失您的手機時,儲存在內的個人資料將會有甚麼下場?撿到您手機的人將能夠存取所有您的聯絡人資料、簡訊、電子郵件、甚至可以從您在手機上所安裝的銀行應用程式而得知您所使用的銀行。因此,千萬不要將敏感的資料,如個人帳號密碼,存在手機內。並且設定強度良好的手機密碼來保護您手機裡的資料。

透過手機瀏覽網頁時點擊鏈接,或打開未知寄件人的簡訊和電子郵件(包括附件)時要加倍小心。在使用電腦時,我們知道這些來源是不安全的,同樣的道理也適用於智慧型手機上。不可信賴的鏈接可能帶你到惡意網站並取得您的個人資訊,而附件可能含有病毒,並散播到你聯絡人名單內的其他人。

應用程序,雖然增加了智慧型手機的功能和可用性,但也造成資料安全上的威脅。由於應用程序通常由第三方開發,監管和控制欺騙性應用程序便成了一大問題。雖然谷歌和蘋果公司試圖在他們的手機應用程式市場將惡意軟件刪除,但這方面的檢測困難,通常只能在被動的受到了損害後才能有所行動。因此,用戶應該先瞭解即將下載的軟體開發商,並注意應用軟體在網路上存取的行為。曾經有過的案例為,部分Android系統的用戶下載了偽裝成一個媒體播放器的簡訊木馬。這些用戶並不知道的媒體播放器暗藏了簡訊的功能,以至於安裝後收到昂貴的電信費帳單。越獄的iPhone手機等同建立了惡意軟件攻擊的安全漏洞。

一組賓夕法尼亞大學的研究人員作了一個有趣的實驗,測試智慧型手機的密碼鎖可以透過手機觸控鏡面螢幕上的汙漬來辨認。實驗結果顯示,92%的汙漬可被部分辨識,而高達 68%的汙漬可被完全辨認。因此,您可能希望養成在使用手機後勤擦拭螢幕的習慣。

有一點可以肯定,就像當您購買一台新電腦或重新安裝作業系統後,您將安裝防病毒和防火牆程序,以保護您的電腦。同樣的,您應該透過手機應用程式商店,下載使用這些免費或付費的程式及服務,來保護您的智慧型手機。


[1] Mills, E. (January 5, 2010). Using your smartphone safely (FAQ). Retrieved on August 30, 2010, from http://news.cnet.com/8301-27080_3-10424759-245.html
[2] Constantin, L (August 10, 2010). Premium SMS Trojan Targets Android Users. Retrieved on August 30, 2010, from http://news.softpedia.com/news/Premium-SMS-Trojan-Targets-Android-Users-151563.shtml
[3] Bradley, T (August 11, 2010). Smartphone Security Thwarted by Fingerprint Smudges. Retrieved on August 30, 2010, from http://www.networkworld.com/news/2010/081110-smartphone-security-thwarted-by-fingerprint.html

Web Application Frameworks

June Huang 的照片

 由於網路以及網路服務的使用率越來越大,網站在 Web 2.0 時代不再只支持靜態內容。網站的內容已成為動態讓使用者可以操作實時的工作,例如檢查和發送郵件。我們的網絡工程因為不斷添加新功能讓它的規模變的龐大和複雜。

Web Application Frameworks 提供軟體結構的模型,幫助我們分類和管理網路應用程式不同的組件。他們還提供一些有用的 libraries,例如:訪問數據庫,呈現模板和 session 管理。

許多 Web Application Frameworks 使用 Model-View-Controller(MVC)的結構來定義網路應用程式邏輯上的組件。以下是 model,view 和 controller 的解釋:

Model
應用程式的 model 是用來處理系統的數據。換句話說,它包括數據和用來處理數據的函數。Controllers 和 views 會透過 model 獲取和更改數據。

View
View 是呈現給使用者看到的應用程式組件,換句話說,使用者界面。使用者要使用這個界面與應用程式互動。

Controller
Controller 是用來處理使用者的 request 並返回 response 給使用者。它會透過 model 獲得所需要的數據,把數據準備成一個合適的格式,插入到 view 裡和呈現 view 給使用者。

一個典型的 request 到服務器的情況如下:使用者透過界面發送一個 request 到服務器。主 controller 會處理這個 request 將它委託給適當的 controller 和把控制傳給這個 controller。被委託的 controller 會跟 model 互動來獲取或更改數據,呈現 view,並將控制還給主 controller。主 controller 會返回呈現的 view。使用者與界面互動並發送新的請求時,這循環就會重複。

References:
[1] Web application framework. (2011, May 28). In Wikipedia, The Free Encyclopedia. Retrieved 15:23, May 30, 2011, from http://en.wikipedia.org/w/index.php?title=Web_application_framework&oldid=431373642
[2] Model–view–controller. (2011, May 26). In Wikipedia, The Free Encyclopedia. Retrieved 17:12, May 30, 2011, from http://en.wikipedia.org/w/index.php?title=Model%E2%80%93view%E2%80%93controller&oldid=430946706

網路蜘蛛 - 搜索政策

June Huang 的照片

延續上次關於網路蜘蛛的文章,現在我將更詳細的解釋網路蜘蛛如何運用政策來探索網路。網路蜘蛛使用互相結合的政策,這些政策包括選擇政策,重新訪問政策,禮貌政策和並行政策。我將針對這些政策逐一介紹。

由於網路相當龐大,網路蜘蛛只能夠下載網路裡面部分的網站。網路蜘蛛必須使用選擇政策,以確定哪些資源值得下載。這個做法比下載隨機的網頁更有意義。選擇政策的一個例子是Google的PageRank政策,它將一個網頁的重要性以它往返連接的網頁的重要性來計算。其他選擇政策的例子是根據網頁的內容和資源的MIME類型。

網路蜘蛛的重新訪問政策則是判斷重新搜尋一個舊資源的價值,目標是儘量減少那些舊資源的存在。這一點很重要,因為資源在網路不斷被新增,更新或刪除,而且是在網路蜘蛛搜索網路完成的時間內變動。搜索引擎老是返回過期的資源是不理想的。重新訪問的價值是基於新鮮度和年齡,其中新鮮度的重點是本地的資源是否是最新的版本,而年齡是指這個資源在多久前被更新。

禮貌政策是為了讓網站不受到網路蜘蛛的搜索而嚴重影響運作。因為伺服器要處理使用者的需求及網路蜘蛛的下載,可能導至伺服器超載。用來減輕負荷的解決方案包括:間隔限制網路蜘蛛從伺服器下載資源和由網站管理員限制不能被網路蜘蛛探索的部分。

並行政策是用來協調多個網路蜘蛛在相同的網路空間內同時搜索資源。這個政策的目標是提高網路資源的下載速度以及避免多個網路蜘蛛在同一個時間下載相同的資源。

[1] Web crawler. (2011, February 22). In Wikipedia, The Free Encyclopedia. Retrieved 16:24, March 4, 2011, from http://en.wikipedia.org/w/index.php?title=Web_crawler&oldid=415343979

網路蜘蛛

June Huang 的照片

對於很多人來說,上網查資料已經成為日常工作。因為搜索引擎的發明,搜索資料不再是很費力的事情。搜索引擎很方便,因為它可以在很短的時間內從無數個來源產生結果。從網頁到圖像和視頻,我們能夠搜索到幾乎所有能在網路上找到的資源。為了能返回結果,搜索引擎首先利用一個稱為網路蜘蛛的電腦程式去探討在網絡上的資源。網路蜘蛛依照網頁的內容然後存儲有關頁面的資料,這樣當我們搜索東西時,搜索引擎可以找到相關的資源並返回給我們。在這篇文章中我將介紹網路蜘蛛是如何找到我們感興趣的資料。

首先,網路蜘蛛會有一個它要爬的網址列表。網路蜘蛛會參觀一個網頁,並找出關鍵詞和連結然後確定哪些信息是件值得添加或更新的。為了以後的搜索,網路蜘蛛會將一部分的網站下載和索引一些跟網站相關的數據,如網址。新發現的連結,會被加到網址的列表讓網路蜘蛛繼續搜索。

因為有無限多的網頁及更多的網頁在網路上可以不斷的被增加、修改或刪除,網路蜘蛛需要去選擇哪些頁面值得參觀以獲取信息。因為參觀每一個網頁和為了檢查更新而參觀多次網頁是很不實際的,所以網路蜘蛛會用不同的政策來判斷網頁是否值得參觀。舉一個 Google PageRank 政策的例子,一個網頁的PageRank 是以這網頁被其他網頁連結到的次數與那些網頁的 PageRank 來判斷這個網頁的重要性。連到他的網頁多代表重要性高,所以算出來的 PageRank 也會高,代表值得參觀。分佈式網絡爬行也可以用來優化網路探索與下載。


參考文:
[1] Web crawler. (2010, December 22). In Wikipedia, The Free Encyclopedia. Retrieved 11:21, December 29, 2010, from http://en.wikipedia.org/w/index.php?title=Web_crawler&oldid=403711331
[2] PageRank. (2011, January 2). In Wikipedia, The Free Encyclopedia. Retrieved 11:15, January 6, 2011, from http://en.wikipedia.org/w/index.php?title=PageRank&oldid=405547279

您的個人雲端搜尋引擎

June Huang 的照片

拜網路搜尋引擎之賜,要獲得網路上無數的資訊已非不可能。如今,雲端技術更改變了人與網路間的互動,例如社交網路及資料儲存。而隨之而來相關的問題便是如何監控個人雲端上資訊的成長、事件的發生、和儲存的位置。想想在一天之中您在網路上所產生的所有資訊:電子郵件、行事曆上的事件、通訊軟體上的對話等,要記住所有發生的事件幾乎是不可能的。那麼要如何才能在日常產生的雲端資料中有效率的找到找到我們所需要的資訊呢?答案就是:您的個人雲端搜尋引擎。

Greplin 和 Introspectr 正是兩個屬於這類的服務,讓用戶可以過濾篩選他們的個人資料。這樣的服務可以將您的社交網路服務如 Facebook、Twitter;電子郵件服務如 Gmail (包括附件和網路鍊接);甚至文件分享服務如 Dropbox、Google Docs 都編入其搜尋器的索引。使用其服務,只需要輸入您的查詢,其便會傳回所有相關的資訊,無論這些資訊是儲存在那個網路服務之下。

Greplin 和 Introspectr 最主要的區別在於,Greplin 大約每隔 20 分鐘便自動更新其索引;而 Introspectr 則必須靠使用者手動更新索引。而另一個已知的差別是 Greplin 無法將 Twitter 訊息內的網址鍊接列入其索引[2],但 Introspectr 可以。Greplin 和 Introspectr 都允許使用者將多種不同的網路服務納入其索引。但是,對於想要列入索引的服務,使用者必須提供他們登入的資訊。很明顯的,安全性和隱私權成為令人關注的問題。而 Greplin 宣稱他們透過 OAuth 協定,只存取所需要搜尋的資料,並沒有使用者登入訊息的存取權[3]。

Greplin 和 Introspectr 為用戶在過濾使用他們個人的雲端資訊內容上提供了一個方便且集中的方案。只要有網路,使用者可以在各種電腦裝置平台上搜尋他們個人的資訊串,就如同收發電子郵件或是搜尋電腦硬碟內的內容一樣輕鬆簡單。

[1] Arrington, M (Aug 31, 2010). The Other Half Of Search: Greplin Is A Personal Search Engine For Your Online Life. Retrieved on October 26, 2010, from http://techcrunch.com/2010/08/31/greplin-ycombinator-personal-search/
[2] Schonfeld, E. (Oct 12, 2010). Introspectr Searches Your Social Streams. Retrieved on October 26, 2010, from http://techcrunch.com/2010/10/12/introspectr-search-social/
[3] Greplin: https://www.greplin.com/
[4] Introspectr: https://www.introspectr.com/

雲端上的遊戲 - OnLive

June Huang 的照片

隨著 OnLive 遊戲點播服務的出現,玩電腦遊戲變得更便宜且容易。要玩到最新的遊戲,不再需要擁有一台配備了昂貴顯示卡及高速處理器的高階電腦。只要有一台能執行 Windows XP, Windows Vista 的普通 PC, 或是 Intel核心的 Mac OS X,再加上高速網路就很足夠。使用者甚至可以透過 OnLive 提供的 MicroConsole,直接在家中的電視上使用 OnLive 的服務。OnLive 提供購買、租賃遊戲,遊戲試玩,以及與 OnLive 上的其他玩家一同進行多人連線遊戲的服務。並還有線上觀看他人遊戲,錄影,分享影片,和查詢玩家基本資料等的社交功能。

基本上,玩家們只需要懂得如何使用瀏覽器便可以使用 OnLive。遊戲資料以及操作都是在遠端的伺服器上運算,再以瀏覽器作為介面呈現。一旦運算完數據,遊戲畫面便會透過視訊壓縮串流的方式送回瀏覽器,讓玩家們繼續進行遊戲。對於玩家們而言,即時遊玩的感覺並不會和在家中主機上玩遊戲有太大的差別。OnLive 省去了安裝、更新遊戲的擾人過程,並且節省了儲存遊戲資料的空間,不失為一個想方便玩遊戲的選擇。

OnLive 以結合多個獨立或是分享的伺服器來達到遠端即時遊玩的目的。所有遊戲資料都在這些伺服器上存取及運算,而這些伺服器每六個月便會進行一次升級以提供玩家們最佳的遊戲體驗。每個伺服器都有其專職的工作,例如處理使用者介面,執行遊戲,或是處理視訊串流等。而根據不同的運算需求,其也使用了不同等級的伺服器來提供服務。因此在玩遊戲的過程中,視遊戲階段的不同,玩家們所使用的伺服器也會相對的改變。

因為所有資料都是透過網路傳輸,OnLive 的服務是相當依賴及受限於玩家的連線頻寬的。OnLive 表示透過 5Mbps 的網路,是可以達到 1280X720高解析度每秒 60 幀的高品質影像的。然而,當網路速度下降時,玩家所得到的也就是相對較低的解析度及畫面更新率。當網路速度為 1.5Mbps 時,畫面是可以達到一般解析度的;但卻因為受限於視訊串流速度,而無法像在家中主機一般順暢的遊玩一些需及時反應的動作類遊戲。並且,由於畫面是壓縮過後的視訊影像,原先遊戲中的美術細節將無法清晰的呈現。