⑴ 在LINUX系統中如何設置強密碼(安全性高)
印象里 /etc/shadow 這里的密碼可以從 md5sum 方式替換為 sha256sum 。這樣可以提高安全度,防止 md5sum 被截取後被人碰撞出來一個可用的密碼。
之後就是強密碼的問題了,這個不是系統如何設置的問題,而是用戶如何設置。
至少 12 位元組,管理員許可權必須 16 位元組以上,最好是用大小寫混合+數字元號。最好隨機生成。
另外,還有就是其他方面的安全設置。
比如禁止遠程 telnet 訪問,只能用 ssh 訪問,之後 ssh 綁定證書而不是用密碼登錄,並且禁止 root 遠程登錄。
剩下的就是其他各種服務的安全設置了,比如 apache 設置禁止代碼訪問 web 目錄之外的數據,ftp 也進行許可權控制,資料庫限制訪問來源 IP 。
這都是細節的東西,強密碼根本不是提高安全的做法,因為他是計算機系統安全所必須的要求。
⑵ WPA2 PMK的密碼轉換,急!
沒錯,這個是64byte的pmk碼。
是從抓包工具中看出來的吧?
這個只對WPA協議有用,是WPA協議4步中收到第一個包後可以計算出來的值。
這個值是由 AP的MAC+無線網卡MAC+AP產生的隨即值+wifi產生的隨機值+登陸密碼,五個值通過SHA256和MD5演算法得到的。而這種演算法是不可逆的。
就算你能知道另外4個值,也是不能求出登陸密碼的。
因而,你從pmk碼中是無法知道登陸密碼的。
⑶ 什麼是SHA256
SHA-256是比特幣一些列數字貨幣使用的加密演算法。然而,它使用了大量的計算能力和處理時間,迫使礦工組建采礦池以獲取收益。
要挖掘比特幣可以下載專用的比特幣運算工具,然後注冊各種合作網站,把注冊來的用戶名和密碼填入計算程序中,再點擊運算就正式開始。完成Bitcoin客戶端安裝後,可以直接獲得一個Bitcoin地址,當別人付錢的時候,只需要自己把地址貼給別人,就能通過同樣的客戶端進行付款。
交易模式:
現階段數字貨幣更像一種投資產品,因為缺乏強有力的擔保機構維護其價格的穩定,其作為價值尺度的作用還未顯現,無法充當支付手段。數字貨幣作為投資產品,其發展離不開交易平台、運營公司和投資者。
交易平台起到交易代理的作用,部分則充當做市商,這些交易平台的盈利來源於投資者交易或提現時的手續費用和持有數字貨幣帶來的溢價收入。交易量較大的平台有 Bitstamp、Gathub、Ripple Singapore、SnapSwap 以及昔日比特幣交易最大平台日本Mt.Gox 和中國新秀瑞狐等。
以上內容參考:網路-比特幣
⑷ sha256加密演算法的證書怎麼解密
1.瀏覽器將自己支持的一套加密規則發送給網站。
2.網站從中選出一組加密演算法與HASH演算法,並將自己的身份信息以證書的形式發回給瀏覽器。證書裡麵包含了網站地址,加密公鑰,以及證書的頒發機構等信息。
3.瀏覽器獲得網站證書之後瀏覽器要做以下工作:
a) 驗證證書的合法性(頒發證書的機構是否合法,證書中包含的網站地址是否與正在訪問的地址一致等),如果證書受信任,則瀏覽器欄裡面會顯示一個小鎖頭,否則會給出證書不受信的提示。
b) 如果證書受信任,或者是用戶接受了不受信的證書,瀏覽器會生成一串隨機數的密碼,並用證書中提供的公鑰加密。
c) 使用約定好的HASH演算法計算握手消息,並使用生成的隨機數對消息進行加密,最後將之前生成的所有信息發送給網站。
4.網站接收瀏覽器發來的數據之後要做以下的操作:
a) 使用自己的私鑰將信息解密取出密碼,使用密碼解密瀏覽器發來的握手消息,並驗證HASH是否與瀏覽器發來的一致。
b) 使用密碼加密一段握手消息,發送給瀏覽器。
5.瀏覽器解密並計算握手消息的HASH,如果與服務端發來的HASH一致,此時握手過程結束,之後所有的通信數據將由之前瀏覽器生成的隨機密碼並利用對稱加密演算法進行加密。
⑸ 如何把轉化MD5的密碼轉換過來
介紹MD5加密演算法基本情況MD5的全稱是Message-Digest Algorithm 5,在90年代初由MIT的計算機科學實驗室和RSA Data Security Inc發明,經MD2、MD3和MD4發展而來。
Message-Digest泛指位元組串(Message)的Hash變換,就是把一個任意長度的位元組串變換成一定長的大整數。請注意我使用了"位元組串"而不是"字元串"這個詞,是因為這種變換只與位元組的值有關,與字元集或編碼方式無關。
MD5將任意長度的"位元組串"變換成一個128bit的大整數,並且它是一個不可逆的字元串變換演算法,換句話說就是,即使你看到源程序和演算法描述,也無法將一個MD5的值變換回原始的字元串,從數學原理上說,是因為原始的字元串有無窮多個,這有點象不存在反函數的數學函數。
MD5的典型應用是對一段Message(位元組串)產生fingerprint(指紋),以防止被"篡改"。舉個例子,你將一段話寫在一個叫readme.txt文件中,並對這個readme.txt產生一個MD5的值並記錄在案,然後你可以傳播這個文件給別人,別人如果修改了文件中的任何內容,你對這個文件重新計算MD5時就會發現。如果再有一個第三方的認證機構,用MD5還可以防止文件作者的"抵賴",這就是所謂的數字簽名應用。
MD5還廣泛用於加密和解密技術上,在很多操作系統中,用戶的密碼是以MD5值(或類似的其它演算法)的方式保存的,用戶Login的時候,系統是把用戶輸入的密碼計算成MD5值,然後再去和系統中保存的MD5值進行比較,而系統並不"知道"用戶的密碼是什麼。
一些黑客破獲這種密碼的方法是一種被稱為"跑字典"的方法。有兩種方法得到字典,一種是日常搜集的用做密碼的字元串表,另一種是用排列組合方法生成的,先用MD5程序計算出這些字典項的MD5值,然後再用目標的MD5值在這個字典中檢索。
即使假設密碼的最大長度為8,同時密碼只能是字母和數字,共26+26+10=62個字元,排列組合出的字典的項數則是P(62,1)+P(62,2)....+P(62,8),那也已經是一個很天文的數字了,存儲這個字典就需要TB級的磁碟組,而且這種方法還有一個前提,就是能獲得目標賬戶的密碼MD5值的情況下才可以。
在很多電子商務和社區應用中,管理用戶的Account是一種最常用的基本功能,盡管很多Application Server提供了這些基本組件,但很多應用開發者為了管理的更大的靈活性還是喜歡採用關系資料庫來管理用戶,懶惰的做法是用戶的密碼往往使用明文或簡單的變換後直接保存在資料庫中,因此這些用戶的密碼對軟體開發者或系統管理員來說可以說毫無保密可言,本文的目的是介紹MD5的Java Bean的實現,同時給出用MD5來處理用戶的Account密碼的例子,這種方法使得管理員和程序設計者都無法看到用戶的密碼,盡管他們可以初始化它們。但重要的一點是對於用戶密碼設置習慣的保護
⑹ MD5,sha1,sha256分別輸出多少位啊
MD5輸出128位、SHA1輸出160位、SHA256輸出256位。
1、MD5消息摘要演算法(英語:MD5 Message-Digest Algorithm),一種被廣泛使用的密碼散列函數,可以產生出一個128位(16位元組)的散列值(hash value),用於確保信息傳輸完整一致。
2、SHA1安全哈希演算法(Secure Hash Algorithm)主要適用於數字簽名標准 裡面定義的數字簽名演算法。對於長度小於2^64位的消息,SHA1會產生一個160位的消息摘要。
3、sha256哈希值用作表示大量數據的固定大小的唯一值。數據的少量更改會在哈希值中產生不可預知的大量更改。SHA256 演算法的哈希值大小為 256 位。
(6)如何把密碼轉化成sha256格式擴展閱讀:
MD5應用:
1、一致性驗證
MD5的典型應用是對一段信息產生信息摘要,以防止被篡改。具體來說文件的MD5值就像是這個文件的「數字指紋」。每個文件的MD5值是不同的,如果任何人對文件做了任何改動,其MD5值也就是對應的「數字指紋」就會發生變化。
比如下載伺服器針對一個文件預先提供一個MD5值,用戶下載完該文件後,用我這個演算法重新計算下載文件的MD5值,通過比較這兩個值是否相同,就能判斷下載的文件是否出錯,或者說下載的文件是否被篡改了。
2、數字簽名
MD5的典型應用是對一段Message(位元組串)產生fingerprint(指紋),以防止被「篡改」。
例子:將一段話寫在一個叫 readme.txt文件中,並對這個readme.txt產生一個MD5的值並記錄在案,然後可以傳播這個文件給,如果修改了文件中的任何內容,你對這個文件重新計算MD5時就會發現(兩個MD5值不相同)。
如果再有一個第三方的認證機構,用MD5還可以防止文件作者的「抵賴」,這就是所謂的數字簽名應用。
3、安全訪問認證
MD5還廣泛用於操作系統的登陸認證上,如Unix、各類BSD系統登錄密碼、數字簽名等諸多方面。如在Unix系統中用戶的密碼是以MD5(或其它類似的演算法)經Hash運算後存儲在文件系統中。
當用戶登錄的時候,系統把用戶輸入的密碼進行MD5 Hash運算,然後再去和保存在文件系統中的MD5值進行比較,進而確定輸入的密碼是否正確。
即使暴露源程序和演算法描述,也無法將一個MD5的值變換回原始的字元串,從數學原理上說,是因為原始的字元串有無窮多個,這有點象不存在反函數的數學函數。
⑺ 什麼是安全散列演算法SHA256
安全散列演算法SHA(Secure Hash Algorithm)是美國國家安全局 (NSA) 設計,美國國家標准與技術研究院(NIST) 發布的一系列密碼散列函數,包括 SHA-1、SHA-224、SHA-256、SHA-384 和 SHA-512 等變體。主要適用於數字簽名標准(DigitalSignature Standard DSS)裡面定義的數字簽名演算法(Digital Signature Algorithm DSA)。下面以 SHA-1為例,介紹該演算法計算消息摘要的原理。
對於長度小於2^64位的消息,SHA1會產生一個160位的消息摘要。當接收到消息的時候,這個消息摘要可以用來驗證數據的完整性。在傳輸的過程中,數據很可能會發生變化,那麼這時候就會產生不同的消息摘要。
SHA1有如下特性:不可以從消息摘要中復原信息;兩個不同的消息不會產生同樣的消息摘要。
一、術語和概念
(一)位(Bit),位元組(Byte)和字(Word)
SHA1始終把消息當成一個位(bit)字元串來處理。本文中,一個「字」(Word)是32位,而一個「位元組」(Byte)是8位。比如,字元串「abc」可以被轉換成一個位字元串:01100001 01100010 01100011。它也可以被表示成16進制字元串:0x616263.
(二)運算符和符號
下面的邏輯運算符都被運用於「字」(Word)
X^Y = X,Y邏輯與
X \/ Y = X,Y邏輯或
X XOR Y= X,Y邏輯異或
~X = X邏輯取反
X+Y定義如下:
字 X 和Y 代表兩個整數 x 和y, 其中0 <= x < 2^32 且 0 <= y < 2^32. 令整數z= (x + y) mod 2^32. 這時候 0 <= z < 2^32. 將z轉換成字Z,那麼就是 Z = X + Y.
循環左移位操作符Sn(X)。X是一個字,n是一個整數,0<=n<=32。Sn(X)= (X<>32-n)
X<定義如下:拋棄最左邊的n位數字,將各個位依次向左移動n位,然後用0填補右邊的n位(最後結果還是32位)。X>>n是拋棄右邊的n位,將各個位依次向右移動n位,然後在左邊的n位填0。因此可以叫Sn(X)位循環移位運算
二、SHA1演算法描述
在SHA1演算法中,我們必須把原始消息(字元串,文件等)轉換成位字元串。SHA1演算法只接受位作為輸入。假設我們對字元串「abc」產生消息摘要。首先,我們將它轉換成位字元串如下:
01100001 0110001001100011
―――――――――――――
『a』=97 『b』=98『c』=99
這個位字元串的長度為24。下面我們需要5個步驟來計算MD5。
(一)補位
消息必須進行補位,以使其長度在對512取模以後的余數是448。也就是說,(補位後的消息長度)%512 = 448。即使長度已經滿足對512取模後余數是448,補位也必須要進行。
補位是這樣進行的:先補一個1,然後再補0,直到長度滿足對512取模後余數是448。總而言之,補位是至少補一位,最多補512位。還是以前面的「abc」為例顯示補位的過程。
原始信息:01100001 01100010 01100011
補位第一步:0110000101100010 01100011 1
首先補一個「1」
補位第二步:0110000101100010 01100011 10…..0
然後補423個「0」
我們可以把最後補位完成後的數據用16進制寫成下面的樣子
61626380 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 00000000
現在,數據的長度是448了,我們可以進行下一步操作。
(二)補長度
所謂的補長度是將原始數據的長度補到已經進行了補位操作的消息後面。通常用一個64位的數據來表示原始消息的長度。如果消息長度不大於2^64,那麼第一個字就是0。在進行了補長度的操作以後,整個消息就變成下面這樣了(16進制格式)
61626380 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 0000000000000000 00000000
00000000 0000000000000000 00000018
如果原始的消息長度超過了512,我們需要將它補成512的倍數。然後我們把整個消息分成一個一個512位的數據塊,分別處理每一個數據塊,從而得到消息摘要。
(三)使用的常量
一系列的常量字K(0),K(1), ... , K(79),如果以16進制給出。它們如下:
Kt = 0x5A827999 (0<= t <= 19)
Kt = 0x6ED9EBA1 (20<= t <= 39)
Kt = 0x8F1BBCDC (40<= t <= 59)
Kt = 0xCA62C1D6 (60<= t <= 79).
(四)需要使用的函數
在SHA1中我們需要一系列的函數。每個函數ft (0 <= t <= 79)都操作32位字B,C,D並且產生32位字作為輸出。ft(B,C,D)可以如下定義
ft(B,C,D) = (B ANDC) or ((NOT B) AND D) ( 0 <= t <= 19)
ft(B,C,D) = B XOR CXOR D (20 <= t <= 39)
ft(B,C,D) = (B ANDC) or (B AND D) or (C AND D) (40 <= t <= 59)
ft(B,C,D) = B XOR CXOR D (60 <= t <= 79).
(五)計算消息摘要
必須使用進行了補位和補長度後的消息來計算消息摘要。計算需要兩個緩沖區,每個都由5個32位的字組成,還需要一個80個32位字的緩沖區。第一個5個字的緩沖區被標識為A,B,C,D,E。第二個5個字的緩沖區被標識為H0,H1, H2, H3, H4。80個字的緩沖區被標識為W0,W1,..., W79
另外還需要一個一個字的TEMP緩沖區。
為了產生消息摘要,在第4部分中定義的16個字的數據塊M1,M2,..., Mn
會依次進行處理,處理每個數據塊Mi 包含80個步驟。
在處理每個數據塊之前,緩沖區{Hi} 被初始化為下面的值(16進制)
H0 = 0x67452301
H1 = 0xEFCDAB89
H2 = 0x98BADCFE
H3 = 0x10325476
H4 = 0xC3D2E1F0.
現在開始處理M1, M2,... , Mn。為了處理 Mi,需要進行下面的步驟
(1). 將Mi 分成 16 個字 W0, W1, ... , W15,W0 是最左邊的字
(2). 對於t = 16 到 79 令 Wt = S1(Wt-3 XOR Wt-8XOR Wt- 14 XOR Wt-16).
(3). 令A = H0, B = H1, C = H2, D = H3, E = H4.
(4) 對於t = 0 到 79,執行下面的循環
TEMP = S5(A) +ft(B,C,D) + E + Wt + Kt;
E = D; D = C; C =S30(B); B = A; A = TEMP;
(5). 令H0 = H0 + A, H1 = H1 + B, H2 = H2 + C, H3 = H3 + D, H4 = H4 + E.
在處理完所有的 Mn, 後,消息摘要是一個160位的字元串,以下面的順序標識
H0 H1 H2 H3 H4.
對於SHA256、SHA384、SHA512。你也可以用相似的辦法來計算消息摘要。對消息進行補位的演算法完全是一樣的。
三、SHA演算法被破解了嗎?
2013年9月10日美國約翰霍普金斯大學的計算機科學教授,知名的加密演算法專家,Matthew Green被NSA要求刪除他的一份關於破解加密演算法的與NSA有關的博客。 同時約翰霍普金斯大學伺服器上的該博客鏡像也被要求刪除。
加密演算法專家,美國約翰霍普金斯大學教授Matthew Green
但當記者向該大學求證時,該校稱從未收到來自NSA的要求要刪除博客或鏡像的資料,但記者卻無法在原網址再找到該博客。幸運的是,從谷歌的緩存可以找到該博客。該博客提到NSA每年花費2.5億美元來為自己在解密信息方面獲取優勢,並列舉了NSA的一系列見不得人的做法。
在BitcoinTalk上,已經掀起了一輪爭論:到底SHA-2是否安全?
部分認為不安全的觀點包括:
NSA製造了sha-2, 我們不相信NSA,他們不可能不留後門。
棱鏡事件已經明白的告訴我們,政府會用一切可能的手段來監視與解密。
雖然有很多人會研究SHA-2,且目前沒有公開的證據表明有漏洞。但沒有公開這並不能代表就沒有,因為發現漏洞的人一定更傾向於保留這個秘密來自己利用,而不是公布。
部分認為安全的觀點包括:
SHA-2是應用廣泛的演算法,應該已經經歷了實踐的檢驗。
美國的對頭中國和俄國都有很多傑出的數學家,如果有問題的話,他們肯定已經發現了。
如果真的不安全,世界上安全的東西就太少了,我不能生活在提心吊膽里,所以我選擇相信安全。
⑻ 密碼加密的方法有那些
用戶密碼加密方式
用戶密碼保存到資料庫時,常見的加密方式有哪些?以下幾種方式是常見的密碼保存方式:
1. 明文保存
比如用戶設置的密碼是「123456」,直接將「123456」保存在資料庫中,這種是最簡單的保存方式,也是最不安全的方式。但實際上不少互聯網公司,都可能採取的是這種方式。
2. 對稱加密演算法來保存
比如3DES、AES等演算法,使用這種方式加密是可以通過解密來還原出原始密碼的,當然前提條件是需要獲取到密鑰。不過既然大量的用戶信息已經泄露了,密鑰很可能也會泄露,當然可以將一般數據和密鑰分開存儲、分開管理,但要完全保護好密鑰也是一件非常復雜的事情,所以這種方式並不是很好的方式。
總結
採用PBKDF2、bcrypt、scrypt等演算法可以有效抵禦彩虹表攻擊,即使數據泄露,最關鍵的「用戶密碼」仍然可以得到有效的保護,黑客無法大批量破解用戶密碼,從而切斷撞庫掃號的根源。
【加密軟體編輯推薦】
易控網盾加密軟體--重要文件防泄密專家!輕松實現單位內部文件自動加密保護,加密後的文件在單位內部正常流轉使用。未經許可,任何私自拷貝加密文件外發出去,都將打開為亂碼,無法使用!對於發送給客戶等第三方的文件,可實現控制打開時間和打開次數等防泄密參數!同時可設置對員工電腦文件自動備份,防止惡意刪除造成核心數據的遺失!從源頭防止企業核心文件被外泄!
相關頁面:加密軟體,文件加密,文檔加密,圖紙加密軟體,防泄密軟體,CAD加密軟體,文件外發加密
⑼ java怎麼實現對密碼用SHA-256加密
import java.security.MessageDigest;
public class Test{
public static void main(String[] args) {
String t= "abcd";
try {
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update(t.getBytes("GBK"));
for(byte b:md.digest())
System.out.format("%02X",b);
} catch (Exception e) {
e.printStackTrace();
}
}
}
=========
PHP驗證
<?php
echo hash('sha256', 'abcd');
驗證無誤
⑽ 如何將十六進制密碼轉換成普通密碼
將十六進制密碼轉換成普通密碼的步驟:
雖然直接輸入也能上網,但我想看看明文密碼。