mobile shell,或簡稱為mosh,在github上發布,是移動裝置上ssh的替代品。闡釋mosh背後的原則的技術**將在下月召開的2012 usenix年度技術會議上發布。
下述兩個重要特性是mosh有別於其它類似產品的:
這兩個改變顯然與層次架構的連線流,如ssh,區別明顯;ssh提供了只在兩個端點之間的加密位元組流,然後要遠端伺服器程式重繪螢幕。因為ssh完全不知道連線各個端點如何使用資料,任何擊鍵都至少要在客戶端與伺服器間往返一次才能顯示。
mosh在伺服器建立乙個程序,執行於使用者空間,監聽udp包。然後將伺服器位址(和udp埠)告知mosh客戶端,並通過以資料報的形式傳送數 據來初始化連線。然而,因為連線本身在網路層是無狀態的,如果客戶端ip位址發生變化,則udp包可以來自乙個不同的ip位址(傳送給同一伺服器)而不會 失去連線。
採用udp,而非tcp,同樣意味著mosh客戶端/伺服器需要各自管理狀態。連線中的每乙個資料報都有乙個自增長的數字,同時客戶端和伺服器都建 立乙個已知資料報的列表,當需要的時候mosh庫會重新傳送資料報。(這基本上就是tcp原理的精髓。)也因為如此mosh客戶端可以在不同的ip位址或 (將來)在ipv4與ipv6之間切換。伺服器端的ip位址必須保持不變。
通過mosh連線傳送的資料報採用aes-128 ocb模式加密。該加密演算法提供了採用固定金鑰的加密端點,金鑰在伺服器啟動時生成,並在連線資訊中顯示:
雖是新方法,但aes-128 ocb已經出現了一段時間,並且該演算法作者指出他們正在邀請更進一步的審查:$ mosh-server mosh connect 60004 4necc**zfe2rnpgrcu1pqw …
你們的安全資料報協議已經通過專家審核了嗎?為了達到這個目標,mosh伺服器儲存了乙個客戶端的模擬螢幕(反之亦然),並基於在「正常」情況下按鍵是否會改變螢幕顯示來**。 如果**失效,mosh客戶端將會等待與伺服器間往返的時間以確認螢幕顯示狀態(本質上說是減少老的ssh機制),但如果mosh確信擊鍵會引發螢幕更 新,那麼mosh將會直接在本地顯示。在類shell環境中(大部分擊鍵都要回顯),這將會減少伺服器端引起的感知延遲,另外也可減少網路傳送的傳輸量, 因為擊鍵可以批量傳送,而非像大多數互動式連線那樣每次按鍵傳送乙個資料報。還沒有。mosh開始被越來越多的使用,並且**被有強烈安全意識的加密極客閱讀過,他們認為mosh的設計是合理的,但是任何新的資料報協議都要 自我證明其安全性,ssp也不例外。我們使用了aes-128和ocb的參考實現,同時我們也歡迎人們來審閱**。我們認為設計的簡單性是個顯著的優勢, 然而,當然別人也可能認為這是錯誤的。我們毫不懷疑需要花些時間(這是當然的!)才能讓安全社群對mosh的安全**到滿意。
乙個限制是輸入只支援utf-8,因為多次按鍵可以轉化為單一字元(反之亦然)。mosh不是要試**決所有的編碼和輸入法的問題,而只專注於utf-8並保證其工作正常。更多細節可參考技術資訊頁面。
mosh帶來了一種在移動裝置和伺服器間連線的新方法。每個客戶端連線使用乙個單獨的udp埠(udp必須在兩個端點間可達),然而通道是用私鑰 加密。因為連線可以轉換到其它ip位址上,自然會引發對於連線可能被侵入的擔憂,並且事實上「連線」在客戶端斷開後仍可保持對一些人來說也值得擔心。
然而,它的優勢,特別是提高了響應時間的感知,可能激發人們關注這個系統。同時因為兩邊的程序都是使用者程序,mosh可以很容易的安裝在已有的環境中,而無需提公升許可權進行安裝。
移動裝置上的NativeWindow 譯
原文 replacing nativewindow on mobile devices and tvs air nativewindow api 是air桌面應用的主要組成部分,用來在螢幕上開啟多個視窗,每乙個視窗都有它們自己的stage。在移動裝置和tvs上,這個類是不被支援的。那麼,乙個應用又是...
AIR 移動裝置上的儲存控制
file.documentsdirectory,file.userdirectory,在使用之前,確認是否有sd卡 if file.userdirectory true proceed with s ing data 一下變數所指的目錄 file.documentsdirectoryfile.use...
移動裝置的尺寸
1 point 是物理單位 或者稱作磅 1point 1 72 英吋 1英吋是2.54厘公尺 2 pixel的物理尺寸是不固定的 3 dpi dots per inch,dot在顯示器裡指顯示器的物理畫素 或者叫實際的畫素 每英吋的點數 一般指每英吋的畫素數 如果值是72 那麼在這個裝置裡 1 po...