導航:首頁 > 編程語言 > cudaphp

cudaphp

發布時間:2023-02-16 09:37:06

1. 如何在Ubuntu 12.04上配置CUDA 4.2

今天運行一個UCLA的光流程序,非常耗時間。看到作者在網站上提供了GPU版的,所以希望能使用CUDA加速的版本。今天晚上按照NVidia論壇上的一個教程,成功的配置好了ubuntu 12.04 64bit版的CUDA 4.2. 現將原文分享如下:

http。//forums。nvidia。com/index.php?showtopic=231150

Posted 06 June 2012 - 10:40 PM

This post is to give a complete picture on how to install and test CUDA 4.2 on Ubuntu 12.04 64 bit. I have found that everything that needs to be done is quite scattered and needs bringing together to make CUDA more accessible to more novice users such as my self. So if this doesn't work for you please post and let us know and if you know a quicker or better way please enlighten us!!!

Thanks,
CDS

I hope you find this useful and I would like to credit my sources:
FCNS
sn0v
The NVIDIA CUDA Getting Started Guide (linux)

Note one must have a nVidia GPU which is CUDA capable http。//developer。nvidia。com/cuda-gpus
Check is the OS is 32 or 64 bit by running
uname -m
in a terminal. i686 denotes a 32-bit system, and x86_64 denotes a 64-bit one.
Proceed to CUDA Downloads page: http。//developer。nvidia。com/cu
For the toolkit, I chose the one titled Ubuntu 11.04, and save all three files in an easy to access location, like your Home folder.
Make sure the requisite tools are installed using the following command :
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
Next, blacklist the required moles (so that they don』t interfere with the driver installation)
gksu gedit /etc/modprobe.d/blacklist.conf
Add the following lines to the end of the file, one per line:
blacklist amd76x_edac
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
Save the file and exit gedit.

In order to get rid of any nVidia resials, run the following command in a terminal:
sudo apt-get remove --purge nvidia*
Once it』s done, reboot your machine. At the login screen, don』t login just yet. Press Ctrl+Alt+F1 to switch to a text-based login. Login and switch to the directory which contains the downloaded drivers, toolkit and SDK. Run the following commands:
sudo service lightdm stop chmod +x devdriver*.run
Follow the onscreen instructions. If the installer throws up an error about nouveau kernel still running, allow it to create a blacklist for nouveau, quit the installation and reboot. In that case, run the following commands again:
sudo service lightdm stop
sudo ./devdriver*.run
The installation should now proceed smoothly. When it asks you if you want the 32-bit libraries and if you want it to edit xorg.conf to use these drivers by default, allow both.
Reboot once the installation completes.
Next, enter the following in a terminal window (in the directory where the files are stored):
sudo chmod +x cudatoolkit*.run
sudo ./cudatoolkit*.run
where cudatoolkit*.run is the full name of the toolkit installer. I recommend leaving the installation path to its default setting (/usr/local/cuda) unless you have a specific reason for not doing so.
The following lines must be added into the .bashrc file in your home directory:

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/lib/nvidia-current:$LD_LIBRARY_PATH
export CUDA_ROOT=/usr/local/cuda/binSDK must be installed as a regular user (and not as root) to prevent access issues with the SDK files.
Once the toolkit is installed, enter the following in a terminal:
sudo chmod +x gpucomputingsdk*.run
sudo ./gpucomputingsdk*.run
where gpucomputingsdk*.run is the full name of the SDK installer. Again, follow the instructions onscreen to complete the installation.
Since there are several linking errors in this compilation several modifications must be make. You are made aware of this when you change your working directory to NVIDIA_GPU_Computing_SDK in your home directory and then run:
sudo make
This will result in the following error:
../../lib/librendercheckgl_x86_64.a(rendercheck_gl. cpp.o): In function `CheckBackBuffer::checkStatus(char const*, int, bool)': rendercheck_gl.cpp:(.text+0xfbb): undefined reference to `gluErrorString'

The fix is contained in the following three steps.
1) change the order for all occurrences of RENDERCHECKLIB in BOTH /C/common/common.mk and /CUDALibraries/common/common_cudalib.mk like this:

OLD:
LIB += ${OPENGLLIB} $(PARAMGLLIB) $(RENDERCHECKGLLIB) ${LIB} -ldl -rdynamic

NEW:
LIB += $(RENDERCHECKGLLIB) ${OPENGLLIB} $(PARAMGLLIB) ${LIB} -ldl –rdynamic

and add -L../../../C/lib in common_cudalib.mk RENDERCHECKGLLIB definition line:

OLD:
RENDERCHECKGLLIB := -lrendercheckgl_$(LIB_ARCH)$(LIBSUFFIX)NEW:
RENDERCHECKGLLIB := -L../../../C/lib -lrendercheckgl_$(LIB_ARCH)$(LIBSUFFIX)

2) In all files that use UtilNPP (boxFilterNPP, imageSegmentationNPP, freeImageInteropNPP, histEqualizationNPP), the makefiles have the wrong order of library linking ($LIB is before the source/out files), so go to the /CUDALibraries/src/*NPP/Makefile and change the order like (note this is an example of the freeImageInteropNPP file modification, all others are done similarly):

OLD:
$(CXX) $(INC) $(LIB) -o freeImageInteropNPP freeImageInteropNPP.cpp -lUtilNPP_$(LIB_ARCH) -lfreeimage$(FREEIMAGELIBARCH)NEW:
$(CXX) $(INC) -o freeImageInteropNPP freeImageInteropNPP.cpp $(LIB) -lUtilNPP_$(LIB_ARCH) -lfreeimage$(FREEIMAGELIBARCH)

3) For randomFog, you also need to add
USERENDERCHECKGL := 1
to the Makefile.
Now go back to the working directory NVIDIA_GPU_Computing_SDKand run
make
, this will take some time to fully compile to be patient. Also the compiler will throw several warning but these should be ignored.
The version of the CUDA Toolkit can be checked by running
nvcc -V
in a terminal window. The nvcc command runs the compiler driver that compiles CUDA programs. It calls the gcc compiler for C code and the NVIDIA PTX compiler for the CUDA code.
NVIDIA includes sample programs in source form in the GPU Computing SDK. You should compile them all by changing to ~/NVIDIA_GPU_Computing_SDK/Cand running
sudo make
. The resulting binaries will be installed in ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release.
After compilation, go to ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release and run
deviceQuery
. If the CUDA software is installed and configured correctly, the output for deviceQuery should look similar to that shown in Figure 1 of the reference guide provided by NVIDIA. The exact appearance and the output lines might be different on your system. The important outcomes are that a device was found (the first highlighted line), that the device matches the one on your system (the second highlighted line), and that the test passed (the final highlighted line). If a CUDA-enabled device and the CUDA Driver are installed but deviceQuery reports that no CUDA-capable devices are present, this likely means that the /dev/nvidia* files are missing or have the wrong permissions.

2. 有什麼是 python 可以做,但是 PHP 不可以做的

1. GUI應用,包括桌面以及移動端App(後者Py群體中很小眾)
2. 2D/3D的展示和游戲
3. 科學計算、統計、計算金融
4. 機器學習
5. 並行計算、顯卡計算(調動Cuda/OpenCL)!

3. n卡physx和a卡的havok哪個發展前途大

Havok簡史
2000年 Havok公司發布了1.0版本
2003年 在的GDC大會上,發布2.0版本
...
2007年3月 4.5版本發布
2007-09 Havok公司被Intel收購
2009-12 Havok SDK 7.1版本
PhysX簡史
2006年 Ageia公司推出了PhysX P1物理加速卡和PhysX物理引擎
2008年2月 Nvidia收購了Ageia
2008年8月 nvidia推出了支持PhysX的GeForce 8系列顯卡

PhysX與Nvidia是什麼關系?
原來PhysX是用PhysX卡計算的,nvidia收購了ageia公司後,並用cuda計算框架實現了PhysX物理計算引擎。說白了就是API基本不變,內部實現完全改變了。
現在PhysX產權歸PhysX。

PhysX、CUDA、Havok、Stream、OpenCL、Direct Compute之間是什麼關系?
CUDA和Stream分別是N卡和A卡提供的通用計算介面,是硬體相關的。
OpenCL和DC都是通用計算的API,是編程用的API,是硬體無關的;
PhysX、Havok是物理計算引擎,是編程用的API。
Nvidia:顯卡有cuda介面,然後以cuda為基礎實現了opencl、dc、physx的API。也就是程序裡面調用了physx,那麼nv的驅動 程序就調用cuda完成計算。
AMD類似:顯卡有stream介面,然後以stream為基礎實現了opencl、dc的API。也就是程序裡面調用了 opencl,那麼amd的驅動程序就調用steam完成計算。
等等,havok呢?
最新版本的havok 是用opencl實現了用GPU加速的物理引擎,也就是說havok在n卡、a卡上都沒問題。

java對比:
a/n的顯卡好比操作系統,linux、windows各種各樣的。
cuda/stream好比操作系統的API也是不同的。
顯卡驅動提供了opencl、dc介面,好比java虛擬機提供了java基本api.
havok好比java程序,隨便什麼操作系統,只要有java虛擬機就可以執行。
當然physX類似java程序,但是因為調用了操作系統的api的程序,換了操作系統就不能執行了。

從Havok的歷史上看,跟ATI/AMD沒啥關系啊,兩者是怎麼扯上的呢?
Havok使用了GPU的Shader Model 3.0計算特效。也就是說用了amd/nvidia的GPU加速。
用了就得展示,但是nvidia已經有了physX了,再用就沒啥優勢,而ati/amd沒有自己搞一套物理加速。
所以havok選擇ati顯卡作為展示顯卡,同時ati/amd也提供開發支持,所以就被大家視為"ati/amd的物理加速引擎"了。

目前現在Havok進展如何?
曾經有一個Havok FX項目,該項目是使用nvidia和ati的顯卡來實現物理計算的。
但havok被intel收購後,intel一度想讓CPU做物理計算,也就是在CPU中加上PPU(物理計算單元),所以 Havok FX項目被取消了。
不過在GDC09展覽中,Havok演示了使用了ATI的顯示核心作為加速,但該引擎是基於OpenCL架構進行開發。也就是說同時支持 nvidia的顯卡。

Havok有游戲支持嗎?
不僅有,而且相當的多,特別是那些老牌游戲開發商用的多。
Assassin's Creed II,The Saboteur,Resident Evil 5 ,Halo 2,Far Cry 2,Fallout3 、。。。
PC版本的清單: http://www.havok.com/index.php?page=pc
還有很多支持Havok的平台,Xbox 360, Xbox, PlayStation 3, PlayStation 2, Wii, PSP

既然有這么多游戲支持Havok,為什麼沒看到關於Havok宣傳?
確切的說不是「支持」,而是「使用到」。
Havok是一個物理計算的解決方案,可以用CPU計算也可以用GPU計算。
Havok只是個物理引擎,更硬體無關、操作系統無關,也就是「沒後台」,沒人願意打廣告(東家intel不生產最終成品,不最終收錢,所以也不願意)。
況且游戲裡面用到Havok計算一些物理場景,沒必要在啟動畫面上貼上一個偌大的圖標。havok都貼上去了,還不如開個廣告位放廣告呢。
至於為什麼PhysX會有一個圖標....那就說不清楚了,圖標太多了(intel的、杜比的、windows的、發行商的、開發小組的、成人委員會的……)

ATI/AMD為什麼不自己搞一套物理引擎?
以上的問題已經能回答了。
ati/amd已經有了通用計算介面,誰要用就用唄,為何要自己搞一套呢。況且物理引擎那麼多,應該由游戲開發商自己選擇。
最重要的是如果要挖PhysX的牆角,最好的辦法就是支持第三方開發物理引擎(這個第三方包括Intel的Havok)。
如果一個物理引擎能在N卡、A卡或者將來的X卡上運行,那開發商當然會選擇通用的。
AMD的付出的代價也小,也就是提供技術支持,指導一下程序開發。對比Nvidia的維護physx的代價就高了。

Havok與PhysX哪個好些?
游戲開發商在選擇物理引擎的時候,熟悉哪個就用哪個,哪個支持的多就用哪個,也沒什麼特定的標准。反正都是C/C++,沒啥限制,基本上 PC/XBOX/PS...上的游戲通吃
Havok的歷史悠久,使用的開發商比較多,特別是游戲都是PS3XBOX360PC三版本同時出,用Havok的優勢更明顯(從支持Havok的游戲清單裡面就能看出來)
Nvidia推廣PhysX的力度比較大(比較明顯,intel是否在推Havok就不清楚了)
不過對比起通用性,那就PhysX就要差一截了,千辛萬苦開發出一個游戲,居然是只支持NV顯卡的,首先在投資商那裡就過不去。
除非nvidia開發通用版本的physX,不過那是不可能的……nvidia寧可把physX開源了,也不會給amd出一點兒力;

為什麼有人討厭N的PhysX?
最主要的就是通用性差:
游戲的開發商、投資方不喜歡:開發一個游戲居然只能用n卡?不是明擺告訴用a卡的人不要買嗎。
正在用a卡的人不喜歡:肯定不會喜歡的。
相比Havok,大家的態度就是「沒態度」。

既然有這么好的引擎,為什麼「有物理的游戲」那麼少?
用到「物理的引擎」的游戲多的是,只不過「有復雜物理場景」的游戲極少(滿地的箱子一炸一大片的那種)。
玩家與NCP、玩家與環境的交換已經夠復雜了。
如果還要加上玩家與動態環境、NCP與動態環境、環境與環境……太難太難了
現在游戲裡面扔幾個箱子,炸幾個房子,飄幾面旗子……已經很普及了,而且效果也不錯,玩家也不會太注重物理場景的復雜度的。

4. 求在linux下安裝CUDA的詳細步驟

ubuntuforums.org里有,不過是英文版的,供參考。
http://ubuntuforums.org/showthread.php?t=1112317

5. TMPGEnc4XP和TMPGEnc PLUS有什麼異同

小日本4 比 2.54 版勝在以下幾點:

1、能夠轉出更多的格式,除了我們最常用的MPEG-1和MPEG-2之外,還能將視頻轉換編碼成AVI、WMV、divx、MP4等格式。當然,我們最常用的還是轉換作為視頻DVD源文件的MPEG-2。
2、對視頻源的設定和對輸出模板的設定分開,清晰把握當前設置的環節。
3、視頻源文件的設定和輸出模板的設定界面均直觀易讀。
4、可批量添加視頻文件。
5、可將多個文件批量輸出合並成一個。
6、針對雙核進行優化,速度是小日本2.54的兩倍。
7、新版支持nVidia顯卡的CUDA技術,提升特效編碼速度。

6. CUDA會Shared Memory產生bank conflict的原因是什麼

您好,很高興為您解答。

見論壇:http://www.opengpu.org/forum.php?mod=viewthread&tid=1486

如若滿意,請點擊右側【採納答案】,如若還有問題,請點擊【追問】

希望我的回答對您有所幫助,望採納!

~ O(∩_∩)O~

7. 求三枝夕夏的《飛び立てない私にあなたが翼をく》歌詞的羅馬音!!!

一度 も 噓 つ か ない で 一度 も 後悔 を し ない
iqido mo uso cu ka na i de iqido mo so u kai o si nai

そん な 日は あったかな
so n na hiwa a takana

あの日 あなたに 出逢 う まで
a nohi a natani de a u mate

も う ひとり ぼっち じゃ な いって
mo u hitoli bo qi ja na i te

You're the only one

思 わ せてくれたのは
omo wa setekuretanowa

そ う あなただけよ Only your heart
so u a natadakeyo

飛び立てな い 私 に あなたが 翼 を くれた
tobitatena i watasi ni a nataga cupasa o kureta

そして 私 を 自由 にしてくれたよね
sosite watasi o jiyu u nisitekuretayone

When I close my eyes, I can feel you

あなたが いるそれだけで
a nataga i rusoretakede

風 が 吹くたび 地球 が 笑 ってる気がするよ
kaze ga fukutabi qikayu u ga wara terukigasuruyo

この 街 に來て 3 年 長 いのか 短 いのか
kono maqi nikute sa n ne n naga i noka mijika i noka

わからな いよ 時 はずっと
wakarana i yo toki wazi to

止まったままだったから
toma tamamada takara

小 さ な 心 の 窓 から じゃ
qi i sa na kokolo no mato kala ja

空 の 青 さ を 知っても
sora no a o sa o si temo

空 の 広 さ を きっと 知ることはなかった
sora no hiro sa o ki to sirukotowanaka ta

My heart

飛び立てな い 私 に あなたが 翼 を くれた
tobitatena i watasi ni a nataga cupasa o kureta

そして 私 に 愛 を 教 え てくれたよね
sosite watasi ni a i o o si e tekuretayone

When I see heaven's skies in your eyes

夕 立ちの 後 の 空 に
yu u taqino a to no sora ni

笑顏 2 つ 重 ねて 大 きな 虹 が咲く
e ka o hutacu kasanete o okina niji gasaku

戀 は いつも 泥棒
ko i wa i cumo dorobo u

ノックもせず 忍 び 込み
no kumosezi sino bi komi

心 を 盜 ん で 行くよ
kokoro o nesu n de i kuyo

目の 前 に あなたが いなくても
meno ma e ni a nataga i nakutemo

目 をとじれば いつだってそばに 感 じられる
me o tojireba i cuda tesobani ka n jirareru

Fuu...
飛び立てな い 私 に あなたが 翼 を くれた
tobitatena i watasi ni a nataga cupasa o kureta

そして 私 を 自由 にしてくれたよね
sosite watasi o jiyu u nisitekuretayone

When I close my eyes, I can feel you

あなたが いるそれだけで
a nataga i rusoredakede

風 が 吹くたび 地球 が 笑 ってる気がするよ
kaze ga fukutabi qikayu u ga wara terukigasuruyo

La la la ........ You set me free
La la la .......... You take a chance
You let me fly so high

我是學日語的。但是是剛入門不久。

發音應該還沒什麼問題。我不認識的我也查字典了~~~

我標的應該不全是羅馬拼音的標准寫法。我們也沒教羅馬拼音。

但是我保證都是按著五十音來的。有的應該比羅馬拼音看著清楚。

反正我就是這么記的。呵呵。

關於「つ っ」

つ單獨讀的時候讀cu 應該是發 ci (次)這個音。就是看著寫著大一點的。

っ這個小一點的發音和大的是一樣的。但是用在句子中 就不發音 但是它也佔一個拍子的位子。

類似於空了一下。

我知道的這些都告訴你了。

謝謝你還特意把這個問題在開。么~

8. 求助關於CUDA環境配置的問題

jquery.qrcode
使用phpqrcode.php可以生成二維碼,當然PHP環境必須開啟支持GD2。
phpqrcode.php提供了一個關鍵的png()方法,其中
參數$text表示生成二位的的信息文本;
參數$outfile表示是否輸出二維碼圖片 文件,默認否;
參數$level表示容錯率,也就是有被覆蓋的區域還能識別,分別是 L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%);
參數$size表示生成圖片大小,默認是3;參數$margin表示二維碼周圍邊框空白區域間距值;
參數$saveandprint表示是否保存二維碼並顯示。更多問題到問題助專區。

9. 網路安全乾貨知識分享 - Kali Linux滲透測試 106 離線密碼破解

前言

最近整理了一些 奇安信&華為大佬 的課件資料+大廠面試課題,想要的可以私信自取, 無償贈送 給粉絲朋友~

1. 密碼破解簡介

1. 思路

目標系統實施了強安全措施

安裝了所有補丁

無任何已知漏洞

無應用層漏洞

攻擊面最小化

社會 工程學

獲取目標系統用戶身份

非授權用戶不受信,認證用戶可以訪問守信資源

已知用戶賬號許可權首先,需要提權

不會觸發系統報警

2. 身份認證方法

證明你是你聲稱你是的那個人

你知道什麼(賬號密碼、pin、passphrase)

你有什麼(令牌、token、key、證書、密寶、手機)

你是誰(指紋、視網膜、虹膜、掌紋、聲紋、面部識別)

以上方法結合使用

基於互聯網的身份驗證仍以賬號密碼為主要形式

3. 密碼破解方法

人工猜解

垃圾桶工具

被動信息收集

基於字典暴力破解(主流)

鍵盤空間字元爆破

字典

保存有用戶名和密碼的文本文件

/usr/share/wordlist

/usr/share/wfuzz/wordlist

/usr/share/seclists

4. 字典

1. 簡介

鍵盤空間字元爆破

全鍵盤空間字元

部分鍵盤空間字元(基於規則)

數字、小寫字母、大寫字元、符號、空格、瑞典字元、高位 ASCII 碼

2. crunch 創建密碼字典

無重復字元

crunch 1 1 -p 1234567890 | more

1

必須是最後一個參數

最大、最小字元長度失效,但必須存在

與 -s 參數不兼容(-s 指定起始字元串)

crunch 4 4 0123456789 -s 9990

讀取文件中每行內容作為基本字元生成字典

crunch 1 1 -q read.txt

1

字典組成規則

crunch 6 6 -t @,%%^^ | more

-t:按位進行生成密碼字典

@:小寫字母 lalpha

,:大寫字母 ualpha

%:數字 numeric

^:符號 symbols

輸出文件壓縮

root@kali:~# crunch 4 5 -p dog cat bird

1

-z:指定壓縮格式

其他壓縮格式:gzip、bzip2、lzma

7z壓縮比率最大

指定字元集

root@kali:~# crunch 4 4 -f /usr/share/crunch/charset.lst mixalpha-numeric-all-space -o w.txt -t @d@@ -s cdab

1

隨機組合

root@kali:~# crunch 4 5 -p dog cat bird

1

crunch 5 5 abc DEF + !@# -t ,@^%,

在小寫字元中使用abc范圍,大寫字元使用 DEF 范圍,數字使用佔位符,符號使用!@#

佔位符

轉義符(空格、符號)

佔位符

root@kali:~# crunch 5 5 -t ddd%% -p dog cat bird

1

任何不同於 -p 參數指定的值都是佔位符

指定特例

root@kali:~# crunch 5 5 -d 2@ -t @@@%%

1

2@:不超過兩個連續相同字元

組合應用

crunch 2 4 0123456789 | aircrack-ng a.cap -e MyESSID -w -

crunch 10 10 12345 –stdout | airolib-ng testdb -import passwd -

3. CUPP 按個人信息生成其專屬的密碼字典

CUPP:Common User Password Profiler

git clone https://github.com/Mebus/cupp.git

python cupp.py -i

4. cewl 通過收集網站信息生成字典

cewl 1.1.1.1 -m 3 -d 3 -e -c -v -w a.txt

-m:最小單詞長度

-d:爬網深度

-e:收集包含email地址信息

-c:每個單詞出現次數

支持基本、摘要 身份認證

支持代理

5. 用戶密碼變型

基於 cewl 的結果進行密碼變型

末尾增加數字串

字母大小寫變化

字母與符號互相轉換

字母與數字互相轉換

P@$w0rd

6. 使用 John the Ripper 配置文件實現密碼動態變型

2. 在線密碼破解

1. hydra

簡介

密碼破解

Windows 密碼破解

Linux 密碼破解

其他服務密碼破解

圖形化界面

xhydra

HTTP表單身份認證

密碼破解效率

密碼復雜度(字典命中率)

帶寬、協議、伺服器性能、客戶端性能

鎖定閾值

單位時間最大登陸請求次數

Hydra 的缺點

穩定性差,程序時常崩潰

速度控制不好,容易觸發服務屏蔽或鎖死機制

每主機新建進程,每服務新建實例

大量目標破解時性能差

2. pw-inspector

Hydra 小工具 pw-inspector

按長度和字元集篩選字典

pw-inspector -i /usr/share/wordlists/nmap.lst -o p1.lst -l

pw-inspector -i /usr/share/wordlists/nmap.lst -o P2.lst -u

pw-inspector -i /usr/share/wordlists/nmap.lst -o P2.lst -u -m 3 -M 5

3. mesa

Mesa 的特點

穩定性好

速度控製得當

基於線程

支持模塊少於hydra(不支持RDP)

WEB-Form 支持存在缺陷

查看支持的模塊

參數

-n:非默認埠

-s:使用SSL連接

-T:並發主機數

mesa -M ftp -q

3. 離線密碼破解

1. 簡介

身份認證

禁止明文傳輸密碼

每次認證使用HASH演算法加密密碼傳輸(HASH演算法加密容易、解密困難)

伺服器端用戶資料庫應加鹽加密保存

破解思路

嗅探獲取密碼HASH

利用漏洞登陸伺服器並從用戶資料庫獲取密碼HASH

識別HASH類型

長度、字元集

利用離線破解工具碰撞密碼HASH

優勢

離線不會觸發密碼鎖定機制

不會產生大量登陸失敗日誌引起管理員注意

2. HASH 識別工具

1. hash-identifier

進行 hash 計算

結果:

進行 hash 識別

2. hashid

可能識別錯誤或無法識別

3. HASH 密碼獲取

1. sammp2

Windows HASH 獲取工具

利用漏洞:Pwmp、fgmp、 mimikatz、wce

物理接觸:sammp2

將待攻擊主機關機

使用 Kali ISO 在線啟動此主機

發現此 windows 機器安裝有兩塊硬碟

mount /dev/sda1 /mnt

將硬碟掛載

cd /mnt/Windows/System32/config

切換目錄

sammp2 SYSTEM SAM -o sam.hash

導出密碼

利用 nc 傳輸 HASH

HASH 值:

2. syskey 工具進行密碼加密

使用 syskey 進行加密(會對 SAM 資料庫進行加密)

重啟需要輸入密碼才能進一步登錄

使用 kali iso live

獲取到 hash 值

hashcat 很難破解

使用 bkhive 破解

使用 Bootkey 利用RC4演算法加密 SAM 資料庫

Bootkey 保存於 SYSTEM 文件中

bkhive

從 SYSTEM 文件中提取 bootkey

Kali 2.0 拋棄了 bkhive

編譯安裝 :http://http.us.debian.org/debian/pool/main/b/bkhive/

在windows的 kali live 模式下,運行

sammp2 SAM key (版本已更新,不再支持此功能)

建議使用 Kali 1.x

1. Hashcat

簡介

開源多線程密碼破解工具

支持80多種加密演算法破解

基於CPU的計算能力破解

六種模式 (-a 0)

0 Straight:字典破解

1 Combination:將字典中密碼進行組合(1 2 > 11 22 12 21)

2 Toggle case:嘗試字典中所有密碼的大小寫字母組合

3 Brute force:指定字元集(或全部字元集)所有組合

4 Permutation:字典中密碼的全部字元置換組合(12 21)

5 Table-lookup:程序為字典中所有密碼自動生成掩碼

命令

hashcat -b

hashcat -m 100 hash.txt pass.lst

hashcat -m 0 hash.txt -a 3 ?l?l?l?l?l?l?l?l?d?d

結果:hashcat.pot

hashcat -m 100 -a 3 hash -i –increment-min 6 –increment-max 8 ?l?l?l?l?l?l?l?l

掩碼動態生成字典

使用

生成文件

計算 hash 類型

結果 MD5

查看 MD5 代表的值

進行破解

2. oclhashcat

簡介

號稱世界上最快、唯一的基於GPGPU的密碼破解軟體

免費開源、支持多平台、支持分布式、150+hash演算法

硬體支持

虛擬機中無法使用

支持 CUDA 技術的Nvidia顯卡

支持 OpenCL 技術的AMD顯卡

安裝相應的驅動

限制

最大密碼長度 55 字元

使用Unicode的最大密碼長度 27 字元

關於版本

oclHashcat-plus、oclHashcat-lite 已經合並為 oclhashcat

命令

3. RainbowCrack

簡介

基於時間記憶權衡技術生成彩虹表

提前計算密碼的HASH值,通過比對HASH值破解密碼

計算HASH的速度很慢,修改版支持CUDA GPU

https://www.freerainbowtables.com/en/download/

彩虹表

密碼明文、HASH值、HASH演算法、字元集、明文長度范圍

KALI 中包含的 RainbowCrack 工具

rtgen:預計算,生成彩虹表,時的階段

rtsort:對 rtgen 生成的彩虹錶行排序

rcrack:查找彩虹表破解密碼

以上命令必須順序使用

rtgen

LanMan、NTLM、MD2、MD4、MD5、SHA1、SHA256、RIPEMD160

rtgen md5 loweralpha 1 5 0 10000 10000 0

計算彩虹表時間可能很長

下載彩虹表

http://www.freerainbowtables.com/en/tables/

http://rainbowtables.shmoo.com/

彩虹表排序

/usr/share/rainbowcrack

rtsort /md5_loweralpha#1-5_0_1000x1000_0.rt

密碼破解

r crack *.rt -h

rcrack *.rt -l hash.txt

4. John

簡介

基於 CPU

支持眾多服務應用的加密破解

支持某些對稱加密演算法破解

模式

Wordlist:基於規則的字典破解

Single crack:默認被首先執行,使用Login/GECOS信息嘗試破解

Incremental:所有或指定字元集的暴力破解

External:需要在主配配文件中用C語言子集編程

默認破解模式

Single、wordlist、incremental

主配置文件中指定默認wordlist

破解Linux系統賬號密碼


破解windows密碼

Johnny 圖形化界面的john

5. ophcrack

簡介

基於彩虹表的LM、NTLM密碼破解軟體

彩虹表:http://ophcrack.sourceforge.net/tables.php

閱讀全文

與cudaphp相關的資料

熱點內容
查看dns地址命令 瀏覽:765
android錄屏工具 瀏覽:838
成都互動直播系統源碼 瀏覽:953
usb藍牙android 瀏覽:405
伺服器顯示error1什麼意思 瀏覽:708
python代碼精簡 瀏覽:457
文件加密了怎麼找到了 瀏覽:193
jellyfin插件怎麼選擇主伺服器 瀏覽:836
asp用戶注冊源碼 瀏覽:48
什麼是照片壓縮文件 瀏覽:392
java調用js代碼 瀏覽:979
崑山市民app怎麼修改身份信息 瀏覽:779
php登陸次數 瀏覽:744
python字元轉成數字 瀏覽:822
海川用的是什麼伺服器 瀏覽:376
口才是練出來的pdf 瀏覽:458
雲伺服器哪個公司性價比高 瀏覽:517
源碼論壇打包 瀏覽:558
php怎麼做成word 瀏覽:692
python批量生成密鑰 瀏覽:492