資訊學院的30堂課-密碼學
發行量超過一千六百萬張、號稱「絕對不可能被破解」的台北悠遊卡,不敗神話破滅!
前一陣子悠遊卡被破解的新聞,大家應該都還有印象吧。crypto1是悠遊卡所使用的加
密演算法則,居然在維基百科就有連結,而且開宗明義說,幾乎是沒有保護狀態。原來
讀取我們的悠遊卡,跟讀取我們數位相機拍出來的照片,保護等級一個是沒有保護狀
態,一個是幾乎是完全沒有保護狀態("the security of this cipher is ... close
to zero")。到底crypto1演算法哪裡錯了?或者我們教的密碼學哪裡錯了?
其實google的PageRank並無法去篩選文章的正確性,常見google把錯誤的文章放在搜尋
的第一位,比如: 你用RSA去咕台灣網頁的第一頁,他是一篇錯誤很多的文章,繁體中
文第一個連結,http://www.mathland.idv.tw/life/rsa576.htm,雖然RSA的演算法難
度基於質因數分解,但跟網站說的完全不同,RSA其中一支public key開宗明義說了由
兩個質數相乘而成,所以不是質數!!!
The RSA algorithm works as follows: take two large primes, p and q, and
compute their product
n = pq; n is called the modulus
不過這個網頁高懸在google search繁體中文第一位超過一年。RSA相關的連結很多,而
且這是屬於數論與演算法的範疇,我就曾經在演算法這門課Implement過RSA的
Project,只是,寫過的人都知道,實作一個基本的RSA加解密並不難,難的是如何使用
長整數,程式語言32位元長的整數或者64位元的整數都不足以提供足夠的保護,我當時
還很笨的去Implement超長整數的四則運算,很顯然的我的程式有bug,而且沒有適當處
理逸位問題,經過時空的演進,現在要在常見的軟體平台找到超超超長整數的函式庫,
已經不是難事,而且效能還不錯。而crypto1演算法的致命錯誤就在於???金鑰太短。
MIFARE Classic是近年來最廣泛被使用的非接觸式智慧卡,應用在門禁、大眾運輸工
具、電子錢包等系統上。MIFARE Classic上密碼保護機制與結構已被發表在許多的論文
上。在本論文中我們提出各式各樣在MIFARE Classic攻擊實作的經驗。我們實作兩類的
攻擊:一是假造讀卡機、二是側錄合法的交易。第一類的攻擊在兩天內利用NVIDIA高速
運算顯示卡上實作密鑰的窮舉搜尋法與隨機數和連認證的漏洞離線的破解卡片上所有的
金鑰。第二類是針對MIFARE Classic加解密器: CRYPTO-1上攻擊方法的改進。經過我們
的改進,攻擊者不僅可以破解自己的卡同時也能破解別人的卡。我們所實作的攻擊徹底
讓MIFARE Classic的密碼保護失去效用,讓未經授權的攻擊者能任意更改卡片上資料,
如同沒有任何保護的記憶卡。更進一步,我們提出有關防止目前已知的攻擊的建議,而
此防禦機制加強對卡片資料的防護並加強後端清算機制的效率。
http://ndltd.ncl.edu.tw/cgi-bin/gs32/gsweb.cgi/login?o=dnclcdr&s=id=%22098NT
U05442107%22.&searchmode=basic
http://www.rsa.com/rsalabs/faq/files/rsalabs_faq41.pdf
2011/10/24
2011/10/23
Internet Technology
所以先來考古一下,今天我們可以找到的關於WWW概念的第一份公開檔,是Tim Berners-Lee於1989年3月寫給CERN的建議書:Information Management:A Proposal。
1993年,Tim Berners-Lee制定了URL、HTTP、HTML等的第一個規範。
應該或許有人跟在下一樣,1994年時,多媒體電腦開始盛行,於是乎純文字型態的網路資料呈現,已經不能滿足大部分的人的需求,而且學習門檻算是滿高的,當時剛接觸Internet的我,還搞不清楚學校開給我們的TELNET帳號、FTP帳號,BBS帳號到底有甚麼不同?當時在Windows 3.1上跑netscape,是最炫的應用。
很快地,在1995年,簡單地使用筆記本寫了第一個web page,當時大家稱作Home Page。當時沒有Home Page就跟現在沒有Blog一樣遜。
1996年,使用C與shell script用CGI撰寫第一個動態網頁程式,對此了解到HTTP大致上通訊協定的方式。接下來切進重點了。
1997年,某日專題指導教授告訴我們一個動態網頁開發的嶄新方式,在所有當時著名的電腦雜誌上,還沒有看過別人發表過文章,這就是Active Server Page,於是乎利用ASP可以很快速的連結SQL Server 6.5,也不用像CGI一樣要自己處理Browser送過來的字串,可以說是網站開發的一大突破。
1999年,教授要我們自己使用socket api開發一個http daemon,剛開始的時候,完全不能想像,想說開發web server應該是很複雜的工作,後來發現一個簡單的web server,程式碼其實很短,在開發完這個httpd之後,對於web server內部運作的機制更加了解,對於影響網站效能不彰的原因。
恕我把時間快轉十年,2010年,ASP.NET已經發展到第四版,ASP.NET把傳統ASP開發上的缺點給改革了,在大型網站中,或是在某些電子表單的ASP,可以看到數千行的規模,ASP語法、SQL語法,以及HTML和JavaScript,像義大利麵一樣,南瓜醬、通心麵以及洋蔥青椒,都攪和在一起了。此時網站的開發與維護,就耗費了相當大的人力。
在比如說,過去在ASP的時代,如果沒有把database的連線字串處理好的話,使用server side include或其他方案定義連線字串,如果更換database server ip時,將會是程式設計師的一個惡夢,但是在ASP.NET裡,使用WebConfigurationManager類別是多麼地直覺。
更何況,C#或VB.Net比起C++來說,更容易學習,也不用讓程式設計師自行回收記憶體,C語言或C++很多非常難除錯的Bug,往往出現於記憶體管理上,但進入.Net Framework,這些問題都不是問題了。
1993年,Tim Berners-Lee制定了URL、HTTP、HTML等的第一個規範。
應該或許有人跟在下一樣,1994年時,多媒體電腦開始盛行,於是乎純文字型態的網路資料呈現,已經不能滿足大部分的人的需求,而且學習門檻算是滿高的,當時剛接觸Internet的我,還搞不清楚學校開給我們的TELNET帳號、FTP帳號,BBS帳號到底有甚麼不同?當時在Windows 3.1上跑netscape,是最炫的應用。
很快地,在1995年,簡單地使用筆記本寫了第一個web page,當時大家稱作Home Page。當時沒有Home Page就跟現在沒有Blog一樣遜。
1996年,使用C與shell script用CGI撰寫第一個動態網頁程式,對此了解到HTTP大致上通訊協定的方式。接下來切進重點了。
1997年,某日專題指導教授告訴我們一個動態網頁開發的嶄新方式,在所有當時著名的電腦雜誌上,還沒有看過別人發表過文章,這就是Active Server Page,於是乎利用ASP可以很快速的連結SQL Server 6.5,也不用像CGI一樣要自己處理Browser送過來的字串,可以說是網站開發的一大突破。
1999年,教授要我們自己使用socket api開發一個http daemon,剛開始的時候,完全不能想像,想說開發web server應該是很複雜的工作,後來發現一個簡單的web server,程式碼其實很短,在開發完這個httpd之後,對於web server內部運作的機制更加了解,對於影響網站效能不彰的原因。
恕我把時間快轉十年,2010年,ASP.NET已經發展到第四版,ASP.NET把傳統ASP開發上的缺點給改革了,在大型網站中,或是在某些電子表單的ASP,可以看到數千行的規模,ASP語法、SQL語法,以及HTML和JavaScript,像義大利麵一樣,南瓜醬、通心麵以及洋蔥青椒,都攪和在一起了。此時網站的開發與維護,就耗費了相當大的人力。
在比如說,過去在ASP的時代,如果沒有把database的連線字串處理好的話,使用server side include或其他方案定義連線字串,如果更換database server ip時,將會是程式設計師的一個惡夢,但是在ASP.NET裡,使用WebConfigurationManager類別是多麼地直覺。
更何況,C#或VB.Net比起C++來說,更容易學習,也不用讓程式設計師自行回收記憶體,C語言或C++很多非常難除錯的Bug,往往出現於記憶體管理上,但進入.Net Framework,這些問題都不是問題了。
2011/10/22
人工智慧
人人應該都玩過魔術方塊,看似簡單方形玩具卻讓許多玩家傷透腦筋,市面上更發行不少秘笈,教玩家如何快速破解。而網路上近來則傳出一則相關讓影片讓人大開眼界,由ARM所研發的魔術方塊機器人與 手機Samsung Galaxy S II聯手,共同創下5.35秒破解魔術方塊的記錄,打破了人類世界紀錄。
影片中,玩家將魔術方塊快速打亂,擺上連結著Samsung Galaxy S II智慧型手機的魔術方塊機器人CubeStormer II,在短短5秒多的時間內,機器人便以迅雷不及掩耳的速度,將魔術方塊組合完成。
這台CubeStormer II機器人是由ARM公司Mike Dobson和David Gilday所研發,不但破解魔術方塊速度為去年推出的CubeStormer I的2倍,還打破了人類破解魔術方塊的5.66秒記錄,看了讓網友直呼:「人類真的需要加油了!」
http://tw.news.yahoo.com/%E8%B6%85%E5%BC%B7%E9%AD%94%E8%A1%93%E6%96%B9%E5%A1%8A%E6%A9%9F%E5%99%A8%E4%BA%BA-5-35%E7%A7%92%E7%A0%B4%E4%BA%BA%E9%A1%9E%E8%A8%98%E9%8C%84-071237078.html
影片中,玩家將魔術方塊快速打亂,擺上連結著Samsung Galaxy S II智慧型手機的魔術方塊機器人CubeStormer II,在短短5秒多的時間內,機器人便以迅雷不及掩耳的速度,將魔術方塊組合完成。
這台CubeStormer II機器人是由ARM公司Mike Dobson和David Gilday所研發,不但破解魔術方塊速度為去年推出的CubeStormer I的2倍,還打破了人類破解魔術方塊的5.66秒記錄,看了讓網友直呼:「人類真的需要加油了!」
http://tw.news.yahoo.com/%E8%B6%85%E5%BC%B7%E9%AD%94%E8%A1%93%E6%96%B9%E5%A1%8A%E6%A9%9F%E5%99%A8%E4%BA%BA-5-35%E7%A7%92%E7%A0%B4%E4%BA%BA%E9%A1%9E%E8%A8%98%E9%8C%84-071237078.html
2011/10/20
ARM Cortex-A7 Processor
Cortex A7處理器的能源效率為Cortex A8的5倍,但尺寸只有Cortex A8的1/5,ARM指
出,該款處理器將適用於100美元以下的入門級智慧型手機,目標指向開發中市場。
ARM周三(10/19)發表Cortex A7智慧型手機處理器,這款宣稱是該公司有史以來所打
造的最具能源效率的處理器將鎖定100美元以下的智慧型手機,主打開發中市場,相關
手機產品預計會在2013∼2014年間上市。
Cortex A7處理器的能源效率為Cortex A8的5倍,但尺寸只有Cortex A8的1/5,ARM指
出,該款處理器將適用於100美元以下的入門級智慧型手機,目標指向開發中市場,屆
時這些手機的處理效能將等同於目前市面上500美元的高階智慧型手機。
Cortex A7採用ARM提出的Big.LITTLE處理架構,該架構在一個系統單晶片(SoC)中結
合了兩個不同但相容的處理器,以允許電力管理軟體能順暢地選擇不同的處理器來執行
正確的任務。
其中的Little指的是低功耗的處理器,如Cortex A7可執行基本的作業系統,以及諸如
社交網站及音樂播放等隨時連線的應用程式,但作業系統與應用程式也能因應導航或遊
戲等需求順暢地移轉至更高效能的處理器,而其轉換間隔只有五萬分之一秒。
此一彈性的設計讓應用程式可根據所需資源選擇處理器,並可於一般任務下達到省電目
的。根據ARM的描述,Big.LITTLE結合了Cortex A15處理器的效能以及Cortex A7處理器
的省電能力,而且讓兩個平台上的應用程式可無縫轉換,為不同的任務選擇最適用的處
理器最多可延長70%的電池壽命。
ARM表示,今日所面臨的最大技術挑戰在於如何於打造一個符合消費者複雜需求同時具
有高效能與更長電池續航力的SoC,Big.LITTLE與Cortex A7改寫了傳統上電力與效能的
關係。
Cortex-A7 Processor
(View Larger Cortex-A7 Processor Image)The ARM Cortex(tm)-A7 MPCore(tm)
processor is the most efficient application processor ARM has ever developed
and dramatically extends ARM's low-power leadership in future entry level
smart phones, tablets and other advanced mobile devices.
The architecure and feature set of the Cortex-A7 processor are identical to
the Cortex-A15 processor, with differences in the Cortex-A7 processor's
microarchitecture focused on providing optimum energy efficiency, enabling
the two processors to operate in tandem in a big.LITTLE configuration to
provide the ultimate combination of high-performance with ultra low power
consumption.
As a standalone processor, the Cortex-A7 will enable entry level smartphones
at below $100 price point in the 2013-2014 timeframe that are equivalent to
a $500 high-end smarphone in 2010. These entry level smartphones will
redefine connectivity and internet usage in the developing world.
http://www.arm.com/products/processors/cortex-a/cortex-a7.php
出,該款處理器將適用於100美元以下的入門級智慧型手機,目標指向開發中市場。
ARM周三(10/19)發表Cortex A7智慧型手機處理器,這款宣稱是該公司有史以來所打
造的最具能源效率的處理器將鎖定100美元以下的智慧型手機,主打開發中市場,相關
手機產品預計會在2013∼2014年間上市。
Cortex A7處理器的能源效率為Cortex A8的5倍,但尺寸只有Cortex A8的1/5,ARM指
出,該款處理器將適用於100美元以下的入門級智慧型手機,目標指向開發中市場,屆
時這些手機的處理效能將等同於目前市面上500美元的高階智慧型手機。
Cortex A7採用ARM提出的Big.LITTLE處理架構,該架構在一個系統單晶片(SoC)中結
合了兩個不同但相容的處理器,以允許電力管理軟體能順暢地選擇不同的處理器來執行
正確的任務。
其中的Little指的是低功耗的處理器,如Cortex A7可執行基本的作業系統,以及諸如
社交網站及音樂播放等隨時連線的應用程式,但作業系統與應用程式也能因應導航或遊
戲等需求順暢地移轉至更高效能的處理器,而其轉換間隔只有五萬分之一秒。
此一彈性的設計讓應用程式可根據所需資源選擇處理器,並可於一般任務下達到省電目
的。根據ARM的描述,Big.LITTLE結合了Cortex A15處理器的效能以及Cortex A7處理器
的省電能力,而且讓兩個平台上的應用程式可無縫轉換,為不同的任務選擇最適用的處
理器最多可延長70%的電池壽命。
ARM表示,今日所面臨的最大技術挑戰在於如何於打造一個符合消費者複雜需求同時具
有高效能與更長電池續航力的SoC,Big.LITTLE與Cortex A7改寫了傳統上電力與效能的
關係。
Cortex-A7 Processor
(View Larger Cortex-A7 Processor Image)The ARM Cortex(tm)-A7 MPCore(tm)
processor is the most efficient application processor ARM has ever developed
and dramatically extends ARM's low-power leadership in future entry level
smart phones, tablets and other advanced mobile devices.
The architecure and feature set of the Cortex-A7 processor are identical to
the Cortex-A15 processor, with differences in the Cortex-A7 processor's
microarchitecture focused on providing optimum energy efficiency, enabling
the two processors to operate in tandem in a big.LITTLE configuration to
provide the ultimate combination of high-performance with ultra low power
consumption.
As a standalone processor, the Cortex-A7 will enable entry level smartphones
at below $100 price point in the 2013-2014 timeframe that are equivalent to
a $500 high-end smarphone in 2010. These entry level smartphones will
redefine connectivity and internet usage in the developing world.
http://www.arm.com/products/processors/cortex-a/cortex-a7.php
訂閱:
文章 (Atom)