2013年10月15日 星期二

影像匿蹤祕技(Steganography)之一

影像匿蹤祕技(Steganography)之一


兩個禮拜前的週末,艾瑞克去友情贊助了一場資訊安全的課程,內容講的是密碼學。原本想就CISSP一般課程的內容隨口蓋蓋就算了,沒想到主辦單位特別叮嚀要多點實例和工具;八成是怕我把學員都哄得睡著了。這下子可得多下點功夫免得漏氣了。於是花了些時間,把各種密碼學比較有趣的東東重新翻出來,溫故之餘也知新不少,蠻有一些收穫。蒐集資料的當兒,我發現 Wikipedia (http://en.wikipedia.org) 真是太好用,這種自己會長大的網上百科全書,相信未來一定會成為人類學習知識的最佳途徑,實在比書本和老師有用的多。
有一種有趣的加密方法,是把密文或密圖隱藏在另一張可視的圖片裡頭,收到圖片的人必須用特殊方法才可以解開和還原隱藏的密圖,這種方法叫做 Steganogaphy。以前念書念到這裡,知其然但不知其所以然;這圖怎麼隱藏呢?又該怎麼解密?嘿嘿.. Wikipedia 裡頭就有範例,而且很有趣,可以從一張看似樹木的照片,解出一張貓的相片。(範例:http://en.wikipedia.org/wiki/Steganography)。
但是Wikipedia 網站只教怎麼解密,卻沒有教怎麼合併兩張獨立不同的圖檔,而且要保留完整的樣子。經過幾天的摸索,艾瑞克終於推敲出其中的訣竅,可以很快的合成這種加密圖檔。以下這張圖就是我做的密圖喔,他可是隱藏了一張完全不同的圖片呢。如果你有Photo Shop 或 Paint Shop Pro X ( http://www.corel.com 可以下載30天試用版) 等影像處理軟體(Photoimpact 沒有 Arithmetic 功能,所以不能用),你可以循下列的方法,解出背後隱藏的圖。動手試試看做不做得出來,答案下期分曉。

       AND               =    ???? ...答案下次分曉
                  密圖                                                       解密之 Key  (一張RGB=777的圖)
解密步驟:
(1) 另存上面瀑布那張密圖(最好存成png格式,不要用JPG), 在 Paint Shop Pro 把圖打開。
(2) 另外,新增一個新的圖形檔案,注意大小和解析度和瀑布圖一樣 (204 x 256 pixel,解析度72 pixel, RGB 24 bits)
(3) 在這個空白的新圖檔裡頭,塗滿顏色 R=7, G=7, B=7, 也就是 html 顏色 #070707。(或是直接使用上面右邊這張Key 圖)
(4) 用 Image > Arithmetic 功能,  選擇 「AND」 運算,合併兩張圖。合併後,你會獲得一張看似全黑的圖。
(5) 把這張合併後的圖,用Adjust > Color > Fade Correction,放大色階,就獲得最終答案。
嘿嘿... 成功解開密圖了嗎?
找到答案記得留言喔,看誰第一名!!

DES (Data Encryption Standard)

DES (Data Encryption Standard)

DES 屬於 block cipher,每個區塊的大小為 64 bits,所使用的金鑰長度為 56 bits(其實原本的金鑰長度為 64 bits,但是有 8 bits 會被捨棄不用),經過一連串複雜的 substitution 以及 transposition 的運算處理過程,產生出 64 bits 的 cipher text。
加密過程可以參考此網頁。
其實 DES 已經是個強度很強的加密演算法,以目前電腦的運算能力進行破解,也要花上很多年。

Triple DES

DES 雖然加密強度已經很強,不過當未來出現了運算能力更強的電腦,或是平行運算技術更加成熟後,難保不會在短時間內被破解,因此就有人提出 Triple DES 的演算法。
顧名思義,Triple DES 即是將 plain text 進行三次 DES 的運算處理,有兩種方式:
  1. 使用三把金鑰(K1, K2, K3)
    這個部分比較容易瞭解,很單純的在三次 DES 加密的過程中,分別使用不同的三把金鑰。
  2. 使用兩把金鑰(K1, K2)
    這個部分則是有些變化,大概說明其運作步驟:
    (1) 第一次 DES 加密使用金鑰 K1,假設產生的加密結果為 C1
    (2) 第二次則是以金鑰 K2 對 C1 進行解密,假設產生 C2
    (3) 最後一次則是再以金鑰 K1 對 C2 進行加密
透過此種多重加密的方式,確保 Triple DES 的安全性再更上一層! (當然也要多花點運算處理的時間.....)

IDEA (International Data Encryption Algorithm)

IDEA 亦屬於 block cipher,其加密強度比起 DES 更強,因為所使用的金鑰為 128 bits,而每一次處理的區塊資料長度一樣為 64 bits。
不過由於這是有專利的,因此相較於 DES,並沒有這麼普及。
運作原理大致上跟 DES 不會差異太多,只是一些細節的部分有所差異,詳細過程可以參考以下兩篇文章:
  1. International Data Encryption Algorithm
  2. IDEA 密碼系統

RC5

RC5 也是屬於 block cipher,此演算法是相當有彈性的,不僅可以自訂每個加密區塊的長度,也可以自訂加密的回合數與金鑰的長度,加上只使用了電腦的基本運算(加法、XOR ... etc),因此不僅彈性很大,速度也很快。
而由於 RC5 演算法相較於其他演算法,所需要的記憶體比較少,因此也可以用在可攜式的裝置上。
其他詳細的說明及演算法的運作方式可以參考以下文章:
  1. RC5
  2. RC5 密碼系統
  3. RC5 操作模式

Blowfish

Blowfish 演算法優點在於速度快、記憶體花費少、加解密的過程簡單(僅使用到基本運算)、可自訂金鑰長度。
而此演算法適合用在通訊連結上,因此像是 VPN 連線的加密,就有使用 Blowfish 演算法。

AES (Advanced Encryption Standard)

由於對於暴力破解法,DES 有可能被破解的風險,因此美國政府提出了一個強度更強的演算法,進而想要將加解密演算法標準化,準備當電腦運算能力發展到很強,DES 必須被淘汰時的候補演算法標準,這就是 AES 的由來。
相較於 DES,AES 演算法中所使用的區塊長度為 128 bits,金鑰長度也提高到 128 bits 以上,因此 cipher text 被破解的機會便更低了。
若要瞭解 AES 詳細的運作方式,可以參考以下文章:
  1. AES 基本架構
  2. AES 加密演算法 - 加密編碼
  3. AES 加密演算法 - 金鑰擴充
  4. AES 解密演算法

Asymmetric Encryption (非對稱式加密)

Asymmetric Encryption (非對稱式加密) 即是為了改良 Symmetric Encryption(對稱式加密)的缺點而產生的。

在對稱式加密中,通訊雙方往來的訊息是由同一把金鑰進行加密;假設 A 與 B 通訊,兩個人必須有一把相同的金鑰;而若是 A 也要與 C 通訊,則 A 與 C 則必須擁有另外一把不同的金鑰;否則若是都使用相同金鑰,C 就可以解密出 A 要給 B 的訊息,相對的,B 也可以解密出 A 要給 C 的訊息,如此一來資訊在傳送就不再安全!

除此之外,還要防範金鑰被竊取的問題,只要通訊雙方任何一個人把金鑰洩露出去,也就破壞了原本建立的安全機制了。

因此,Asymmetric Encryption(非對稱式加密) 使用了一對金鑰(key pair)的方式解決了這個問題


Key Pair

在 Asymmetric Encryption 的架構中,要通訊的雙方都各持有一對金鑰,分別是私鑰(private key)以及公鑰(public key)。

顧名思義,private key 是要妥善且由自己秘密保管的,而 public key 則是可以公開出去。

假設使用者 A 有一對金鑰,若是 B 要與 A 進行通訊,則 B 必須使用 A 所提供的 public key 進行加密,再將加密的內容傳送給 A,接著 A 可以用自己的 private key 進行解密。

同樣的,A 要是要傳訊息給 B,則是要使用 B 所提供的 public key 進行加密,而 B 則可以用自己的 private key 進行解密。

有趣的是,雖然訊息是由 public key 所加密的,但是卻無法利用 public key 將原本的訊息還原回來,這就是非對稱式加密的精華所在,也是目前非常受到歡迎的原因。

而這一來一往之間,所使用的演算法,即為 RSA 演算法。


RSA Algorithm

RSA 演算法要如何確保不容易被破解呢? 答案在於「要算出一個很大的數,是由那兩個質數相乘的結果(進行因數分解),是很困難的」,因此可以很明顯看出,RSA 的運作方式,都是以兩個很大的質數為基礎來進行的。

RSA 演算法的基礎,取決於兩個很大的質數(可能達數百位數),運作流程大概如下:
  1. 選擇兩個大質數 P & Q
  2. 計算 N = P * Q
  3. 選擇公鑰(public key) E,使它不為 (P-1) 或 (Q - 1) 的因數
  4. 選擇私鑰(private key) D,讓右邊算式成立:(D * E) % [(P - 1) * (Q - 1)] = 1
  5. 加密過程為:密文(CT) = 明文(PT^E) % N
  6. 解密過程為:明文(PT) = 密文(CT^D) % N

如此看來,其實 RSA 的加解密過程是很簡單的,因此重點就是在於金鑰的產生,目前已經被證明長度 1024 bits 不夠安全,因此建議使用長度為 2048 bits 的金鑰作為加解密之用,來提升重要資訊傳輸的安全性。

最後,雖然非對稱式加密解決了金鑰交換的問題,但是卻衍生出加解密效率不彰的問題,因為相較於 DES,RSA 的速度只有其百分之一不到。


Asymmetric + Symmetric

真的沒有更好的 solution 嗎? 當然是有的......只要巧妙的結合兩者的優點即可啦!!

其中的原理很簡單,假設 A 要傳訊息給 B,就會發生大概類似以下流程:
  1. A 透過對稱式演算法,產生出一把對稱式加密用的金鑰(注意:這把金鑰只用在這一次的傳輸)
  2. 接著 A 使用 B 所提供的 public key,將這把金鑰加密,並將加密後的內容傳給 B
  3. B 接收到後,使用自己的 private key 解密,取得這把一次性金鑰
  4. 接著之後雙方訊息的往來,都使用對稱式加密

如此一來,就不僅解決了金鑰交換的問題,也解決了非對稱式加解密效率不彰的問題。

當然,這樣的 solution 其實還不算最安全,因此才會有 Digital Signature(數位簽章) 的誕生......

2013年2月3日 星期日

拜過早年

從廿四節氣來說, 今天已經係立春, 係新一年既開始!本研究所提早同大家拜過早年:
祝各位讀者新的一年身體健康!萬事勝意!工作順利!好運常伴!出入平安! 蛇年行大運!

2013年1月29日 星期二

炒股心得


炒股心得:“炒股有三個境界,先見自己,再見天地,最後才見眾生….”

2011年3月7日 星期一

香港已成高頻交易的樂園

高頻交易泛指電腦用統計加技術指標程式,作出極短線的買賣。人手操作也有,但當然不會快得過電腦發出指令。
去年道指十數分鐘便下跌了一千點,報導稱有「肥手指」指2m的沽盤輸入成2b,實在當人是傻仔,怎樣也說不通,但就突顯出程式盤問題,因打穿了「支持」位,大量程式沽盤湧現,直至指標顯示短線超賣又急升數百點,股票錯誤交易尚可追究及取消交易,可憐衍生證券炒家沒仇報。不久,美國便立法規管俗稱炒房的坐盤交易。
近半年觀察所得,似乎香港已成高頻交易的樂園,先有索羅斯落戶香港,再有高盛炒房猛將來港坐陣,就連普爾森也來港開檔。
最近期指上落相當誇張,表面上升或跌的幅度約是三百點,但實際一上一落行了近七百點。再看小時圖的升、跌及橫行的位置,與gann fan及fibonacci吻合。這些都是程式交易部份常見的指標。
而近期一些指數成份股都一窩蜂地炒上炒落,看來根本是配合期指的短線炒作。六六作為一個散戶,只能說自求多福,持貨則量力而為好了。
幸好六六不是一個勤力的短線炒家,這些花招不會影響我的中長線投資(投機),就像「奪寶奇兵」中,一個亞拉伯人拿著大刀,耍起刀花,看似恐武有力,教授不為所動,從懷裡拔槍,一槍便打瓜刀手。我們要做股市的Indiana Jones,不要隨便跟隨大刀舞動啊!

2011年2月20日 星期日

Manulife Shuttle Bus

Lam Tin MTR Station
Monday to FridaySaturday
PeriodDuration (min)PeriodDuration (min)
8:00-10:0010 8:15-8:3015
10:00-17:0015 8:30-9:3010
17:00-19:0010 9:30-13:0015
19:00-23:0015 13:00-14:0010
APM Station
Monday to FridaySaturday
PeriodDuration (min)PeriodDuration (min)
8:15-9:3015 8:15-9:3015
9:30-12:0030 9:30-14:0030
12:00-14:0015
14:00-17:0030
17:00-19:3015
19:3021:0030
Manulife Shuttle Bus
From MFCFrom MP
TimeTimeTimeTime
10:0014:4510:0014:45
10:4515:3010:4515:30
11:3016:0011:3016:00
12:1517:0012:1517:00
14:0017:4514:0017:45

2011年2月11日 星期五

無法無天,瑞信隻手遮天

淡友出師表

牛二上升未半而中道崩潰,今好淡已分,老散疲弊,此誠危急存亡之秋也。然插水之日指日可待,走鬼之聲滔滔不絕矣,蓋追阿爺之指數 ,欲報應之於港女也。誠宜去追熊証,以發達為目標,恢弘志士之氣,不宜畏首畏尾,痛失時機,以塞發達之路也。

CALL PUT 牛 熊,俱為衍生,只為賺錢,不宜異同。若有賺錢機會及為必勝時,宜借爆財仔不問價,以最快最有效方法,不宜考慮,使發達達成也。

財演﹑打手,割蛋痔﹑大C﹑肥青等,皆為明燈,老奸巨滑,是以吹水膠噏多過食飯。愚以為股市之事,分析睇圖,皆不必理,亦不必信,必能達到化景,無敵必勝。

阿爺向淡,行動飄忽,但又多事,今日不同昔日,行為實在弱能,是以眾好友為敵。愚以為阿爺之市,已經玩完,必能再見到人踩人,直插谷底。

買熊証,沽大期,此發達所以達成也;買牛証,揸大期,此輸身家好方法也。財演分析,每與老散一至,未嘗試過大市方向岩﹑中也。大戶﹑財演﹑打手﹑老散,此皆影響股市之人,願各位睇清睇楚,則會明白,明當中奧妙也。

吾本傻散,活躍於香討,苟全股票於股市,不求甚解於衍生。聰少不以吾無知,引吾正路,三出帖於香討之中,令吾以改邪歸正,由是感激,遂追聰少為偶像。現已醒悟,現處於假牛之際,實處於真熊之間,快要到八千點矣。千萬不要散漫,故借財仔刻不容緩是也。自古以來,大戶做市,老散都不信,以信分析為先,故輸盡身家,深入谷底。今大局已定,肥牛已足,當令其打靶,先做假象,再行托沽,之後插水,再人踩人,萬劫不復。此吾所以惡大戶,而救大家之因由也。至於不信吾者,忠言逆耳,則放棄﹑丟﹑由他去也。

願各位信吾以發達達成之效;不效,則閣下自理,以上天台之頂。若果錯失時機,則責閣下﹑汝﹑爾之問題,反應其慢。閣下亦宜自謀,以分別膠吹,察納雅言,認清每個時機。如只信分析理論,實太無知,智商太低,不知所謂。

2010年12月14日 星期二

六成青年10年人生目標:買樓 學者憂欠冒險精神 對社會乏承擔 -->?

http://hk.news.yahoo.com/article/101214/4/lrkt.html

呢個調查的結論係想話現今青年人太實際, 缺乏抱負, 一味只顧錢, 對社會缺乏承諾, 甚少積極增進祖國及國際視野。
大家都係人, 如果生活都成問題, 何來追求抱負?文中表示青年人生在富裕的香港,居然抱負只是買樓及賺取人生第一桶金。要攪清楚,是社會表面富裕,商人袋袋平安,一般青年人與家人居於斗室內(包括公屋、居屋及私樓),人工又唔多,為未來打算遷出獨自生活也好,結婚生仔都好,人之常情。加上人工少,樓價與人工脫節,政府出招樓價影響甚微,置業遙不可及;如著名心理學家的Maslow Hierarchy of Needs理論所述,基本生活需要都未達到,可來追求「更高層次」如 “self-actualization”的抱負。
智經身為政府智囊,無理由唔知呢個背後原因,只是不想面對,盡量掩飾香港金玉其外,反指是青年人本身的問題,不正視「敗絮」。拖延處理,好自為知。
港府申亞,一般港人反對,有政客反指港人不愛運動;天呀,每天工時多麼長,回到家身體疲憊,有的還要爭取與家人子女相處時間,何來有時間做運動?是現實社會迫使我們不愛運動。
港府建西九文化中心,一般港人反對,有政客反指香港是文化沙漠,港人缺乏文化修養。天呀,每天工時多麼長,壓力多麼大,放工只想鬆一鬆笑一笑,看下笑片就算低級文化?你所謂的文化留比內地坐高鐵來港掃豪宅及LV的內地客吧。
現今有不少「負責任」的八十後,又要顧家,又想買樓,但不想借貸纍纍,累人一世。結了婚,但老家太少不能兩夫妻一起遷入,男女仍各自回到自己老家住,為的是省下租樓的錢貯錢買樓,加上工時長兩夫妻平日都難見面,只有在週末有空享受「家居樂趣」,自己沒空煮飯也不能常常出街食,在老家住順便有家常便飯吃。可憐兩口子的婚姻生活變成這樣子...不是他們不進取,是社會的扭曲造成的。
智經做調查,究竟他們了解調查對象的背景嗎?你說他們生在富裕的八十、九十年代,但是他們每一個家庭背境是怎麼樣,你們知道嗎?智經成員唔係前高官之類的人士,就係被邀到政府作特別崗位的人士,年薪逾百萬,你們做的研究真的沒有偏見嗎?
智經研究要說現今青年人的不是,不如你把所有蝸居的香港人都罵吧,因為他們都是以置業、改善生活為人生目標。

2010年12月7日 星期二

股市解密正式成立....

歡迎報料....打擊老千股, 假賬.....

iam@alexleung.net

-----------------------------------------------

阿桑奇引梅鐸﹕真相必勝保密



(明報)2010年12月8日 星期三 05:05
【明報專訊】《澳洲人報》今天刊登阿桑奇的投稿,阿桑奇稱自己因為揭露真相而遭陷害,以下為原文節錄:
「1958年,年輕的梅鐸  (Rupert Murdoch) 曾寫道:『在保密和真相之間的競賽,真相始終會勝利。』梅鐸的觀察相信是源於其父基思(Keith),揭露澳洲軍隊在英國    指揮官的無能領導下,在一次大戰加利波利半島戰役無辜犧牲,英國人無法阻止基思揭露真相。近百年後,『維基解密』再次大無畏地揭露應公諸於世的真相。
公眾不監察 政府便貪腐欺詐
我在昆士蘭小鎮長大,當地人都直話直說。他們不信任大政府,認為若公眾不審慎監察,政府就會貪污舞弊。1980年代末就昆士蘭警察貪腐展開調查前,政客一直阻止傳媒揭露真相。我沒忘掉這一切。『維基解密』就是為這些核心價值而設。這意念是在澳洲孕育出來,以網絡技術揭露真相。『維基解密』創造新的新聞學:科技新聞學。我們與傳媒合作公開消息,並證明一切屬實。
創科技新聞學 延越戰揭密精神
我不是反戰者。戰爭有時是無可避免,但沒什麼比政府向人民欺瞞戰爭真相更不道德。我曾被指摘叛國,儘管我是澳洲人而非美國    人。美國公眾人物多次呼籲美國特種部隊把我除去,美國前副總統候選人佩林更呼籲,要像捉拿拉登般追捕我。有美國博客更呼籲綁架及傷害我的20歲兒子。
回顧1971年,《紐約時報》 因公開涉及越戰調查報告的《五角大樓文件》而鬧上法庭,當時美國最高法院裁決指,『只有自由及不受限制的新聞業,才可有效揭露政府的欺詐』。圍繞『維基解密』的風暴,揭示傳媒更需捍衛揭露真相的權利。」