最近外接硬碟莫名其妙在開啟時一直出現 「 需要格式化磁碟機才能使用 」 但是又不想真的格式化,不然裡面的檔案就找不回來了。
此時只好求助Google 幫忙了,底下就是解決方法:
對命令提示字元按右鍵,選擇「以系統管理員身分執行」,之後輸入指令:
chkdsk e: /f
e 就是你的外接式硬碟的代號,你可以換成你自己的硬碟編號。
2013年12月2日 星期一
2013年10月1日 星期二
wifite + reaver 破解無線網路AP密碼
剛開始光使用reaver 的程式,無法順利破解無線網路AP的密碼,所以後來找到一個wifite的程式,這個程式本來是用來破解WEP,這裡利用結合wifite 和 reaver的程式 , 順利破解無線網路AP密碼
安裝Reaver 套件
安裝aircrack 可以監聽附近無線網路的封包
安裝並執行Wifite
起始畫面:
此時就會開啟一個mon0介面開始監聽附近的無線網路來源
列出附近的無線網路
按下ctrl + c 就停止搜尋 並且 選擇你所要破解的無線AP的列表號碼
開始破解 (花了4HR的時間)
我設定我破解的ap是WPA2-personal 的加密協定, 下次再試看看其他的加密協定. 目前市面上蠻多都是WPA2的AP,真是危險!!
參考來源: 網站連結
安裝Reaver 套件
$ sudo apt-get install libpcap-dev libsqlite3-dev $ wget https://reaver-wps.googlecode.com/files/reaver-1.4.tar.gz $ tar zxf reaver-*.tar.gz $ cd reaver-*/src $ ./configure $ make $ sudo make install
安裝aircrack 可以監聽附近無線網路的封包
$ sudo add-apt-repository ppa:aking1012-com/aircrack-precise $ sudo apt-update $ sudo apt-get install aircrack-ng
安裝並執行Wifite
$ wget https://wifite.googlecode.com/files/wifite-2.0r85.tar.gz $ tar zxf wifite-*.tar.gz $ sudo ./wifite.py
起始畫面:
此時就會開啟一個mon0介面開始監聽附近的無線網路來源
列出附近的無線網路
按下ctrl + c 就停止搜尋 並且 選擇你所要破解的無線AP的列表號碼
開始破解 (花了4HR的時間)
我設定我破解的ap是WPA2-personal 的加密協定, 下次再試看看其他的加密協定. 目前市面上蠻多都是WPA2的AP,真是危險!!
參考來源: 網站連結
2013年9月2日 星期一
使用 wireshark in Ubuntu
啟動無線網卡至監聽模式(monitor)
要先安裝一個虛擬的無線界面 :mon0
安裝指令:
啟動指令:
在sudo 下 啟動 wireshark 在capture 下的 interface 就會新增一個mon0的虛擬界面
這次我要取得特定的client 端的封包 , 所以我先取得client端的MAC address 在專門取得他所發送的封包即可.
在wireshark 的工具列 capture -> 勾選所要監聽的device(我選mon0) -> options(我要過濾一些封包)-> 點選選定的device 兩下 -> 勾選 capture packets in monitor mode -> 點選capture filter ->ethernet address -> 在filter string 的 eher host 之後改成我要抓的mac address -> 按下確定->start
即可開始監聽!!!
安裝指令:
sudo apt-get install aircrack-ng
啟動指令:
sudo airmong-ng start wlan0
在sudo 下 啟動 wireshark 在capture 下的 interface 就會新增一個mon0的虛擬界面
這次我要取得特定的client 端的封包 , 所以我先取得client端的MAC address 在專門取得他所發送的封包即可.
在wireshark 的工具列 capture -> 勾選所要監聽的device(我選mon0) -> options(我要過濾一些封包)-> 點選選定的device 兩下 -> 勾選 capture packets in monitor mode -> 點選capture filter ->ethernet address -> 在filter string 的 eher host 之後改成我要抓的mac address -> 按下確定->start
即可開始監聽!!!
2013年8月14日 星期三
Android JPBC Benchmark Project
終於找到官方給的JPBC-Benchmark.APK檔案的project 的code : 連結
要抓tags那個資料夾的project code 才會正確,另一個跑過有錯.
最主要的關鍵就是這個project沒有夾帶JPBC 的library 也就是jar檔 所以要再抓 jpbc_1_2_1
分別把jpbc-1.2.1裡的jars資料夾裡的jar依序匯入Android libs 資料夾中
project右鍵 -> build Path -> configure build Path->Add JARs
選取自己project 的 libs 資料夾中剛剛所匯入的jar 即可!!
要抓tags那個資料夾的project code 才會正確,另一個跑過有錯.
最主要的關鍵就是這個project沒有夾帶JPBC 的library 也就是jar檔 所以要再抓 jpbc_1_2_1
分別把jpbc-1.2.1裡的jars資料夾裡的jar依序匯入Android libs 資料夾中
project右鍵 -> build Path -> configure build Path->Add JARs
選取自己project 的 libs 資料夾中剛剛所匯入的jar 即可!!
匯入jar 到 Android project 遇到的問題
這次遇到的問題, 找了好久 才知道是Eclipse 的設定搞的鬼
我遇到的問題是:
The library 'XXXX.jar' contains native libraries that will not run on the device
XXX.jar 是我無法順利載入的jar檔案 解決方法: 在Eclipse 的 window->Preferences->Android->Build->
"Force error when external jars contain native libraries"
"Automatically refresh Resources and Assets folder on build"
取消這兩個選項
我遇到的問題是:
The library 'XXXX.jar' contains native libraries that will not run on the device
XXX.jar 是我無法順利載入的jar檔案 解決方法: 在Eclipse 的 window->Preferences->Android->Build->
"Force error when external jars contain native libraries"
"Automatically refresh Resources and Assets folder on build"
取消這兩個選項
2013年8月13日 星期二
在Android 使用 base64 的 class
這次要在Android 上跑一個AES的範例,出現一些問題
在Android 上無法使用
首先 先下載:apache.commons的元件
我抓的版本為 :commons-codec-1.8-bin.zip (反正抓最新版就好)
在以下路徑 匯入函式庫:
project > Build Path > Add External Archives >
匯入commons-codec-1.8.jar
接著就改成import下面的函式
加密的寫法:
解密的寫法:
在Android 上無法使用
import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder;解決辦法是要import 不同的函式
首先 先下載:apache.commons的元件
我抓的版本為 :commons-codec-1.8-bin.zip (反正抓最新版就好)
在以下路徑 匯入函式庫:
project > Build Path > Add External Archives >
匯入commons-codec-1.8.jar
接著就改成import下面的函式
import org.apache.commons.codec.binary.Base64;
加密的寫法:
String outputString = new String(Base64.encodeBase64(inputString.getBytes()));
解密的寫法:
byte[] data = Base64.decodeBase64(msg.getBytes()); byte[] result = getCipher(CryptMode.DECODE).doFinal(data);參考: base64 AES範例
2013年7月19日 星期五
如何在blog顯示code碼
- 在範本中修改html檔,在<header>中插入以下程式碼:
- 在範本中修改html檔,在<body>中加入
- 在範本中修改html檔中收尋 /* Post 並加入以下CSS的修改檔
- 在文章的HTML檔在想顯示程式碼中加入以下標籤
<link href="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css" rel="stylesheet" type="text/css"></link> <script src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js" type="text/javascript"> </script>
onload='prettyPrint();'
.post .code { display: block; /* fixes a strange ie margin bug */ font-family: Courier New; font-size: 10pt; overflow:auto; background: #f0f0f0 url(http://yourweb_images_home/Code_BG.gif) left top repeat-y; border: 1px solid #ccc; padding: 10px 10px 10px 21px; max-height:200px; line-height: 1.2em; }
<pre class="prettyprint code"> 你的code碼 </pre>
不錯的參考資料:HTML Encode 網頁
Packet size 過大
在新增自己的Agent時,想自訂自己的packet 格式
首先要在test.h檔中
首先要在test.h檔中
struct hdr_test{ int type;//要加一個變數在這,不要去用到它,這樣packet header 的指標才不會出錯 double send_time; char state; int size_; int& size() { return size_; } static int offset_; inline static int&offset(){return offset_;} inline static hdr_test* access(const Packet* p){ return (hdr_test*)p->access(offset_); } };當初卡這裡卡超久, 這樣就就可以好好利用自己的packet了
2013年5月2日 星期四
網路上常見的delay time
1.propagation delay:在網路線上傳輸所花費的時間,與網路線上電子訊號跑的速度有關。
2.transmission delay:網路卡將資料傳送(或接收)資料到網路線上所花的時間,與網路卡的傳送速度有關(如高速乙太網路傳送速度100Mbps)
transmission delay = L(packet length)/R (transmission rate)
transmission delay = L(packet length)/R (transmission rate)
3.processing delay:路由器處理Header與找路徑等所花費的時間。
4.queuing delay:在路由器上因為某些因素無法立刻將傳送封包到網路上造成封包停留在buffer上所花費的時間。
*traffic intensity = L(packet length)a(average packet arrival rate)/R(link bandwidth<bps>) 趨近於1
在網路上propagation delay、transmission delay與processing delay都可根據相關參數(如封包大小、網路卡傳送速度等)計算所需時間,只有queuing delay必須根據網路當時情形才能獲知所需時間,因此queuing delay的變動性最大
protocol data unit
參考自:PDF
2013年3月31日 星期日
Latex 使用中文的範例
\documentclass{article}
\usepackage{CJKutf8}
\usepackage{graphicx}
\title{aaa}
\author{name}
\date{}
\begin{document}
\maketitle
\section{Abstract}
aaa
\includegraphics{aaa.eps}
\begin{CJK}{UTF8}{gkai}
这是一个楷体中文测试,处理简体字。
\end{CJK}
\begin{CJK}{UTF8}{gbsn}
这是一个宋体中文测试,处理简体字。
\end{CJK}
\begin{CJK}{UTF8}{bkai}
這是一個big5編碼的楷體中文測試,處理繁體文字。
\end{CJK}
\begin{CJK}{UTF8}{bsmi}
這是一個个big5編碼的明體中文測試,處理繁體文字。
\end{CJK}
\end{document}
預留格式,之後使用
用PDFLatex 編譯即可
2013年3月29日 星期五
gnuplot 安裝
假如在Ubuntu的軟體中心直接搜尋gnuplot 就可以直接安裝此元件 , 然後就可以直接使用了,
但是你在畫圖指令卻不能馬上產生圖案出來,會沒Fe~
所以要安裝gnuplot-x11的元件 , 會馬上產生圖案出來!!
安裝方法:
但是你在畫圖指令卻不能馬上產生圖案出來,會沒Fe~
所以要安裝gnuplot-x11的元件 , 會馬上產生圖案出來!!
安裝方法:
- 直接在軟體中心找到 gnuplot-x11 安裝即可使用
- 輸入指令:sudo apt-get install gnuplot-x11 亦可
執行方法:
- 輸入指令 :gnuplot 就可進入gnuplot 程式
- 測試畫圖 :plot sin(x) 會跳出圖形畫面
安裝NS2.35 失敗問題 "Ns make failed!"
我在安裝NS2.35 失敗 一直產生此訊息:
In file included from linkstate/ls.cc:67:0:
linkstate/ls.h: In instantiation of ‘void LsMap::eraseAll() [with Key = int; T = LsIdSeq]’:
linkstate/ls.cc:396:28: required from here
linkstate/ls.h:137:20: error: ‘erase’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
linkstate/ls.h:137:20: note: declarations in dependent base ‘std::map, std::allocator > >’ are not found by unqualified lookup
linkstate/ls.h:137:20: note: use ‘this->erase’ instead
make: *** [linkstate/ls.o] Error 1
Ns make failed!
後來找到解決之道:
步驟:
3. 再一次執行指令:./install
經過漫長的等待~~ 完成!!!
參考自:文章
In file included from linkstate/ls.cc:67:0:
linkstate/ls.h: In instantiation of ‘void LsMap::eraseAll() [with Key = int; T = LsIdSeq]’:
linkstate/ls.cc:396:28: required from here
linkstate/ls.h:137:20: error: ‘erase’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
linkstate/ls.h:137:20: note: declarations in dependent base ‘std::map, std::allocator > >’ are not found by unqualified lookup
linkstate/ls.h:137:20: note: use ‘this->erase’ instead
make: *** [linkstate/ls.o] Error 1
Ns make failed!
後來找到解決之道:
步驟:
- 到 ns-allinone-2.35/ns-2.35/linkstate/ 資料夾
- 開啟ls.h 檔案
第137行中, void eraseAll() { erase(baseMap::begin(), baseMap::end()); }
修改成 void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }3. 再一次執行指令:./install
經過漫長的等待~~ 完成!!!
參考自:文章
Syntax error: Bad for loop variable 解決
再跑sh的指令 一直出現
"Bad for loop variable " 的訊息
我一直以為是迴圈寫錯 , 後來上網查才知道是Ubuntu 設定問題
指令 :sudo dpkg-reconfigure dash
出現此訊息:
再跑一次sh 檔案 就可以執行了.
參考自:文章
"Bad for loop variable " 的訊息
我一直以為是迴圈寫錯 , 後來上網查才知道是Ubuntu 設定問題
指令 :sudo dpkg-reconfigure dash
出現此訊息:
再跑一次sh 檔案 就可以執行了.
參考自:文章
Ubuntu 12.10 + NS2.35 + NAM 1.5
因為這次作業要修改到NS2.35裡面的檔案,所以我就重灌NS2.35 , 後來參考另一個完整的教學,才成功灌好NS2.35和NAM
材料:
- sudo apt-get update
- tar xvfz ns-allinone-2.35.tar.gz
- sudo apt-get install build-essential autoconf automake libxmu-dev
- cd ns-allinone-2.35/
- ./install (假如失敗:參考此文章)
- cd
- gedit .bashrc(**)
- mv nam-1-20090106.tar.gz ns-allinone-2.35
- cd ns-allinone-2.35
- tar -zxvf nam-1-20090106.tar.gz
- sudo reboot
測試指令:
ns ns-allinone-2.35/ns-2.35/tcl/ex/simple.tcl
完成!!!
ns ns-allinone-2.35/ns-2.35/tcl/ex/simple.tcl
完成!!!
(**) 環境變數:
PATH=$PATH:$HOME/bin:./:/home/user/ns-allinone-2.35/bin:/home/user/ns-allinone-2.35/tcl8.5.10/unix:/home/user/ns-allinone-2.35/tk8.5.10/unix:/home/user/ns-allinone-2.35/nam-1.15
export LD_LIBRARY_PATH=/home/user/ns-allinone-2.35/otcl-1.14:/home/user/ns-allinone-2.35/lib
export TCL_LIBRARY=/home/user/ns-allinone-2.35/tcl8.5.10/library
要注意紅色記號要修改成你的ns-allinone-2.35的位置,不然就無法啟用ns和nam指令.
主要都參考此影片.
2013年3月13日 星期三
安裝新酷音輸入法在Ubuntu 12.10
新酷音輸入法就是微軟的新注音輸入法, 用Ubuntu 裡的內建輸入法就像是ㄅ半輸入法一樣難用!!
安裝過程:
1.在Terminal 下輸入指令
(1) sudo apt-get install scim scim-chewing; sudo im-switch -s scim-bridge
(2) scim
2.重新開機
3. 在系統設定值的語言支援的鍵盤輸入法系統要用ibus
切換輸入法:ctrl + space
完成!!!
安裝過程:
1.在Terminal 下輸入指令
(1) sudo apt-get install scim scim-chewing; sudo im-switch -s scim-bridge
(2) scim
2.重新開機
3. 在系統設定值的語言支援的鍵盤輸入法系統要用ibus
切換輸入法:ctrl + space
完成!!!
2013年3月10日 星期日
NS2 in Ubuntu 12.10
1. 安裝NS2 指令:
sudo apt-get install ns2
sudo apt-get install nam
sudo apt-get install xgraph
2. 執行NS2指令:
nam
youtube教學
還是在Ubuntu 下安裝NS2 簡單又快速,不像windows要安裝很久,下次再來研究如何在windows下如何安裝.
訂閱:
文章 (Atom)