相關業務/技術合作 行銷/經銷/代理;可洽 service@imoo.tw
星期三, 十一月 5, 2008

msnSDK 釋出支援YAHOO即時通的版本

msnSDK 經過適當的改寫後,已支援Yahoo 即時通

1.新增/刪除 聯絡人的處理
2.發送訊息
3.查詢暱稱
4.查詢個人資訊
5.傳送震動訊息
6.傳送離線訊息

Yahoo 再收送資訊的部份與既有MSN 使用不同的指令;但在msnSDK 裡,機器人會自動判斷發送的對象是使用哪種IM,所以使用同一個函式名稱不需變換

請參考其他相關文章
http://rd-program.blogspot.com/2008/10/msnsdk.html
http://rd-program.blogspot.com/2008/10/msnsdk-v102.html

XUE 發表於 4:37 PM | 靜態連結 | 標籤列表: , , , , , | 迴響留言 | 引用列表 | 觀看 (2387)

星期天, 十月 26, 2008

大學校園單一簽入機制之規劃與建置─以新竹教育大學為例


一年一度的教育界盛事「TANET2008台灣網際網路研討會」10月20日起一連三天在高雄義守大學燕巢校區舉行,微程式的好朋友【國立新竹教育大學】也在這次的活動中與大家分享導入微程式SSO單一簽入Solutions的實際使用經驗,希望讓更多人了解到SSO(Single Sign On)為校園帶來的效益。


本場次主題:校園數位化及校務行政


1.服務導向架構(SOA)之校園全方位收費平台
2.建構易於感知之校園數位資訊導航儀表板
3.大學校園單一簽入機制之規劃與建置─以新竹教育大學為例
4.電腦教室資安事件防範及管理效能之實務研究-以政大電算中心為例
5.中小學跨領域單一登入機制之研究
6.即時性選課系統嵌入圖形辨識機制


大學校園單一簽入機制之規劃與建置─以新竹教育大學為例


國立新竹教育大學計算機與網路中心─李維修代表發表


專案背景
‧學校雖小,系統俱全,管理人員卻不成比例
‧資訊化資訊服務進展快速,處理各系統間帳號、權限問題不勝其煩
‧Linux Base 與 Windows Base 主機群,使用者無法有效同步
‧各系統登入頁林立,成為資安問題隱憂


建置目標:
‧建置校園資訊服務之共同入口
‧達成不同平台間帳號與權限之同步整合,簡化使用者帳號管理,減少使用者遺忘密碼造成的困擾
‧減少應用系統登入頁暴露在外,造成資安事件


解決作法:
‧建立以LDAP為主之認證中心
‧委請廠商開發Octopus介面,有效管理LDAP (Octopus現已更名為IDU)
‧委請廠商開發ADO模組,做為應用程式與LDAP的介接介面
‧徹底檢討應用程式與LDAP間人員資料異動之最適流程,遵循「人員介入最少」、「異動可掌握」、「資料差異時間最小化」之三原則


具體成效:
‧不同的應用程式可完美嵌入
‧覆有彈性的管理機制
‧提升資訊系統使用率與使用效益
‧減輕計網中心人員知管理負擔
‧減少委外開發系統時程(權限管理部份)
‧建立全校共通的使用窗口,校園資訊的能見度隨之提高,學校的共同體意識也隨之更為凝聚


新竹教育大學Portal入口網站


應用實績:各系統間單一簽入,切換自如

應用實績:公告系統、RSS、行事曆、電子郵件、網路硬碟、及時天氣、電子報等多項附加功能

應用實績:可透過Web介面進行縝密的權限管理

應用實績:可透過系統進行系統分流及看到流量報表

未來展望:LDAP結合RFID校園智慧卡系統


msnSDK應用展示:
可透過MSN機器人得到即時郵件訊息通知
並可直接從MSN訊息中進入Webmail畫面(不需輸入帳號密碼)

與會的專家學者及對相關議題有興趣的朋友們擠滿了整間會議室


新竹教育大學計網中心洪主任(左)及莊組長(右)
兩位對於系統的推動真是功不可沒~ 辛苦了!!

難得一同參與這樣的研討會,當然要拍照留念一下囉 !! ^^
(左至右依序為竹大文豪、竹大莊組長、微程式Joseph、竹大劉老師)

TANET參展廠商現場 (由於動線規劃的因素..參觀的人不是很多~)

TANET參展廠商現場 (大廠的行銷預算果然不容小覷~XD)

活動現場人潮 (點心時間人潮終於多了一些~)


義守大學燕巢校區集錦

雖然每個場次的發表僅有短短的時間,
但在經過新竹教育大學的精闢解說及分享之後,
引起了不少在場朋友們熱情的討論與迴響。

不得不提一下...竹大維修講的真的很精采,
將Portal入口網站及相關系統導入及整合的過程、結果及效益講解的非常清楚,謝謝!!
也非常感謝新竹教育大學長久以來對於微程式資訊的支持與愛護,
尤其是幾位計網中心辛苦的長官及老師們,
期待日後微程式能幫助學校達到最經濟、最有效的系統管理。

目前導入微程式Portal Solution的有:(依筆劃排序)
‧文藻外語學院
‧高雄市政府
‧國立台北科技大學
‧國立高雄海洋科技大學
‧國立新竹教育大學
‧醒吾技術學院

...陸續增加中~

>> 更多相關資訊請參閱微程式網站
XUE 發表於 10:02 AM | 靜態連結 | 標籤列表: , , , , , , | 迴響留言 | 引用列表 | 觀看 (4970)

星期五, 十月 24, 2008

星期二, 十月 21, 2008

msnSDK v1.0.2 文件釋出

msnSDK(http://tcmail.program.com.tw/image/msnSDKV1.0.2.pdf)主要的功能就是把一些常用的MSN 功能做成一些API,讓外部的程式可以簡單的應用它來開發相關應用程式

XUE 發表於 7:35 PM | 靜態連結 | 標籤列表: , , , , , | 迴響留言 | 引用列表 | 觀看 (2246)

星期一, 十月 20, 2008

微程式 msnSDK 訊息控制開發套件

圖1:msnSDK系統架構
當網路頻寬日益高速、新型態溝通媒介不斷湧入之後,人與人之間的整體溝通型態為之改變,隨之而來是完全地球村的世界。根據資策會調查顯示,即時通訊(IM)已成為網友最常使用之網路功能,代替eMail成為主要的溝通工具。msnSDK訊息控制開發套件提供MSN訊息傳遞的程式介面,讓管理者得以簡單易用的方式進行相關程式開發及應用。


目前微程式msnSDK支援以下程式介面,提供訊息傳遞及訊息控制等功能:
● SOAP
● CGI
● ADO
● CGI-Steam

★ 系統特色
● 整合容易
使用SOAP為程式介面,讓任何一種語言都能直接使用它來傳送訊息
● 相容性佳
使用ADO介面,能快速整合ASP Script與VB6,讓研發人員快速上手
● 可移植性強
可於Linux / Win32平台上提供外部程式存取服務
● 支援繁簡體中文
可同時支援繁簡體訊息發送
● 高延展的訊息管理
可支援自定訊息接收、線上狀態程式接收樣板
● 支援關鍵字發送訊息
可自定關鍵字對應多組msn帳號,同步發送多則訊息
● 智慧型發送訊息
可自動判斷接收訊息者是否在線上,以決定是否發送離線訊息
● 傳遞非文字訊息
可透過開發套件進行來電震動等訊息,以加強文字訊息傳遞效果
● 全面控制
提供訊息控制程式介面,關閉/啟動機器人或修改顯示名稱
● 輕鬆控制訊息傳遞
提供暫時停止訊息傳遞功能

圖2: msnSDK系統流程
PS. msnSDK 有Unix/Linux/Win32 版本,目前運作中的版本是Win32版本


★ 應用領域(列舉):
● 公告通知,除了既有紙本或網站公告之外,能針對使用者進行即時公告
● IT或其他系統事件通知 (例如:主機維護或停機訊息通知系統管理者,軟體更新訊息通知使用者)
● 個人事件提醒或通知 (例如:行事曆、會議、生日等各類個人事件提醒)
● 文件簽核通知,當A簽認完畢後發訊息給下一流程文件簽核者
● 公用訊息通知 (例如:會員資訊訂閱,商業訊息訂閱,商品促銷或優惠訊息...等)
● 線上翻譯工具,透過機器人進行免費線上即時翻譯
● 郵件通知,收到來信立即通知使用者,並可直接點選訊息中的連結直接登入系統(for微程式SSO Solutions)
● Portal登入/登出通知,避免帳號遭竊取或盜用(for微程式Portal Solution)
...more (更多功能等著所有開發同好們一起努力~)

歡迎有興趣的朋友們自行下載msnSDK文件與我們連絡喔 !! ^^

>> 更多技術資訊請參閱 微程式 RD Blog
XUE 發表於 7:14 AM | 靜態連結 | 標籤列表: , , , , , | 迴響留言 | 引用列表 | 觀看 (4499)

星期四, 十月 16, 2008

MSNP16 與MSNP15 的差異

MSNP16 與MSNP15 唯一的差異

USR 4 SSO S t=...&p=xxx {MACHINE_GUID}
其中 MACHINE_GUID 可以是任何 32bytes 的16進制亂數,這大概是為了要讓MSN 可以在不同位置重複登入所設計,就像是XMPP 中的(jid)uid@domain/resource類似

XUE 發表於 2:40 PM | 靜態連結 | 標籤列表: , | 迴響留言 | 引用列表 | 觀看 (2400)

星期一, 十月 13, 2008
msn SDK(http://tcmail.program.com.tw/image/msnSDKV1.0.1.pdf) 主要的功能就是把一些常用的MSN 功能做成一些API,讓外部的程式可以簡單的應用它來開發相關應用程式,目前;msnSDK支援4種程式介面, 1.SOAP 2.CGI 3.ADO (這三種API的功能相同) 4.CGI-Steam 這個介面主要是處理從msn client 到msnSDK 之間的訊息以及線上狀況的資訊傳遞,歡迎需要測試功能的人或是有應用需求的各行各業先進與我聯繫( sonet.all@gmail.com )

備註:msnSDK 本身有unix/linux/win32 版本,目前運作中的版本是win32版本

msnSDK 文件

msnSDK (http://tcmail.program.com.tw/image/msnSDKV1.0.1.pdf)

XUE 發表於 10:19 AM | 靜態連結 | 標籤列表: , , , | 迴響留言 | 引用列表 | 觀看 (2301)

星期三, 九月 17, 2008

星期二, 九月 2, 2008

如何成為一位傑出的工程師一文讀後感

這篇文章值得一讀,但是;讀完後我們要怎麼再思考咀嚼成為自己的血肉? 我覺得 why很重要,而why not也很重要,文中提到:

成就傑出表現的原因並不在他們擁有什麼 ,而在於他們如何應用他們所擁有的特質。傑出表現之謎其實在於如何將他們的天分轉換成生產力:就好像將位能轉換成動能一樣。我們的結論是:傑出的表現是努力得來的,與天份無關。(Stars are made, not born.)

那麼這句話不自相矛盾嗎? 沒有天份,就無法將天份轉換成生產力,所以;傑出表現的原因在他需要先擁有天份,才能轉換/應用 特質,結論應該是;傑出的表現是因為有了天份,才能靠後天努力得來,那麼就與天份有關,不是嗎?

這篇文章反應的只是一些特例,也就是說他的研究對象是那些已經在這個領域有充足天份的人,以這些人為基礎來做這個研究,成員結構與一般的公司大相逕庭,所以他的結論應該是;如果你對xx領域已有天份,還需要靠後天的努力才能成為傑出的工程師,於是乎那種天生的宿命論仍然主導一個工程師的傑出不傑出,不是嗎? 

 

XUE 發表於 12:49 AM | 靜態連結 | 迴響留言 (2) | 引用列表 | 觀看 (4135)

星期天, 八月 31, 2008

抱歉!我並不希望你們假日來公司加班

親愛的夥伴,我最敬愛的摯友;我不知道你們多久會來看我的Blog;或是根本不會來,但是我還是想說一些心裡的話,今天我到公司看到大家認真加班,每個人不求加薪在星期假日到公司來趕工作,那種熱情;我本該由衷感激,不過;抱歉!我必須說:我並不喜歡你們假日來公司加班,因為加班只是效率不佳與無法準確估算時程最佳寫照,雖然;我不是你們每個人的主管,不過我必須跟你們說:這類的加班是錯誤的,不管對公司對個人來說,都損耗了最大的成本,而且;個人也不相信趕工出來的東西;品質能夠得到任何的保障

不過我應該更精確的說明我的想法,我所指的是沒有按照計畫行事而因為要交付客戶產品時程趕不及所需要的加班,這一連兩個禮拜,我看到這種狀況真的是搖頭連連,如果我自己知道;我所要購買的產品不是按部就班完成,而是透過加班的手段來達成目標,那我會毫不遲疑的退貨,理由無他;因為工作沒有按照例行計畫施行來完成,在每個流程裡的工作者都無法確實估算他的工作流程所需時間;且無法提出保證,這代表了生產品質也面臨相同的問題->不夠精確且無法提出證明,那麼;我們該為這種例外管理上的趕工喝采嗎? 值得商榷...真正有效的管理計畫,應該要包含很多變異的因素,所以計畫本身就要包含變化,才能將不確定的因素降到最低,如此才能使經營成本得到精確的估算,保障企業經營的穩定成長,如果我們遇到的每個問題都是不確定的,那我們要如何保障股東與客戶的權益,替他們提供確實可行的願景?

公司假日仍在公司的比率,我應該數一數二,且每天從事工作相關的事務直到am 1:00,但是我絕對不願意把絲毫的時間浪費在這種無法保證自己工作效率的事務上,我寧願假日到公司心情輕鬆自在的讀我想讀的技術文件,我情願熬夜去探討怎麼寫程式會比較好或怎麼把程式更有效率的完成且如何兼顧避免錯誤的發生,如果興趣就是programming,如果因為興趣而工作需要不停的工作,那是個人選擇,除此之外;抱歉!我只能說,這種補償過錯式的加班,不值得稱許

如果;你們認同我的想法,應該深自思考甚至開會檢討,這兩個星期我們是為什麼加班? 沒準時的理由是什麼? 該怎麼改善這些缺點? 是誰沒準時把東西交出來? 是誰說哪天要給而沒給? 是不是要提早先把工作完成? 我有沒有事先提醒我的夥伴該完成那些工作? 在遇到問題時我有像上反應嗎? 該不該獎勵把準時把品質當成第一要務的夥伴? 這樣才真的有把問題解決,否則;我只能說要靠加班趕工來彌補事前無法按部就班所犯下的錯誤,我非常不能認同,尤其是;這本來是如果可以提前完成的事,為何要這樣浪費資源?

XUE 發表於 12:54 AM | 靜態連結 | 迴響留言 (2) | 引用列表 | 觀看 (2587)

星期二, 八月 26, 2008

msn 疑似有一個bug

因為自己在摸索msn protocol,發現msn 在做聯絡人的地方有一個bug,當第一次把某個人加入聯絡人(且對方也核准)後,雙方如果都刪除彼此(沒封鎖聯絡人,但同時刪除hotmail聯絡人);當任一方要再訂閱對方,而有拒絕過一次後,對方從此不會再收到訂閱的通知,但自己卻可以訂閱對方為聯絡人且看到對方的線上資訊,這情況跟gtalk很類似,看來;大家在實作這個程序時都留下了一些缺憾

ps.這問題並不是msn client的bug,因為msn server確實沒有傳送ADL 指令;通知對方有人請求加入聯絡人 

另外; msn 裡的顯示歌曲資訊會佔用不必要頻寬,msn client勾選這個項目後,似乎每幾秒就會送出UBX 指令給所有的聯絡人,不知道當一個團體很大(數千人,而且每個人都開啟這個功能,且彼此為聯絡人)又同在相同網域下的時候,是不是有可能造成網路嚴重的負擔

XUE 發表於 2:16 PM | 靜態連結 | 標籤列表: , | 迴響留言 (4) | 引用列表 | 觀看 (4089)

星期三, 八月 20, 2008

以下為msn protocol v15 的認證過程,msnp15 大致上延續前一版的協定,但是在認證的部份改了,目前msn server 已支援msnp16 , 但是階段最新的msn client 還在使用msnp15,之所以從msn protocol著手的主要理由是;這樣,才能將msn 移植到非win32的平台上,否則;微軟本身有釋出msn sdk,唯一的缺點是;它只能依附在有安裝msn client 的win32上,就這一點來說;msn 的政策還相當封閉,因為每次protocol升級;認證的部份幾乎都有更動,這也是從protocol著手來應用msn 最大的麻煩,不過從追蹤 撰寫msn protocol,可以學到不少東西可說是額外的收穫

207.46.110.86:1863
c2s->[client to server]
s2c->[server to client]

c2s->VER 1 MSNP15 CVR0
s2c->VER 1 MSNP15

c2s->CVR 2 0x0404 winnt 5.2 i386 MSNMSGR 8.1.0178 MSFT luke_shei@hotmail.com
s2c->CVR 2 8.1.0178 8.1.0178 8.1.0178 http://msgruser.dlservice.microsoft.com/download/1/C/F/1CF776CC-90D6-4497-B079-402BA9DB8BE4/Install_Messenger.exe http://get.live.com/tc

c2s->USR 3 SSO I luke_shei@hotmail.com
s2c->GCF 0 6713
s2c->
<Policies>(省略...)</Policies>USR 3 SSO S MBI_KEY_OLD ZUzrcaa4fRluSqjOaLzc9ExfHQaoiZB4MxTjfRcmohTooJuVilSvIJ7jSy+DKBeO

此時需要使用ssl 連接 https://login.live.com/RST.srf , 並且送出認證資訊
<?xml version="1.0" encoding="UTF-8" ?>
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsse="http://schemas.xmlsoap.org/ws/2003/06/secext" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:wsp="http://schemas.xmlsoap.org/ws/2002/12/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing" xmlns:wssc="http://schemas.xmlsoap.org/ws/2004/04/sc" xmlns:wst="http://schemas.xmlsoap.org/ws/2004/04/trust">
<Header>
<ps:AuthInfo xmlns:ps="http://schemas.microsoft.com/Passport/SoapServices/PPCRL" Id="PPAuthInfo">
<ps:HostingApp>{7108E71A-9926-4FCB-BCC9-9A9D3F32E423}</ps:HostingApp>
<ps:BinaryVersion>4</ps:BinaryVersion>
<ps:UIVersion>1</ps:UIVersion>
<ps:Cookies />
<ps:RequestParams>AQAAAAIAAABsYwQAAAAyMDUy</ps:RequestParams>
</ps:AuthInfo>
<wsse:Security>
<wsse:UsernameToken Id="user">
<wsse:Username>帳號@hotmail.com</wsse:Username>
<wsse:Password>密碼</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</Header>
<Body>
<ps:RequestMultipleSecurityTokens xmlns:ps="http://schemas.microsoft.com/Passport/SoapServices/PPCRL" Id="RSTS">
<wst:RequestSecurityToken Id="RST0">
<wst:RequestType>http://schemas.xmlsoap.org/ws/2004/04/security/trust/Issue</wst:RequestType>
<wsp:AppliesTo>
<wsa:EndpointReference>
<wsa:Address>http://Passport.NET/tb</wsa:Address>
</wsa:EndpointReference>
</wsp:AppliesTo>
</wst:RequestSecurityToken>
<wst:RequestSecurityToken Id="RST1">
<wst:RequestType>http://schemas.xmlsoap.org/ws/2004/04/security/trust/Issue</wst:RequestType>
<wsp:AppliesTo>
<wsa:EndpointReference>
<wsa:Address>messengerclear.live.com</wsa:Address>
</wsa:EndpointReference>
</wsp:AppliesTo>
<wsse:PolicyReference URI="MBI_KEY_OLD" />
</wst:RequestSecurityToken>
<wst:RequestSecurityToken Id="RST2">
<wst:RequestType>http://schemas.xmlsoap.org/ws/2004/04/security/trust/Issue</wst:RequestType>
<wsp:AppliesTo>
<wsa:EndpointReference>
<wsa:Address>messenger.msn.com</wsa:Address>
</wsa:EndpointReference>
</wsp:AppliesTo>
<wsse:PolicyReference URI="MBI" />
</wst:RequestSecurityToken>
</ps:RequestMultipleSecurityTokens>
</Body>
</Envelope>

https://login.live.com/RST.srf 回應

<?xml version="1.0" encoding="utf-8" ?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<psf:pp xmlns:psf="http://schemas.microsoft.com/Passport/SoapServices/SOAPFault">
<psf:serverVersion>1</psf:serverVersion>
<psf:PUID>0001613089FFCD2E</psf:PUID>
<psf:configVersion>3.100.2199.0</psf:configVersion>
<psf:uiVersion>3.0.869.0</psf:uiVersion>
<psf:authstate>0x48803</psf:authstate>
<psf:reqstatus>0x0</psf:reqstatus>
<psf:serverInfo Path="Live1" RollingUpgradeState="ExclusiveNew" LocVersion="0" ServerTime="2008-08-20T06:17:36Z">BAYIDSLGN1E20 2008.07.30.00.23.50</psf:serverInfo>
<psf:cookies/>
<psf:browserCookies>
<psf:browserCookie Name="MH" URL="http://www.msn.com">MH=MSFT; path=/; domain=.msn.com; expires=Wed, 30-Dec-2037 16:00:00 GMT</psf:browserCookie>
<psf:browserCookie Name="MHW" URL="http://www.msn.com">MHW=; path=/; domain=.msn.com; expires=Thu, 30-Oct-1980 16:00:00 GMT</psf:browserCookie>
<psf:browserCookie Name="MH" URL="http://www.live.com">MH=MSFT; path=/; domain=.live.com; expires=Wed, 30-Dec-2037 16:00:00 GMT</psf:browserCookie>
<psf:browserCookie Name="MHW" URL="http://www.live.com">MHW=; path=/; domain=.live.com; expires=Thu, 30-Oct-1980 16:00:00 GMT</psf:browserCookie>
</psf:browserCookies>
<psf:credProperties>
<psf:credProperty Name="MainBrandID">MSFT</psf:credProperty>
<psf:credProperty Name="BrandIDList">
</psf:credProperty>
<psf:credProperty Name="IsWinLiveUser">true</psf:credProperty>
<psf:credProperty Name="CID">15797708e38d3864</psf:credProperty>
<psf:credProperty Name="AuthMembername">帳號@hotmail.com</psf:credProperty>
</psf:credProperties>
<psf:extProperties>
<psf:extProperty Name="ANON" Expiry="Sun, 08-Mar-2009 13:17:36 GMT" Domains="" IgnoreRememberMe="false">A=604A1CF7C863B25590E98D87FFFFFFFF&E=751&W=1</psf:extProperty>
<psf:extProperty Name="NAP" Expiry="Fri, 28-Nov-2008 14:17:36 GMT" Domains="" IgnoreRememberMe="false">V=1.6&E=6f7&C=D3sTmCI3EaEA1q-Ugji4rYA5G76akrqFloSZtTfKwkT6_ToKa0MUog&W=1</psf:extProperty>
<psf:extProperty Name="LastUsedCredType">1</psf:extProperty>
</psf:extProperties>
<psf:response/>
</psf:pp>
</S:Header>
<S:Body>
<wst:RequestSecurityTokenResponseCollection xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wst="http://schemas.xmlsoap.org/ws/2004/04/trust" xmlns:wsse="http://schemas.xmlsoap.org/ws/2003/06/secext" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:wsp="http://schemas.xmlsoap.org/ws/2002/12/policy" xmlns:psf="http://schemas.microsoft.com/Passport/SoapServices/SOAPFault">
<wst:RequestSecurityTokenResponse>
<wst:TokenType>urn:passport:legacy</wst:TokenType>
<wsp:AppliesTo xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing">
<wsa:EndpointReference>
<wsa:Address>http://Passport.NET/tb</wsa:Address>
</wsa:EndpointReference>
</wsp:AppliesTo>
<wst:LifeTime>
<wsu:Created>2008-08-20T06:17:36Z</wsu:Created>
<wsu:Expires>2008-08-21T06:17:36Z</wsu:Expires>
</wst:LifeTime>
<wst:RequestedSecurityToken>
<EncryptedData xmlns="http://www.w3.org/2001/04/xmlenc#" Id="BinaryDAToken0" Type="http://www.w3.org/2001/04/xmlenc#Element">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc">
</EncryptionMethod>
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:KeyName>http://Passport.NET/STS</ds:KeyName>
</ds:KeyInfo>
<CipherData>
<CipherValue>AXFOGn0CJ316qWBnizuzibVEto6s2I2AlZRmD69bPE+dfzAzqHWA3rjheo3p+wy46qtVQJXDw61/V9tVQZ3yFuQ2vuq4EWWaH5wB8RV6Bw5EVxJvlViM4FqNf7a/DaBSUCJqoPCGXxGRvXT5VYJDmMt/KAutuoO3ULh8r1aQYDs4JJQdFzHdst95oRQkeC4b1vzzNh4mRT/3y1C6wnplhlVhArpSRIf5yI5YYAz6dq0w2jzpfUZ/dJmz/vzfEsS3jV7eO0xptvy9X7wA/YM4U1r+8cIITG7DgfU85GhJmjh5P0LbvcZ6p39R/hNxUWJrHw5WU91qdVui0uMSOpQYloZxbtHtNWiQZ0Q2y+/YyGmX7THQdfyPqMSC7wl7gl2M+wwCrPzpUgpu2hRB89kUyARUz5O849F9uBy/DzV2u+l2oNmIzcOjhNDFqf9M003tJqV+ND7DA0KBJD/wQvHXP8M0OXRuTAxA4+z5bnqa858VgqwDrg==</CipherValue>
</CipherData>
</EncryptedData>
</wst:RequestedSecurityToken>
<wst:RequestedTokenReference>
<wsse:KeyIdentifier ValueType="urn:passport">
</wsse:KeyIdentifier>
<wsse:Reference URI="#BinaryDAToken0">
</wsse:Reference>
</wst:RequestedTokenReference>
<wst:RequestedProofToken>
<wst:BinarySecret>BZP+6JadxbOLyXqPL5Ryf1hHNpI9bYtU</wst:BinarySecret>
</wst:RequestedProofToken>
</wst:RequestSecurityTokenResponse>
<wst:RequestSecurityTokenResponse>
<wst:TokenType>urn:passport:compact</wst:TokenType>
<wsp:AppliesTo xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing">
<wsa:EndpointReference>
<wsa:Address>messengerclear.live.com</wsa:Address>
</wsa:EndpointReference>
</wsp:AppliesTo>
<wst:LifeTime>
<wsu:Created>2008-08-20T06:17:36Z</wsu:Created>
<wsu:Expires>2008-08-20T14:17:36Z</wsu:Expires>
</wst:LifeTime>
<wst:RequestedSecurityToken>

<wsse:BinarySecurityToken Id="Compact1">
t=EwBgAswbAQAUs1/VcBU2sH7mwYy3BysWZ71CRDGAAPyC8gbVv65DNR9B35NbtWgaPfSxjcx8TQRH7dSQkHl+pf46GQS1pukb1fNuh5NtW2fsIGDXCyNhyMBi4/BKhzeE66MGXBsfgdWzDzSj/SGnQYnZtvKLdBi9ihv1hR+q018ePodvV4x3Vlcet38/CE1yPd9t8Z/yhNyCBcufTbMVA2YAAAjOONh/nTbDBLABYnUuPlUVuIv9ImLzUxYuvlSzHsgEAxTJkrpnHNmJv4IS0lUGIO9+yvfEbAl46rS1vpr0MHN8uL4JIE7XkS7MHhElesCRHvMpWp/h2O9clTrk9P5krslyhepE45ZCWYyodEaCEPsD5ZEauYe4M8wf3Pm9mrF+vr0RiKwATDDz4Ow1QQ+zz/HS7XaKohPEsCQDLf5rnC+nsQha9053Wbsq6qrbTtAh5DHviCv2KjHVHykPufhlr1R/FTb4Pu/ufe3dt8r3pQseGcm0H16bYJBqlxqyG7ACIKha16xFYCltbENmNas4JGZvKWZMZsPL9XWiRwzwxg2kDUROlAZeW2AA2cBi+M8xjpZwpoktR5JbnZxu9qMta9s8576i/3plIxLxvvutva5FM/favzAauwbSZUX3virKDYKe569LyZxurrAWEmnPWNzj7ORajtvT1CXWcVwHMT+eu5oqW8PhPrKgIeCad5bRjnzyaG3WGNczkOdTcDJ8ybVCOztqrA90vqvSHS1qw1FL6JiJK0hIWHccwXrDoN7YGsnhtxhCFMLj2IQlD5KtA/SMsBJlSCtQKRa+xAE=&p=
</wsse:BinarySecurityToken>

</wst:RequestedSecurityToken>
<wst:RequestedTokenReference>
<wsse:KeyIdentifier ValueType="urn:passport:compact">
</wsse:KeyIdentifier>
<wsse:Reference URI="#Compact1">
</wsse:Reference>
</wst:RequestedTokenReference>
<wst:RequestedProofToken>

<wst:BinarySecret>
YdSj/GIkHNjeRoClluok9J4bYNsWVEea
</wst:BinarySecret>

</wst:RequestedProofToken>
</wst:RequestSecurityTokenResponse>
<wst:RequestSecurityTokenResponse>
<wst:TokenType>urn:passport:compact</wst:TokenType>
<wsp:AppliesTo xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing">
<wsa:EndpointReference>
<wsa:Address>messenger.msn.com</wsa:Address>
</wsa:EndpointReference>
</wsp:AppliesTo>
<wst:LifeTime>
<wsu:Created>2008-08-20T06:17:36Z</wsu:Created>
<wsu:Expires>2008-08-20T14:17:36Z</wsu:Expires>
</wst:LifeTime>
<wst:RequestedSecurityToken>
<wsse:BinarySecurityToken Id="Compact2">t=EwDYAfsBAAAUAHmHi/fIK5MsbQWTulxz7EiCF2+AAFyqVQompSp1Zu7W3g7T5yMceStaxs7w5I8wsiIeECJSj2+j7V3JorQeMfR1Y5Z4Azu5z+VHsRDIPrBh7FUgleNZF9SMSrhYfCiEjstd2OWD2RIWzLFmoLdZlDmhAZp1SLtJlf52O5rK6LFwTQrBJCgwYcLrX2o9l1OnwUuIMe0sA2YAAAheN9vDJtdLsigBd3QSSEiD2MhG5sHTnl8nC9xg4TMGF1+p3MomH45rnQPiQrGsgSxbymrtvO3gDDe0GSMIfLCDxJikDWVeUGeqIfrYC/KMEBbKcK24O3H+BkiWNk8PinF8T1FNAv7kK4f/fO6/UucbIyVyZC81b8/ahFjxJ0Z8tYGF3TrAGJzvqWIrgK7Hr3EC2GaagbHs6i3c3u9aNxBWqL+2x2c4csFR79lPx+cyS4DvYY0AMf6DNt03Gy6NiG51oS5At2QMyP7xT+doH2SeDeVGM3fVCa3jL0JlkOZbDy6SxDMANfaPPfOQYEadQsubPyZBe7UDCwmN6X0iio4Jy1DJyWpbROKF+lPax8ICEtB2ZAYw8PUTkym/TSCmEwX54A/LKFa6mwvA33tr4hYIv/hEAQ==&p=</wsse:BinarySecurityToken>
</wst:RequestedSecurityToken>
<wst:RequestedTokenReference>
<wsse:KeyIdentifier ValueType="urn:passport:compact">
</wsse:KeyIdentifier>
<wsse:Reference URI="#Compact2">
</wsse:Reference>
</wst:RequestedTokenReference>
</wst:RequestSecurityTokenResponse>
</wst:RequestSecurityTokenResponseCollection>
</S:Body>
</S:Envelope>

====

BinarySecurityToken-> t=EwBgAswbAQAUs1/VcBU2sH7mwYy3BysWZ71CRDGAAPyC8gbVv65DNR9B35NbtWgaPfSxjcx8TQRH7dSQkHl+pf46GQS1pukb1fNuh5NtW2fsIGDXCyNhyMBi4/BKhzeE66MGXBsfgdWzDzSj/SGnQYnZtvKLdBi9ihv1hR+q018ePodvV4x3Vlcet38/CE1yPd9t8Z/yhNyCBcufTbMVA2YAAAjOONh/nTbDBLABYnUuPlUVuIv9ImLzUxYuvlSzHsgEAxTJkrpnHNmJv4IS0lUGIO9+yvfEbAl46rS1vpr0MHN8uL4JIE7XkS7MHhElesCRHvMpWp/h2O9clTrk9P5krslyhepE45ZCWYyodEaCEPsD5ZEauYe4M8wf3Pm9mrF+vr0RiKwATDDz4Ow1QQ+zz/HS7XaKohPEsCQDLf5rnC+nsQha9053Wbsq6qrbTtAh5DHviCv2KjHVHykPufhlr1R/FTb4Pu/ufe3dt8r3pQseGcm0H16bYJBqlxqyG7ACIKha16xFYCltbENmNas4JGZvKWZMZsPL9XWiRwzwxg2kDUROlAZeW2AA2cBi+M8xjpZwpoktR5JbnZxu9qMta9s8576i/3plIxLxvvutva5FM/favzAauwbSZUX3virKDYKe569LyZxurrAWEmnPWNzj7ORajtvT1CXWcVwHMT+eu5oqW8PhPrKgIeCad5bRjnzyaG3WGNczkOdTcDJ8ybVCOztqrA90vqvSHS1qw1FL6JiJK0hIWHccwXrDoN7YGsnhtxhCFMLj2IQlD5KtA/SMsBJlSCtQKRa+xAE=&p=
--
nonce-> ZUzrcaa4fRluSqjOaLzc9ExfHQaoiZB4MxTjfRcmohTooJuVilSvIJ7jSy+DKBeO
--
BinarySecret-> YdSj/GIkHNjeRoClluok9J4bYNsWVEea
--
此處的程式下一篇補上,將上述資訊做hash 3des 的加密...程式後,產生
HAAAAAEAAAADZgAABIAAAAgAAAAUAAAASAAAAAAAAAAAAAAAu1u3n7shOrO0b1zrRTR/+hPQ97ucXZ/4vd6sPYkgZjyEUBE+nF4Xe+y1WuNzKxLSIG9AcWpKbu0JYUa06PuyvvLCTtjeqipeyISPnyHncMivinI/LcZmGmhOpfo=
而這個值是下一個程序 USR 4 SSO S t=...&p=xxx 中的p值,而t值為BinarySecurityToken

====

c2s->USR 4 SSO S t=EwBgAswbAQAUs1/VcBU2sH7mwYy3BysWZ71CRDGAAPyC8gbVv65DNR9B35NbtWgaPfSxjcx8TQRH7dSQkHl+pf46GQS1pukb1fNuh5NtW2fsIGDXCyNhyMBi4/BKhzeE66MGXBsfgdWzDzSj/SGnQYnZtvKLdBi9ihv1hR+q018ePodvV4x3Vlcet38/CE1yPd9t8Z/yhNyCBcufTbMVA2YAAAjOONh/nTbDBLABYnUuPlUVuIv9ImLzUxYuvlSzHsgEAxTJkrpnHNmJv4IS0lUGIO9+yvfEbAl46rS1vpr0MHN8uL4JIE7XkS7MHhElesCRHvMpWp/h2O9clTrk9P5krslyhepE45ZCWYyodEaCEPsD5ZEauYe4M8wf3Pm9mrF+vr0RiKwATDDz4Ow1QQ+zz/HS7XaKohPEsCQDLf5rnC+nsQha9053Wbsq6qrbTtAh5DHviCv2KjHVHykPufhlr1R/FTb4Pu/ufe3dt8r3pQseGcm0H16bYJBqlxqyG7ACIKha16xFYCltbENmNas4JGZvKWZMZsPL9XWiRwzwxg2kDUROlAZeW2AA2cBi+M8xjpZwpoktR5JbnZxu9qMta9s8576i/3plIxLxvvutva5FM/favzAauwbSZUX3virKDYKe569LyZxurrAWEmnPWNzj7ORajtvT1CXWcVwHMT+eu5oqW8PhPrKgIeCad5bRjnzyaG3WGNczkOdTcDJ8ybVCOztqrA90vqvSHS1qw1FL6JiJK0hIWHccwXrDoN7YGsnhtxhCFMLj2IQlD5KtA/SMsBJlSCtQKRa+xAE=&p= HAAAAAEAAAADZgAABIAAAAgAAAAUAAAASAAAAAAAAAAAAAAAu1u3n7shOrO0b1zrRTR/+hPQ97ucXZ/4vd6sPYkgZjyEUBE+nF4Xe+y1WuNzKxLSIG9AcWpKbu0JYUa06PuyvvLCTtjeqipeyISPnyHncMivinI/LcZmGmhOpfo=
s2c->USR 4 OK luke_shei@hotmail.com 1 0
SBS 0 null
s2c->MSG Hotmail Hotmail 1234
MIME-Version: 1.0
Content-Type: text/x-msmsgsprofile; charset=UTF-8
LoginTime: 1219213056
EmailEnabled: 1
MemberIdHigh: 90416
MemberIdLow: -1979724498
lang_preference: 1028
preferredEmail:
country: TW
PostalCode:
Gender:
Kid: 0
Age:
BDayPre:
Birthday:
Wallet:
Flags: 1610613827
sid: 72652
MSPAuth: EwBgAswbAQAUs1/VcBU2sH7mwYy3BysWZ71CRDGAAPyC8gbVv65DNR9B35NbtWgaPfSxjcx8TQRH7dSQkHl+pf46GQS1pukb1fNuh5NtW2fsIGDXCyNhyMBi4/BKhzeE66MGXBsfgdWzDzSj/SGnQYnZtvKLdBi9ihv1hR+q018ePodvV4x3Vlcet38/CE1yPd9t8Z/yhNyCBcufTbMVA2YAAAjOONh/nTbDBLABYnUuPlUVuIv9ImLzUxYuvlSzHsgEAxTJkrpnHNmJv4IS0lUGIO9+yvfEbAl46rS1vpr0MHN8uL4JIE7XkS7MHhElesCRHvMpWp/h2O9clTrk9P5krslyhepE45ZCWYyodEaCEPsD5ZEauYe4M8wf3Pm9mrF+vr0RiKwATDDz4Ow1QQ+zz/HS7XaKohPEsCQDLf5rnC+nsQha9053Wbsq6qrbTtAh5DHviCv2KjHVHykPufhlr1R/FTb4Pu/ufe3dt8r3pQseGcm0H16bYJBqlxqyG7ACIKha16xFYCltbENmNas4JGZvKWZMZsPL9XWiRwzwxg2kDUROlAZeW2AA2cBi+M8xjpZwpoktR5JbnZxu9qMta9s8576i/3plIxLxvvutva5FM/favzAauwbSZUX3virKDYKe569LyZxurrAWEmnPWNzj7ORajtvT1CXWcVwHMT+eu5oqW8PhPrKgIeCad5bRjnzyaG3WGNczkOdTcDJ8ybVCOztqrA90vqvSHS1qw1FL6JiJK0hIWHccwXrDoN7YGsnhtxhCFMLj2IQlD5KtA/SMsBJlSCtQKRa+xAE=&p=
ClientIP: 59.120.234.89
ClientPort: 6413
ABCHMigrated: 1
Nickname: luke
MPOPEnabled: 0

XUE 發表於 3:05 PM | 靜態連結 | 標籤列表: , | 迴響留言 | 引用列表 | 觀看 (4650)

星期五, 八月 1, 2008

Bidirectional-streams Over Synchronous HTTP (BOSH)

網址: http://www.xmpp.org/extensions/xep-0124.html

一何謂bosh?
雙向性的Http串流,利用http protocol post transport xmpp stream

二why http protocol?
一般防火牆都會允許tcp 80 prot 的對外窗口,某些少數的防火牆甚至允許任何的通訊協定通過這個port,
但是更多的proxy,filter 會確認通過的串流是否為http

三技術名詞
1pull: client use http request from server,是一種以網路為基礎的溝通方法
2 push: server response data to client,是一種以網路為基礎的溝通方法,server主動將資料傳給client

四compare other bidirectional http-base transport protocol
1http polling :週期性的詢問server是否有資料
2 ajax(Asynchronous JavaScript and XML)
3 comet :是長時間連線要求的web 應用的模式,server在有資料要傳送時透過此連線push資料至用戶端.
利用ajax with long polling or iframe or htmlfile activex 的技術去探測server是否有新的訊息
4bosh:採用多個http request / response 對,非polling,自稱可高效率低延遲的傳輸訊息及節省網路頻寬

五要求
1相容於受約束的執行環境(如行動電話或流覽器的用戶端)**.
2可以讓流覽器的用戶端建立跨網域的連接*
3相容部份緩衝的http代理回應*
4有效率的通過http回應時間限制的代理*
5完全相容http 1.0*
6相容受限的網路連線(如防火牆.代理.閘道)
7容錯性
8擴展性
9使用的頻寬遠低於輪詢機制的protocols
10回應的時間遠低於輪詢機制的protocols
11支援輪詢
12按順序傳送資料
13防止未經許可的使用者插入http request
14防止拒絕服務攻擊15多工的資料串流
*為comet無法做到的

六架構 Server [unwrapped data streams] Connection Manager (specialized HTTP server) BOSH [HTTP + <body/> wrapper] HTTP Client

六bosh原理(connection manager以下稱cm)
Client 傳送一個http請求,cm並不馬上回應,直到有資料要傳回cleint端,client端收到回應後,馬上又發送另一個
http請求,以確保cm隨時保持一個請求的連線,使之能push資料給client
在cm hold請求的同時,client端又有資料要傳送,此時需要發起第二個http請求,傳送資料,但一般的http client
並不支援管線(在同個連線發起多個請求),所以必須建立第二個http 連線發起第二個請求,此時cm不管是否
有無資料必須回應第一個http請求給client端,cm這麼做可確保client端有資料需傳送時可隨時發起第二個
請求(client不能同時開啟兩個以上的 http連線,不然就是要等cm回應第一個請求)
在網路環境良好的情況下,client可使用http 1.1,所有的請求是透過兩個持續的http連線,當cm從其中一個
連線Push資料時,client端也可透過另一個連線push資料(所以回應速度會跟一般的TCP連線差不多),要注意
的是,這兩個連線的角色,client每傳送一資料,就互換一次
若雙方在特定的時間內都沒有資料傳輸,那麼 cm傳回一個空值的回應,此時將觸發client發起另一個新的
請求,Cm藉此判斷在特定時間內連線是否中斷,這種交流就像"keep-alive" or "ping"等方法的實踐,因為BOSH
不涉及Polling,所以頻寬的消耗不會大於一般的TCP連線
在通常的情況下,數据可立即推送,不過,若其中一個端點剛推送了資料,那麼必須等待一個網路往返的時間
才可再次推送資料,若client端支援管線,那麼多個連線並行是可行的,因此client可隨時傳送資料,也可確保cm
隨時hold足夠的請求,若cm的請求連線集區夠大的話,client也不用對返回的空值回應,立即發送一個空的請求,
而是等到有資料時再發送請求,因此若client與流量是均衡的話,就像是使用一個標準的TCP連線
Cm的每個資料推送,都是一個標準的http response,因此不像commet技術,bosh可以2,3,4,5


九.參考文件
<a href="http://www.xmpp.org/extensions/xep-0124.html">http://www.xmpp.org/extensions/xep-0124.html</a>
<a href="http://www.xmpp.org/extensions/xep-0025.html">http://www.xmpp.org/extensions/xep-0025.html</a>
<a href="http://en.wikipedia.org/wiki/Comet_(programming)">http://en.wikipedia.org/wiki/Comet_(programming)</a>
<a href="http://www.ibm.com/developerworks/cn/web/wa-lo-comet/">http://www.ibm.com/developerworks/cn/web/wa-lo-comet/</a>

XUE 發表於 4:51 PM | 靜態連結 | 標籤列表: , , , , , | 迴響留言 | 引用列表 | 觀看 (5675)

星期四, 七月 17, 2008


星期六, 六月 21, 2008

前篇文章有部分內容有誤在此補充修正:fiddler2 並不是直接竄改網卡封包的方式去accept connection,他本身是一個 web proxy , 他listen 在 port 8888 , 所以所有通往port 8888 的都會被窺視,仔細觀察;當fiddler2 開啟時,我們可以看ie 的 工具-->連線-->網際網路選項-->進階 會發現proxy偷偷被fiddler2改成127.0.0.1:8888,當fiddler2 關閉時,這個設定會回復原值

問題一:我們並沒有改這個設定值,為何會被偷改? 因為fiddler2透過wininet 去修改proxy 設定,他把自己設定為 system proxy
問題二:那firefox opera ... 又該如何使用fiddler2 ? 可能必須自行設定proxy 為127.0.0.1 8888,除此之外http://www.gotnet.biz/UsingFiddler2WithFirefox.ashx有其他的做法讓 firefox 更方便的是用fiddler2
XUE 發表於 11:17 AM | 靜態連結 | 標籤列表: , , , | 迴響留言 (1) | 引用列表 | 觀看 (16249)

星期四, 六月 19, 2008

 

--
fiddler2下載點:http://www.fiddler2.com/fiddler2/version.asp
設定:tools->Fiddler Option ->HTTPS->Capture HTTPS Connects
---
Fiddler2 為何可以decrypt ssl packets? 我思考了後得到這個答案

正確的說法他不是decrypt ssl , 他是屬於使用欺瞞的方式解開ssl 封包

ie----ssl----webserver

我們知道,在ie 與 webserver 中間,如果走了ssl , 那麼由外面攔截封包是沒用的,所以;我們可以大膽的說,途中封包經過任何的proxy gateway .... 都不會因為封包被攔截而導致資料外洩那麼 fiddler2 是怎麼辦到的?我們可以使用IE(一定用ie)連接一個真實的SSL 的website https://www.ssl.com/ 仔細觀察當 fiddler2 開啟時和不開啟時,有什麼差異?

當fiddler2 開啟時會出現此訊息

---
此網站的安全性憑證有問題。

此網站出示的安全性憑證並非由信任的憑證授權單位所發行。
安全性憑證問題可能表示其他人可能正在嘗試欺騙您,或是攔截您傳送到該伺服器的任何資料。

我們建議您關閉此網頁,而且不要繼續瀏覽此網站。

按這裡關閉此網頁。
繼續瀏覽此網站 (不建議)。
其他資訊

若您是按一下連結到達此頁面,請檢查網址列中的網址,確定它是您要瀏覽的位址。
當您使用網址 (例如 https://example.com) 瀏覽網站,請嘗試在網址前加上 'www' (例如 https://www.example.com)。
若選擇略過此錯誤並繼續,請勿在此網站輸入個人資訊。
有關進一步的詳細資料,請參閱 Internet Explorer 中的「憑證錯誤」。
----

而在fiddler2未開啟時,IE卻沒有出現此訊息

why?(這張圖應該可以清楚的表達他的運作模式)

ie--ssl(憑證1)--fiddler2--ssl(憑證2)--website

因為fiddler2 是直接在wininet api(raw socket) 上運作,所以當你的ie 要連接ssl網站時,他是被 fiddler2(proxy) 直接從網卡accept , 由fiddler2 動態產生憑證 (憑證1:這是為何出現上面訊息的原因,因為憑證1並不是真正由webserver發出),因為憑證1 是由fiddler2 產生,所以他能夠解開ie 送出的封包,而當他收到ie 封包且解開後,再反過來跟webserver 做資訊的交通(此時使用的的是憑證2)

fiddler2 是微軟的工程師做的,他會從wininet 著手一點都不覺得奇怪,因為wininet api 是所有微軟ie 送資料(socket)的核心(因此;fiddler可以收到部分MSN 收送HTTP Protocol的資訊),正因fiddler1只從 wininet 著手,所以firefox... 他就無法得到資訊,而 fiddler2 聽說也可以接收其他瀏覽器的封包,我實際測試卻發現firefox3好像也聽不到封包,而要能跨越瀏覽器一定要從網卡下手,從網卡直接修改網路封包,而要有能力這麼做,程式必須要使用root/administrator來跑,也就是說;非使用者安裝的程式無法直接存取硬體, 而且他只能debug 自己的server,無法監聽其他網路上的封包,基本上如果是使用HUB 把其他機器接在一起, 可能聽的到攔不到,所以decrypt ssl 的功能也會跟著失效

XUE 發表於 1:14 PM | 靜態連結 | 標籤列表: , , , | 迴響留言 (3) | 引用列表 | 觀看 (6274)

星期一, 六月 16, 2008

星期三, 六月 11, 2008

某本 linux c/c++ 網路程式設計的書:它的前言這樣寫著,許多人學習網路程式並非了解網路架構,而是呼叫函式所提供api ,這雖是迅速寫出網路程式的方法,但卻也是bugs 的溫床,貧乏的知識可能連bugs如何產生都不自知...

真是一針見血,我想很多人也會心有戚戚焉阿! 不過這本書涉嫌抄襲 Richard.Stevens UNIX Network Programming 以及 Linux Socket Programming by Example,有些部分幾乎是一字不漏;看起來像是翻譯...

那麼我們該怎麼評斷這本書偉大的作者是知識貧乏才抄襲別人的著作?還是知識充沛到懶得自己著述?

XUE 發表於 11:50 AM | 靜態連結 | 標籤列表: , , | 迴響留言 (2) | 引用列表 | 觀看 (3086)

<< < 1 2 3 4 [5] 6 > >>
Collablog Portal enabled