話說字串處理在C語言是很常用的,在使用時要注意的地方很多。一般在複製字串不外以下幾個function:

memcpy/strncpy/snprintf

各有其使用時機。strncpy看起來多一個n來指定複製長度,以避免overflow,乍看之下是很安全的,但結束符號常常是一個問題,導致結果和預期的不符。請見以下範例

#include <stdio.h>
#include <string.h>

Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(0) 人氣()

c的macro真是博大精深,真要自己搞一些特異功能的macro腦子就不夠使了,但,至少要會抄!

C語言巨集定義技巧


Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(0) 人氣()

來源: Understanding a Wi-Fi connection

 

跟 Wifi connection有關的實體信號有一些名詞,antenna, signal stregth, data rate, RSSI, power level, SNR

RSSI (Received Signal Strength Indication)是一個負的dBm,表示RF信號的數值。信號愈強,表示連線品質愈好。因此,RSSI愈接近0愈好,同理,RSSI -60dBm的信號比-80dBm強。

 

Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(2) 人氣()

variable和function是Makefile在被讀取時即展開。

wildcard可用來檢測檔案是否存在,但如果沒注意到變數展開的時間,就會出現結果與預期不符的情況。

 

現有Makefile如下

FILE=/path/to/some/file

Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(0) 人氣()

IEEE802.11定義兩個level的security:

open

open就是沒有security。

wep

當收到request時,AP總是送success message。

Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(1) 人氣()

syslog server 可提供外部的client將其syslog傳送至server

步驟沒幾個:

1. 安裝syslogd:

    apt-get install syslogd

2. 改變syslogd啟動的參數:

Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(1) 人氣()

來源: http://www.cnitblog.com/chliao618/archive/2007/03/15/24059.aspx

 

IEEE 802.11 所制定的是技術性標准 ,Wi-Fi 聯盟所制定的是商業化標准 , 而 Wi-Fi 所制定的商業化標准基本上也都符合 IEEE 所制定的技術性標准。 WPA(Wi-Fi Protected Access) 事實上就是由 Wi-Fi 聯盟所制定的安全性標准 , 這個商業化標准存在的目的就是為了要支持 IEEE 802.11i 這個以技術為導向的安全性標准。而 WPA2 其實就是 WPA 的第二個版本。 WPA 之所以會出現兩個版本的原因就在於 Wi-Fi 聯盟的商業化運作。

我們知道 802.11i 這個任務小組成立的目的就是為了打造一個更安全的無線局域網 , 所以在加密項目裡規範了兩個新的安全加密協定 – TKIP 與 CCMP 。其中 TKIP 雖然針對 WEP 的弱點作了重大的改良 , 但保留了 RC4 演算法和基本架構 , 言下之意 ,TKIP 亦存在著 RC4 本身所隱含的弱點。因而 802.11i 再打造一個全新、安全性更強、更適合應用在無線局域網環境的加密協定 -CCMP 。所以在 CCMP 就緒之前 ,TKIP 就已經完成了。但是要等到 CCMP 完成 , 再發布完整的 IEEE 802.11i 標准 , 可能尚需一段時日 , 而 Wi-Fi 聯盟為了要使得新的安全性標准能夠盡快被布署 , 以消彌使用者對無線局域網安全性的疑慮 , 進而讓無線局域網的市場可以迅速擴展開來 , 因而使用已經完成 TKIP 的 IEEE 802.11i 第三版草案 (IEEE 802.11i draft 3) 為基准 , 制定了 WPA 。而於 IEEE 完成並公布 IEEE 802.11i 無線局域網安全標准後 ,Wi-Fi 聯盟也隨即公布了 WPA 第 2 版 (WPA 2) 。所以:

Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(0) 人氣()

802.11i所定義的RSN (Robust Security Network)定義了在一個無線網路下,一個"安全"的connection產生的流程,也可說是一個framework。這個流程也就是RSNA (Robust Security Networks Association),定義了認證,加密及金鑰管理。

 

STA通過802.1x的認證後,AP與STA都會拿到同一組session key。有RADIUS時稱 PMK (Pairwise Master Key),無RADIUS時PSK(Pre-Shared Key)即 PMK。之後即進行以下的4-way handshake。這個 PMK用來產生其他的key,在hierarchy中是最上層。

註:在沒有RADIUS的情況下,AP與STA會預先設定好一組passphrase,並用來衍生出PMK。

目的

Posted by kezeodsnx at 痞客邦 PIXNET Guestbook(0) 人氣()