成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Unix函數庫中CrackLib原理及應用

系統 其他OS
我們在文章中,會講解下Unix函數庫中CrackLib原理及應用。CrackLib 字典可直接從網上下載,也可以用它提供的工具生成。

在Unix系統中,我們要學習的東西有很多。今天,我們就來學習下Unix函數庫中CrackLib原理及應用。CrackLib是一個用于Unix函數庫, 它可以用于編寫和口令有關的程序。其基本思想就是通過限制用戶使用使用過于簡單、容易被猜測出來或容易被一些工具搜索到的密碼,來提高系統的安全性。

CrackLib并不是一個可以直接運行使用的程序, 它只是一個Unix函數庫, 可以利用其中的函數寫自己的程序或是加入其它程序中以提高安全性,如可以改寫passwd 使用戶在選擇密碼時受到限制。

CrackLib使用一個字典, 它查找字典以判斷用戶所選密碼是不是安全的密碼。用戶也可以加入其它信息, 使用自己的字典。CrackLib通過建立索引和二元查找,效率非常高,其字典大小通常只有同等字典數的一半。下面介紹如何運用CrackLib。

1、Unix函數庫構建cracklib字典

CrackLib可以很容易的在Internet上找到, 現在使用的版本多是2.7, 首先要確定字典安裝的路徑,即給DICTPATH賦值,形式為:目錄+字典文件名(不包括后綴),如:DICTPATH=/usr/local/lib/pw_dict.。該變量值將在所有調用CrackLib函數的程序中用到,字典文件通常包括 /usr/local/lib/pw_dict.pwd,/usr/local/lib/pw_dict.pwi,/usr/local/lib/pw_dict.hwm三個文件。

CrackLib 字典可直接從網上下載,也可以用它提供的工具生成。如果想加入其它信息, 使用自己的字典,可將含有新詞的文件放到SOURCEDICT目錄如"/usr/dict/words"下,CrackLib會將所有文件合并起來,刪除多余的詞,將其壓縮成字典文件,通常只有原文件40%-60%的大小。

2、Unix函數庫在程序中調用函數

CrackLib函數可以被應用于很多地方, 只需加入簡單的幾行源碼, 就可以得到非常好的效果。 char *FascistCheck(char *pw, char *dictpath) 是CrackLib中最常用的函數。其中 pw是用戶選擇的密碼, 將被驗證是不是安全的,dictpath是字典所在路徑。

FascistCheck() 返回一個空指針,說明口令很安全,否則返回診斷出的字符串。下面是一個口令設置的簡單示例, 用以說明CrackLib函數用法. 
 

  1. #ifndef CRACKLIB_DICTPATH     
  2. #define CRACKLIB_DICTPATH "/usr/local/lib/pw_dict"    
  3. #endif     
  4. ...    
  5. ...    
  6. ...     
  7. char *msg;     
  8. while(1) {    
  9. passbuf = getpass("請設定新密碼:");    
  10. if (!*passbuf) {    
  11. (void)printf("密碼設定取消, 繼續使用舊密碼\n");    
  12. break;    
  13. }      
  14. if (strlen(pussbuf) <= 4 ││ !strcmp( passbuf, newuser.userid ) ) {    
  15. (void)printf("密碼太短或與使用者代號相同, 請重新輸入\n ");    
  16. continue;    
  17. }    
  18. if (msg = (char*) FascistCheck(passbuf, CRACKLIBPATH)) {    
  19. printf("請另選密碼! (%s)\n",msg);    
  20. continue;    
  21. }    
  22. strncpy( newuser.passwd, passbuf, PASSLEN );    
  23. passbuf = getpass("請再輸入一次你的密碼 );    
  24. if( strncmp( passbuf, newuser.passwd, PASSLEN ) != 0 ) {    
  25. prints("密碼輸入錯誤, 請重新輸入密碼.\n") ;    
  26. continue;    
  27. }    
  28. passbuf[8] = '\0' ;    
  29. break;    

這樣通過限制用戶使用不安全的密碼, 可以極大地提高系統的安全性。Unix函數庫中的CrackLib原理及應用我們就講解到這里了。

【編輯推薦】

  1. 8.1.3 UNIX口令散列
  2. Unix文件系統高級管理
  3. Unix文件系統備份概述
  4. Unix系統如何防止感染DOS系統病毒
  5. 鑒別Unix系統是否被入侵技巧
責任編輯:小霞
相關推薦

2009-09-17 13:15:12

NIS函數庫

2011-08-23 15:02:59

LuaTable

2011-08-23 14:26:07

Lua字符串

2009-12-08 19:34:26

PHP拼寫檢查函數庫

2011-08-23 16:14:27

Lua函數庫函數

2020-11-16 12:40:55

Java開發機器學習

2009-09-16 10:43:22

PHP正則表達式函數

2024-05-09 08:25:38

AndroidServiceLooper

2014-01-07 14:53:37

Android開發依賴注入Roboguice

2010-06-13 10:18:08

MySQL 數據庫函數

2009-11-16 15:07:23

PHP數組函數庫

2021-07-10 07:41:20

Python中文函數庫Python基礎

2020-02-12 16:58:15

JavaScript前端技術

2016-02-17 16:04:42

2010-10-09 16:40:52

2010-05-11 13:16:21

Unix awk

2013-06-27 14:14:06

安卓開發經驗安卓資源安卓UI

2009-05-18 10:23:43

文件上傳PHPFILE函數

2017-03-16 14:37:05

LinuxShell函數

2024-09-06 11:52:47

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲婷婷一区 | 久草成人 | www.精品国产 | 久久精品小视频 | 久久av资源网 | 日本中文字幕在线视频 | 99久久婷婷国产综合精品电影 | 天天色影视综合 | 在线视频国产一区 | 精品久久久久久久久久久久久久 | 久久精品日产第一区二区三区 | 91视视频在线观看入口直接观看 | 韩日精品在线观看 | 久久精品国产亚洲a | 成人精品一区二区三区中文字幕 | 亚洲欧洲在线视频 | 国产精品一区在线观看 | 91成人| 亚洲 欧美 日韩在线 | 狠狠狠干 | 日韩视频在线免费观看 | 精产国产伦理一二三区 | 午夜视频在线观看网站 | 一级黄色片一级黄色片 | 在线看av网址 | 久久一区二区精品 | 国产91久久精品一区二区 | 夜夜夜夜草 | 99久久精品国产麻豆演员表 | 色综合天天综合网国产成人网 | 日本亚洲一区 | 久久国产一区二区三区 | 97av在线| 日本精品一区二区 | 久久综合激情 | 精品一区二区电影 | 一区二区三区视频在线观看 | 国产综合网址 | 色综合色综合网色综合 | 国产精品欧美一区二区三区不卡 | 亚洲国产aⅴ成人精品无吗 亚洲精品久久久一区二区三区 |