Java SE 6 下個月將停止提供安全更新...

在「Oracle Will Stop Providing Security Updates for Java 6 Next Month」這邊看到的,Java SE 6 預定在 2013/02/19 對外發佈最後一次安全性更新,之後只有付費購買服務的單位才能透過 My Oracle Support 取得更新。

另外更新程式提供了 Java SE 6 升級到 Java SE 7 的功能,不過當然不保證你跑的程式在 Java SE 7 上會動,還是要花時間去測試才知道會不會爆炸 :p

照「Java version history」上的紀錄,Java SE 6 是 2006/12/11 發行的,所以也六年多了... 而 Java SE 7 是在 2011/07/28 發行的,是目前最新的版本。

Percona XtraDB Cluster (PXC) 總算出 5.5.29 版本了...

剛剛看到 Percona XtraDB Cluster 5.5.29-23.7.1 的公告了:「Announcing Percona XtraDB Cluster 5.5.29-23.7.1」。

除了修正 bug 外,有很多是讓設定變得簡單的調整 (變得比較不容易中地雷,或是錯誤訊息比較清楚,而非靠 Google 找到答案),像是:

Variable wsrep_node_name was initialized before the glob_hostname, which lead to empty value for wsrep_node_name if it wasn’t set explicitly. Bug fixed #1081389 (Alex Yurchenko).

Percona XtraDB Cluster would crash when binlog_format was set to STATEMENT. This was fixed by introducing the warning message. Bug fixed #1088400 (Seppo Jaakola).

Percona XtraDB Cluster would crash if the node’s own address would be specified in the wsrep_cluster_address variable. Bug fixed #1099413 (Alexey Yurchenko).

該來安排測試了...

諾貝爾獎的網站有 API 了...

在「Nobel Prize Gets Official API」看到諾貝爾獎的網站提供 API,讓人存取歷年諾貝爾獎得主的資訊了 XDDD

官方的新聞稿在「Open Data about the Nobel Prize now Available」這邊,API 資訊則在「Developer Zone」這邊。

舉例來說,http://api.nobelprize.org/v1/prize.json?year=1901 可以抓出 1901 年諾貝爾獎得主的資料 (JSON 格式)。

而除了 JSON API 外,另外還在 data.nobelprize.org 提供 Linked Data 格式的資源。

資料不多,但蠻有趣的...

「102 步」簡單安裝完 Windows 8... XDDD

標題是「102 simple steps for installing and configuring a new Windows 8 machine」的文章,本來以為是笑話,結果右邊寫著:

Software architect and Microsoft MVP, you'll usually find me writing about security concepts and process improvement in software delivery.

所以...?(認真的?)

看起來不只裝了 Windows 8 啊,還有一堆軟體...

用 Percona XtraBackup 備份時用 compact 模式節省空間...

在「Feature preview: Compact backups in Percona XtraBackup」看到的,2.1 版會導入 compact backup 節省備份出來的空間 (目前是 2.0):

As you may know InnoDB PK (Primary Key) contains all data, and all secondary indexes are only subset of columns of Primary Key. So in theory we can store only PK, and re-build secondary indexes as we need. Well, now it is possible not only in theory.

secondary index 可以事後再建,所以有兩種表格會省下很多資源:

  • Index 很多的表格。
  • PK 欄位空間很大的表格 (像是用 VARCHAR(255) 當 PK)。

等出了再來研究看看對 Percona XtraDB Cluster (PXC) 重新同步可以加快多少...

加快 SSL 加解密速度...

看到 Ash Wu 貼的「5 easy tips to accelerate SSL」:

先列出原作者在文章裡給的結論:

ALL:!ADH:!EXP:!LOW:!RC2:!3DES:!SEED:RC4+RSA:+HIGH:+MEDIUM

不過,現在考慮 SSL 效能以行動平台為主 (因為桌機用軟體計算也超快),而行動平台中 iOS 可以對 AES 與 SHA1 硬體加速 (iOS 4.3+),Android 一般的情況下看起來沒得用,所以就自己取捨啦...

對稱式加密系統的爆炸歷史 (Authenticated encryption 的問題)

在「Disasters」這邊列了不少對稱式加密系統 (secret-key cryptography) 爆炸的歷史,其中提到了很多 Encrypt 與 MAC 結合時的問題 (Authenticated encryption)。另外 Colin Percival 在 2009 年的時候有寫了一篇為什麼要用 Encrypt-then-MAC 的文章:「Encrypt-then-MAC」,當時 Colin Percival 寫的時候大家還是不能理解,但現在回頭看上面的爆炸歷史應該就清楚很多了 XDDD

SSH 協定是使用 Encrypt-and-MAC (傳輸「密文」與「明文的 MAC 值」)。在 2008 年時 SSH 使用 CBC 模式時會有安全問題:對 128bits CBC mode system (像是 aes128-cbc),任意位置的 32bits 有 2-18 的機會可以解出原文。(CVE-2008-5161,論文是「Plaintext Recovery Attacks Against SSH」)

TLS 1.0 (SSLv3) 使用 MAC-then-Encrypt (傳輸「明文與明文的 MAC 值」加密後的結果)。1999 年就知道這個方法不可靠,不過到了 2011 年時才被拿出來示範,也就是 BEAST attack。(CVE-2011-3389,在 ekoparty Security Conference 上的「表演」:「BEAST: Surprising crypto attack against HTTPS」,連結1連結2)

OpenSSLGnuTLS 所實作的 DTLS 在 2011 年也被炸到,其中 OpenSSL 是 100% plaintext recovery,GnuTLS 是 4%。(CVE-2012-0390,論文是「Plaintext-Recovery Attacks Against Datagram TLS」)

而 Encrypt-then-MAC (傳輸「密文」與「密文的 MAC」) 是三者裡面最不容易出包的作法,而且被證明 Provable security:Encrypt 與 MAC 所用的 crypto system 的安全強度不會因為 Encrypt-then-MAC 而減少。而這也是 IPSec 的作法。

附帶一提,其中 Provable security 這個詞,並非表示「可被證明是安全的」,在「In defense of Provable Security」這篇文章裡有比較完整的說明。通常是指安全強度不會因為這個系統而降低:以 Encrypt-then-MAC 的例子來說,如果 Encrypt 的部份用 DES,或是 MAC 用 CRC32,那麼 Encrypt-then-MAC 並不會提供更強的安全性...

總而言之,MAC-then-Encrypt 與 Encrypt-and-MAC 的方式要小心才能避免各種攻擊 (像是不能用 CBC mode),而 Encrypt-then-MAC 可以讓設計協定的人放鬆到「只要 Encrypt 與 MAC 都夠強」系統就沒問題。在 Authenticated encryption 裡提到的 ISO/IEC 19772:2009 支援六個模式,有些有專利問題,有些演算法看起來就很複雜 (於是就容易出包),其中 Encrypt-then-MAC 看起來是個還不錯的方案...

日本行:1/19~1/27 (人還在日本... XD)

最後一天還在日本,先來整理一下這九天幹了哪些事情... XD

已經排進行程的是 1/19 與 1/20 去水樹奈奈的 NANA MIZUKI LIVE GRACE 2013 -OPUS Ⅱ- (報導可以參考『20130120 – 水樹奈々「LIVE GRACE 2013 -OPUS 2-」完美落幕!新一年夏巡「七夕」於故鄉愛媛武道館展開!』這篇),1/23 去 Kalafina 5th Anniversary LIVE SELECTION 2009-2012 (報導可以參考『20130124– 一夜限定演唱會及Live Tour舉行決定!Kalafina第四張專輯「Consolation」將於三月二十日發售』這篇)。

到日本後又看到コミネリサ 1/24 要在真昼の月 夜の太陽表演 (參考「真昼の月夜の太陽」這篇),就再插了一檔進去...

中間還遇到同事出差,另外遇到色兔子跑來東京玩,然後吃一些奇怪的東西... XD

說到吃的,來日本不知道有哪些可以吃的,倒是宵夜一直去吃一蘭,次數多到讓同事抱怨了... XD

差不多就先寫到這邊,回台灣看看有哪些細節覺得可以寫的再寫吧 :o

Cisco 將 Linksys 賣給 Belkin...

Slashdot 上看到 Cisco 將 Home Networking Business Unit 部門賣給 Belkin,其中包括 Linksys 這個品牌:「Cisco Exits the Consumer Market, Sells Linksys To Belkin」。

Belkin 的新聞稿在「BELKIN ANNOUNCES INTENT TO ACQUIRE CISCO’S HOME NETWORKING BUSINESS UNIT」,Cisco 的新聞稿在「Belkin Announces Intent to Acquire Linksys」。

Linksys 最有名的產品應該是大家都愛買的 WRT54G 系列,被大家拿來刷韌體刷的很有名啊... XD

送出 ooxx HTTP Header 提升安全性...

現在的 browser 支援一堆 HTTP Header 規格,用來防堵各種安全性問題。在「SecureHeaders」看到一包 Ruby Gems,可以針對這堆規格一次搞定,包括了:

就算不是用 Ruby 的人也可以拿文件說明的部份當入口,評估看看系統有哪些地方可以加強。