密碼學
研究編製密碼和破譯密碼的技術科學
密碼學是研究編製密碼和破譯密碼的技術科學。研究密碼變化的客觀規律,應用於編製密碼以保守通信秘密的,稱為編碼學;應用於破譯密碼以獲取通信情報的,稱為破譯學,總稱密碼學。
電報最早是由美國的摩爾斯在1844年發明的,故也被叫做摩爾斯電碼。它由兩種基本信號和不同的間隔時間組成:短促的點信號" .",讀" 的 "(Di);保持一定時間的長信號"—",讀"答 "(Da)。間隔時間:滴,1t;答,3t;滴答間,1t;字母間,3t;字間,5t。
密碼學(在西歐語文中,源於希臘語kryptós“隱藏的”,和gráphein“書寫”)是研究如何隱密地傳遞信息的學科。在現代特別指對信息以及其傳輸的數學性研究,常被認為是數學和計算機科學的分支,和資訊理論也密切相關。著名的密碼學者Ron Rivest解釋道:“密碼學是關於如何在敵人存在的環境中通訊”,自工程學的角度,這相當於密碼學與純數學的異同。密碼學是信息安全等相關議題,如認證、訪問控制的核心。密碼學的首要目的是隱藏信息的涵義,並不是隱藏信息的存在。密碼學也促進了計算機科學,特別是在於電腦與網路安全所使用的技術,如訪問控制與信息的機密性。密碼學已被應用在日常生活:包括自動櫃員機的晶元卡、電腦使用者存取密碼、電子商務等等。
密碼是通信雙方按約定的法則進行信息特殊變換的一種重要保密手段。依照這些法則,變明文為密文,稱為加密變換;變密文為明文,稱為脫密變換。密碼在早期僅對文字或數碼進行加、脫密變換,隨著通信技術的發展,對語音、圖像、數據等都可實施加、脫密變換。
密碼學
密碼是通信雙方按約定的法則進行信息特殊變換的一種重要保密手段。依照這些法則,變明文為密文,稱為加密變換;變密文為明文,稱為脫密變換。密碼在早期僅對文字或數碼進行加、脫密變換,隨著通信技術的發展,對語音、圖像、數據等都可實施加、脫密變換。
密碼學是在編碼與破譯的鬥爭實踐中逐步發展起來的,並隨著先進科學技術的應用,已成為一門綜合性的尖端技術科學。它與語言學、數學、電子學、聲學、資訊理論、計算機科學等有著廣泛而密切的聯繫。它的現實研究成果,特別是各國政府現用的密碼編製及破譯手段都具有高度的機密性。
密碼學
20世紀70年代以來,一些學者提出了公開密鑰體制,即運用單向函數的數學原理,以實現加、脫密密鑰的分離。加密密鑰是公開的,脫密密鑰是保密的。這種新的密碼體制,引起了密碼學界的廣泛注意和探討。
利用文字和密碼的規律,在一定條件下,採取各種技術手段,通過對截取密文的分析,以求得明文,還原密碼編製,即破譯密碼。破譯不同強度的密碼,對條件的要求也不相同,甚至很不相同。
其實在公元前,秘密書信已用於戰爭之中。西洋“史學之父”希羅多德(Herodotus)的《歷史》(The Histories)當中記載了一些最早的秘密書信故事。公元前5世紀,希臘城邦為對抗奴役和侵略,與波斯發生多次衝突和戰爭。於公元前480年,波斯秘密結了強大的軍隊,準備對雅典(Athens)和斯巴達(Sparta)發動一次突襲。希臘人狄馬拉圖斯(Demaratus)在波斯的蘇薩城(Susa)里看到了這次集結,便利用了一層蠟把木板上的字遮蓋住,送往並告知了希臘人波斯的圖謀。最後,波斯海軍覆沒於雅典附近的沙拉米斯灣(Salamis Bay)。
由於古時多數人並不識字,最早的秘密書寫的形式只用到紙筆或等同物品,隨著識字率提高,就開始需要真正的密碼學了。最古典的兩個加密技巧是:
置換(Transposition cipher):將字母順序重新排列,例如‘help me’變成‘ehpl em’。
替代(substitution cipher):有系統地將一組字母換成其他字母或符號,例如‘fly at once’變成‘gmz bu podf’(每個字母用下一個字母取代)。
在通信過程中,待加密的信息稱為明文,已被加密的信息稱為密文,僅有收、發雙方知道的信息稱為密鑰。在密鑰控制下,由明文變到密文的過程叫加密,其逆過程叫脫密或解密。在密碼系統中,除合法用戶外,還有非法的截收者,他們試圖通過各種辦法竊取機密(又稱為被動攻擊)或竄改消息(又稱為主動攻擊)。
圖3 密碼系統模型
對於給定的明文m和密鑰k,加密變換E將明文變為密文c=f(m,k)=E(m),在接收端,利用脫密密鑰k,(有時k=k,)完成脫密操作,將密文c恢復成原來的明文m=D(c)。一個安全的密碼體制應該滿足:①非法截收者很難從密文C中推斷出明文m;②加密和脫密演演算法應該相當簡便,而且適用於所有密鑰空間;③密碼的保密強度只依賴於密鑰;④合法接收者能夠檢驗和證實消息的完整性和真實性;⑤消息的發送者無法否認其所發出的消息,同時也不能偽造別人的合法消息;⑥必要時可由仲裁機構進行公斷。
現代密碼學所涉及的學科包括:資訊理論、概率論、數論、計算複雜性理論、近世代數、離散數學、代數幾何學和數字邏輯等。
密鑰:分為加密密鑰和解密密鑰。
明文:沒有進行加密,能夠直接代表原文含義的信息。
密文:經過加密處理處理之後,隱藏原文含義的信息。
加密:將明文轉換成密文的實施過程。
解密:將密文轉換成明文的實施過程。
密碼演演算法:密碼系統採用的加密方法和解密方法,隨著基於數學密碼技術的發展,加密方法一般稱為加密演演算法,解密方法一般稱為解密演演算法。
直到現代以前,密碼學幾乎專指加密(encryption)演演算法:將普通信息(明文,plaintext)轉換成難以理解的資料(密文,ciphertext)的過程;解密(decryption)演演算法則是其相反的過程:由密文轉換回明文;加解密包含了這兩種演演算法,一般加密即同時指稱加密(encrypt或encipher)與解密(decrypt或decipher)的技術。
加解密的具體運作由兩部分決定:一個是演演算法,另一個是密鑰。密鑰是一個用於加解密演演算法的秘密參數,通常只有通訊者擁有。歷史上,密鑰通常未經認證或完整性測試而被直接使用在密碼機上。
密碼協議(cryptographic protocol)是使用密碼技術的通信協議(communication protocol)。近代密碼學者多認為除了傳統上的加解密演演算法,密碼協議也一樣重要,兩者為密碼學研究的兩大課題。在英文中,cryptography和cryptology都可代表密碼學,前者又稱密碼術。但更嚴謹地說,前者(cryptography)指密碼技術的使用,而後者(cryptology)指研究密碼的學科,包含密碼術與密碼分析。密碼分析(cryptanalysis)是研究如何破解密碼學的學科。但在實際使用中,通常都稱密碼學(英文通常稱cryptography),而不具體區分其含義。
口語上,編碼(code)常意指加密或隱藏信息的各種方法。然而,在密碼學中,編碼有更特定的意義:它意指以碼字(code word)取代特定的明文。例如,以‘蘋果派’(apple pie)替換‘拂曉攻擊’(attack at dawn)。編碼已經不再被使用在嚴謹的密碼學,它在資訊理論或通訊原理上有更明確的意義。
在漢語口語中,電腦系統或網路使用的個人帳戶口令(password)也常被以密碼代稱,雖然口令亦屬密碼學研究的範圍,但學術上口令與密碼學中所稱的鑰匙(key)並不相同,即使兩者間常有密切的關連。
其實在公元前,秘密書信已用於戰爭之中。西洋“史學之父”希羅多德(Herodotus)的《歷史》(The Histories)當中記載了一些最早的秘密書信故事。公元前5世紀,希臘城邦為對抗奴役和侵略,與波斯發生多次衝突和戰爭。於公元前480年,波斯秘密結了強大的軍隊,準備對雅典(Athens)和斯巴達(Sparta)發動一次突襲。希臘人狄馬拉圖斯(Demaratus)在波斯的蘇薩城(Susa)里看到了這次集結,便利用了一層蠟把木板上的字遮蓋住,送往並告知了希臘人波斯的圖謀。最後,波斯海軍覆沒於雅典附近的沙拉米斯灣(Salamis Bay)。
由於古時多數人並不識字,最早的秘密書寫的形式只用到紙筆或等同物品,隨著識字率提高,就開始需要真正的密碼學了。最古典的兩個加密技巧是:
置換(Transposition cipher):將字母順序重新排列,例如‘help me’變成‘ehpl em’。
替代(substitution cipher):有系統地將一組字母換成其他字母或符號,例如‘fly at once’變成‘gmz bu podf’(每個字母用下一個字母取代)。
移位式(Transposition cipher):將字母順序重新排列,例如‘help me’變成‘ehpl em’;與替代式(substitution cipher):有系統地將一組字母換成其他字母或符號,例如‘fly at once’變成‘gmz bu podf’(每個字母用下一個字母取代)。這兩種單純的方式都不足以提供足夠的機密性。凱撒密碼是最經典的替代法,據傳由古羅馬帝國的皇帝凱撒所發明,用在與遠方將領的通訊上,每個字母被往後位移三格字母所取代。
加密旨在確保通訊的秘密性,例如間諜、軍事將領、外交人員間的通訊,同時也有宗教上的應用。舉例來說,早期基督徒使用密碼學模糊他們寫作的部份觀點以避免遭受迫害。666或部分更早期的手稿上的616是新約基督經啟示錄所指的野獸的數字,常用來暗指專迫害基督徒的古羅馬皇帝尼祿(Nero)。史上也有部份希伯來文密碼的記載。古印度欲經中也提及愛侶可利用密碼來通信。隱寫術也出現在古代,希羅多德記載將信息刺青在奴隸的頭皮上,較近代的隱寫術使用隱形墨水、縮影術(microdots)或數字水印來隱藏信息。
密碼學
在歐洲,公元前405年,斯巴達的將領來山得使用了原始的錯亂密碼;公元前一世紀,古羅馬皇帝凱撒曾使用有序的單表代替密碼;之後逐步發展為密本、多表代替及加亂等各種密碼體制。
二十世紀初,產生了最初的可以實用的機械式和電動式密碼機,同時出現了商業密碼機公司和市場。60年代后,電子密碼機得到較快的發展和廣泛的應用,使密碼的發展進入了一個新的階段。
密碼破譯是隨著密碼的使用而逐步產生和發展的。1412年,波斯人卡勒卡尚迪所編的百科全書中載有破譯簡單代替密碼的方法。到16世紀末期,歐洲一些國家設有專職的破譯人員,以破譯截獲的密信。密碼破譯技術有了相當的發展。1863年普魯士人卡西斯基所著《密碼和破譯技術》,以及1883年法國人克爾克霍夫所著《軍事密碼學》等著作,都對密碼學的理論和方法做過一些論述和探討。1949年美國人香農發表了《秘密體制的通信理論》一文,應用資訊理論的原理分析了密碼學中的一些基本問題。
自19世紀以來,由於電報特別是無線電報的廣泛使用,為密碼通信和第三者的截收都提供了極為有利的條件。通信保密和偵收破譯形成了一條鬥爭十分激烈的隱蔽戰線。
1917年,英國破譯了德國外長齊默爾曼的電報,促成了美國對德宣戰。1942年,美國從破譯日本海軍密報中,獲悉日軍對中途島地區的作戰意圖和兵力部署,從而能以劣勢兵力擊破日本海軍的主力,扭轉了太平洋地區的戰局。在保衛英倫三島和其他許多著名的歷史事件中,密碼破譯的成功都起到了極其重要的作用,這些事例也從反面說明了密碼保密的重要地位和意義。
當今世界各主要國家的政府都十分重視密碼工作,有的設立龐大機構,撥出巨額經費,集中數以萬計的專家和科技人員,投入大量高速的電子計算機和其他先進設備進行工作。與此同時,各民間企業和學術界也對密碼日益重視,不少數學家、計算機學家和其他有關學科的專家也投身於密碼學的研究行列,更加速了密碼學的發展。
密碼學
密碼學是一門跨學科科目,從很多領域衍生而來:它可以被看做是信息理論,卻使用了大量的數學領域的工具,眾所周知的如數論和有限數學。
原始的信息,也就是需要被密碼保護的信息,被稱為明文。加密是把原始信息轉換成不可讀形式,也就是密碼的過程。解密是加密的逆過程,從加密過的信息中得到原始信息。cipher是加密和解密時使用的演演算法。
最早的隱寫術只需紙筆,加密法,將字母的順序重新排列;替換加密法,將一組字母換成其他字母或符號。經典加密法的資訊易受統計的攻破,資料越多,破解就更容易,使用分析頻率就是好辦法。經典密碼學仍未消失,經常出現在智力遊戲之中。在二十世紀早期,包括轉輪機在內的一些機械設備被發明出來用於加密,其中最著名的是用於第二次世界大戰的密碼機Enigma。這些機器產生的密碼相當大地增加了密碼分析的難度。比如針對Enigma各種各樣的攻擊,在付出了相當大的努力后才得以成功。
數據加密的基本思想是通過變換信息的表示形式來偽裝需要保護的敏感信息,使非授權者不能了解被保護信息的內容。網路安全使用密碼學來輔助完成在傳遞敏感信息的的相關問題,主要包括:
(I)機密性(confidentiality)
僅有發送方和指定的接收方能夠理解傳輸的報文內容。竊聽者可以截取到加密了的報文,但不能還原出原來的信息,即不能得到報文內容。
(II)鑒別(authentication)
發送方和接收方都應該能證實通信過程所涉及的另一方,通信的另一方確實具有他們所聲稱的身份。即第三者不能冒充跟你通信的對方,能對對方的身份進行鑒別。
(III)報文完整性(message intergrity)
即使發送方和接收方可以互相鑒別對方,但他們還需要確保其通信的內容在傳輸過程中未被改變。
(IV)不可否認性(non-repudiation)
如果人們收到通信對方的報文後,還要證實報文確實來自所宣稱的發送方,發送方也不能在發送報文以後否認自己發送過報文。
Autokey密碼
置換密碼
二字母組代替密碼 (by Charles Wheatstone)
多字母替換密碼
希爾密碼
維吉尼亞密碼
替換式密碼
凱撒密碼
摩爾斯電碼
ROT13
仿射密碼
Atbash密碼
換位密碼
Scytale
Grille密碼
VIC密碼(一種複雜的手工密碼,在五十年代早期被至少一名蘇聯間諜使用過,在當時是十分安全的)
流密碼
LFSR流密碼
EIGamal密碼
RSA密碼
對傳統密碼學的攻擊
頻率分析
重合指數
經典密碼學
在近代以前,密碼學只考慮到信息的機密性(confidentiality):如何將可理解的信息轉換成難以理解的信息,並且使得有秘密信息的人能夠逆向回復,但缺乏秘密信息的攔截者或竊聽者則無法解讀。近數十年來,這個領域已經擴展到涵蓋身分認證(或稱鑒權)、信息完整性檢查、數字簽名、互動證明、安全多方計算等各類技術。
古中國周朝兵書《六韜.龍韜》也記載了密碼學的運用,其中的《陰符》和《陰書》便記載了周武王問姜子牙關於征戰時與主將通訊的方式:
太公曰:“主與將,有陰符,凡八等。有大勝克敵之符,長一尺。破軍擒將之符,長九寸。降城得邑之符,長八寸。卻敵報遠之符,長七寸。警眾堅守之符,長六寸。請糧益兵之符,長五寸。敗軍亡將之符,長四寸。失利亡士之符,長三寸。諸奉使行符,稽留,若符事聞,泄告者,皆誅之。八符者,主將秘聞,所以陰通言語,不泄中外相知之術。敵雖聖智,莫之能識。” 武王問太公曰:“… 符不能明;相去遼遠,言語不通。為之奈何?” 太公曰:“諸有陰事大慮,當用書,不用符。主以書遺將,將以書問主。書皆一合而再離,三發而一知。再離者,分書為三部。三發而一知者,言三人,人操一分,相參而不相知情也。此謂陰書。敵雖聖智,莫之能識。” |
陰符是以八等長度的符來表達不同的消息和指令,可算是密碼學中的替代法(en:substitution),把信息轉變成敵人看不懂的符號。至於陰書則運用了移位法,把書一分為三,分三人傳遞,要把三份書重新拼合才能獲得還原的信息。
除了應用于軍事外,公元四世紀婆羅門學者伐蹉衍那(en:Vatsyayana)所書的《欲經》4 中曾提及到用代替法加密信息。書中第45項是秘密書信(en:mlecchita-vikalpa) ,用以幫助婦女隱瞞她們與愛郞之間的關係。其中一種方法是把字母隨意配對互換,如套用在羅馬字母中,可有得出下表:
A | B | C | D | E | F | G | H | I | J | K | L | M |
Z | Y | X | W | V | U | T | S | R | Q | P | O | N |
由經典加密法產生的密碼文很容易泄漏關於明文的統計信息,以現代觀點其實很容易被破解。阿拉伯人津帝(en:al-Kindi)便提及到如果要破解加密信息,可在一篇至少一頁長的文章中數算出每個字母出現的頻率,在加密信件中也數算出每個符號的頻率,然後互相對換,這是頻率分析的前身,此後幾乎所有此類的密碼都馬上被破解。但經典密碼學仍未消失,經常出現在謎語之中(見en:cryptogram)。這種分析法除了被用在破解密碼法外,也常用於考古學上。在破解古埃及象形文字(en:Hieroglyphs)時便運用了這種解密法。
標準機構
the Federal Information Processing Standards Publication program (run by NIST to produce standards in many areas to guide operations of the US Federal government; many FIPS Pubs are cryptography related,ongoing)
the ANSI standardization process (produces many standards in many areas; some are cryptography related,ongoing)
ISO standardization process (produces many standards in many areas; some are cryptography related,ongoing)
IEEE standardization process (produces many standards in many areas; some are cryptography related,ongoing)
IETF standardization process (produces many standards (called RFCs) in many areas; some are cryptography related,ongoing)
See Cryptography standards
加密組織
NSA internal evaluation/selections (surely extensive,nothing is publicly known of the process or its results for internal use; NSA is charged with assisting NIST in its cryptographic responsibilities)
GCHQ internal evaluation/selections (surely extensive,nothing is publicly known of the process or its results for GCHQ use; a division of GCHQ is charged with developing and recommending cryptographic standards for the UK government)
DSD Australian SIGINT agency - part of ECHELON
Communications Security Establishment (CSE) - Canadian intelligence agency.
努力成果
the DES selection (NBS selection process,ended 1976)
the RIPE division of the RACE project (sponsored by the European Union,ended mid-'80s)
the AES competition (a 'break-off' sponsored by NIST; ended 2001)
the NESSIE Project (evaluation/selection program sponsored by the European Union; ended 2002)
the CRYPTREC program (Japanese government sponsored evaluation/recommendation project; draft recommendations published 2003)
the Internet Engineering Task Force (technical body responsible for Internet standards -- the Request for Comment series: ongoing)
the CrypTool project (eLearning programme in English and German; freeware; exhaustive educational tool about cryptography and cryptanalysis)
加密散列函數(消息摘要演演算法,MD演演算法)
加密散列函數
消息認證碼
Keyed-hash message authentication code
EMAC (NESSIE selection MAC)
HMAC (NESSIE selection MAC; ISO/IEC 9797-1,FIPS and IETF RFC)
TTMAC 也稱 Two-Track-MAC (NESSIE selection MAC; K.U.Leuven (Belgium) & debis AG (Germany))
UMAC (NESSIE selection MAC; Intel,UNevada Reno,IBM,Technion,& UCal Davis)
MD5 (系列消息摘要演演算法之一,由MIT的Ron Rivest教授提出; 128位摘要)
SHA-1 (NSA開發的160位摘要,FIPS標準之一;第一個發行發行版本被發現有缺陷而被該版本代替; NIST/NSA 已經發布了幾個具有更長'摘要'長度的變種; CRYPTREC推薦 (limited))
SHA-256 (NESSIE 系列消息摘要演演算法,FIPS標準之一180-2,摘要長度256位 CRYPTREC recommendation)
SHA-384 (NESSIE 列消息摘要演演算法,FIPS標準之一180-2,摘要長度384位; CRYPTREC recommendation)
SHA-512 (NESSIE 列消息摘要演演算法,FIPS標準之一180-2,摘要長度512位; CRYPTREC recommendation)
RIPEMD-160 (在歐洲為 RIPE 項目開發,160位摘要;CRYPTREC 推薦 (limited))
Tiger (by Ross Anderson et al)
Snefru
Whirlpool (NESSIE selection hash function,Scopus Tecnologia S.A. (Brazil) & K.U.Leuven (Belgium))
公/私鑰加密演演算法(也稱 非對稱性密鑰演演算法)
ACE-KEM (NESSIE selection asymmetric encryption scheme; IBM Zurich Research)
ACE Encrypt
Chor-Rivest
Diffie-Hellman(key agreement; CRYPTREC 推薦)
El Gamal (離散對數)
ECC(橢圓曲線密碼演演算法) (離散對數變種)
PSEC-KEM (NESSIE selection asymmetric encryption scheme; NTT (Japan); CRYPTREC recommendation only in DEM construction w/SEC1 parameters) )
ECIES (Elliptic Curve Integrated Encryption System; Certicom Corp)
ECIES-KEM
ECDH (橢圓曲線Diffie-Hellman 密鑰協議; CRYPTREC推薦)
EPOC
Merkle-Hellman (knapsack scheme)
McEliece
NTRUEncrypt
RSA (因數分解)
RSA-KEM (NESSIE selection asymmetric encryption scheme; ISO/IEC 18033-2 draft)
RSA-OAEP (CRYPTREC 推薦)
Rabin cryptosystem (因數分解)
Rabin-SAEP
HIME(R)
XTR
公/私鑰簽名演演算法
DSA(zh:數字簽名;zh-tw:數位簽章演演算法) (來自NSA,zh:數字簽名;zh-tw:數位簽章標準(DSS)的一部分; CRYPTREC 推薦)
Elliptic Curve DSA (NESSIE selection digital signature scheme; Certicom Corp); CRYPTREC recommendation as ANSI X9.62,SEC1)
Schnorr signatures
RSA簽名
RSA-PSS (NESSIE selection digital signature scheme; RSA Laboratories); CRYPTREC recommendation)
RSASSA-PKCS1 v1.5 (CRYPTREC recommendation)
Nyberg-Rueppel signatures
MQV protocol
Gennaro-Halevi-Rabin signature scheme
Cramer-Shoup signature scheme
One-time signatures
Lamport signature scheme
Bos-Chaum signature scheme
Undeniable signatures
Chaum-van Antwerpen signature scheme
Fail-stop signatures
Ong-Schnorr-Shamir signature scheme
Birational permutation scheme
ESIGN
ESIGN-D
ESIGN-R
Direct anonymous attestation
NTRUSign用於移動設備的公鑰加密演演算法,密鑰比較短小但也能達到高密鑰ECC的加密效果
SFLASH (NESSIE selection digital signature scheme (esp for smartcard applications and similar); Schlumberger (France))
Quartz
秘密鑰演演算法(也稱 對稱性密鑰演演算法)
流密碼
A5/1,A5/2 (GSM行動電話標準中指定的密碼標準)
BMGL
Chameleon
FISH (by Siemens AG)
二戰'Fish'密碼
Geheimfernschreiber (二戰時期Siemens AG的機械式一次一密密碼,被布萊奇利(Bletchley)莊園稱為STURGEON)
Schlusselzusatz (二戰時期 Lorenz的機械式一次一密密碼,被布萊奇利(Bletchley)莊園稱為[[tunny)
HELIX
ISAAC (作為偽隨機數發生器使用)
Leviathan (cipher)
LILI-128
MUG1 (CRYPTREC 推薦使用)
MULTI-S01 (CRYPTREC 推薦使用)
一次一密 (Vernam and Mauborgne,patented mid-'20s; an extreme stream cypher)
Panama
Pike (improvement on FISH by Ross Anderson)
RC4 (ARCFOUR) (one of a series by Prof Ron Rivest of MIT; CRYPTREC 推薦使用 (limited to 128-bit key))
CipherSaber (RC4 variant with 10 byte random IV,易於實現)
SEAL
SNOW
SOBER
SOBER-t16
SOBER-t32
WAKE
分組密碼
分組密碼操作模式
乘積密碼
Feistel cipher (由Horst Feistel提出的分組密碼設計模式)
Advanced Encryption Standard (分組長度為128位; NIST selection for the AES,FIPS 197,2001 -- by Joan Daemen and Vincent Rijmen; NESSIE selection; CRYPTREC 推薦使用)
Anubis (128-bit block)
BEAR (由流密碼和Hash函數構造的分組密碼,by Ross Anderson)
Blowfish (分組長度為128位; by Bruce Schneier,et al)
Camellia (分組長度為128位; NESSIE selection (NTT & Mitsubishi Electric); CRYPTREC 推薦使用)
CAST-128 (CAST5) (64 bit block; one of a series of algorithms by Carlisle Adams and Stafford Tavares,who are insistent (indeed,adamant) that the name is not due to their initials)
CAST-256 (CAST6) (128位分組長度; CAST-128的後繼者,AES的競爭者之一)
CIPHERUNICORN-A (分組長度為128位; CRYPTREC 推薦使用)
CIPHERUNICORN-E (64 bit block; CRYPTREC 推薦使用 (limited))
CMEA - 在美國行動電話中使用的密碼,被發現有弱點.
CS-Cipher (64位分組長度)
DESzh:數字;zh-tw:數位加密標準(64位分組長度; FIPS 46-3,1976)
DEAL - 由DES演變來的一種AES候選演演算法
DES-X 一種DES變種,增加了密鑰長度.
FEAL
GDES -一個DES派生,被設計用來提高加密速度.
Grand Cru (128位分組長度)
Hierocrypt-3 (128位分組長度; CRYPTREC 推薦使用))
Hierocrypt-L1 (64位分組長度; CRYPTREC 推薦使用 (limited))
International Data Encryption Algorithm (IDEA) (64位分組長度--蘇黎世ETH的James Massey & X Lai)
Iraqi Block Cipher (IBC)
KASUMI (64位分組長度;基於MISTY1,被用於下一代W-CDMAcellular phone 保密)
KHAZAD (64-bit block designed by Barretto and Rijmen)
Khufu and Khafre (64位分組密碼)
LOKI89/91 (64位分組密碼)
LOKI97 (128位分組長度的密碼,AES候選者)
Lucifer (by Tuchman et al of IBM,early 1970s; modified by NSA/NBS and released as DES)
MAGENTA (AES 候選者)
Mars (AES finalist,by Don Coppersmith et al)
MISTY1 (NESSIE selection 64-bit block; Mitsubishi Electric (Japan); CRYPTREC 推薦使用 (limited))
MISTY2 (分組長度為128位:Mitsubishi Electric (Japan))
Nimbus (64位分組)
Noekeon (分組長度為128位)
NUSH (可變分組長度(64 - 256位))
Q (分組長度為128位)
RC2 64位分組,密鑰長度可變.
RC6 (可變分組長度; AES finalist,by Ron Rivest et al)
RC5 (by Ron Rivest)
SAFER (可變分組長度)
SC2000 (分組長度為128位; CRYPTREC 推薦使用)
Serpent (分組長度為128位; AES finalist by Ross Anderson,Eli Biham,Lars Knudsen)
SHACAL-1 (256-bit block)
SHACAL-2 (256-bit block cypher; NESSIE selection Gemplus (France))
Shark (grandfather of Rijndael/AES,by Daemen and Rijmen)
Square (father of Rijndael/AES,by Daemen and Rijmen)
3-Way (96 bit block by Joan Daemen)
TEA(小型加密演演算法)(by David Wheeler & Roger Needham)
Triple DES (by Walter Tuchman,leader of the Lucifer design team -- not all triple uses of DES increase security,Tuchman's does; CRYPTREC 推薦使用 (limited),only when used as in FIPS Pub 46-3)
Twofish (分組長度為128位; AES finalist by Bruce Schneier,et al)
XTEA (by David Wheeler & Roger Needham)
多表代替密碼機密碼
Enigma (二戰德國轉輪密碼機--有很多變種,多數變種有很大的用戶網路)
紫密(Purple) (二戰日本外交最高等級密碼機;日本海軍設計)
SIGABA (二戰美國密碼機,由William Friedman,Frank Rowlett,等人設計)
TypeX (二戰英國密碼機)
Hybrid code/cypher combinations
JN-25 (二戰日本海軍的高級密碼;有很多變種)
Naval Cypher 3 (30年代和二戰時期英國皇家海軍的高級密碼)
可視密碼
有密級的 密碼(美國)
EKMS NSA的電子密鑰管理系統
FNBDT NSA的加密窄帶話音標準
Fortezza encryption based on portable crypto token in PC Card format
KW-26 ROMULUS 電傳加密機(1960s - 1980s)
KY-57 VINSON 戰術電台語音加密
SINCGARS 密碼控制跳頻的戰術電台
STE 加密電話
STU-III 較老的加密電話
TEMPEST prevents compromising emanations
Type 1 products
雖然頻率分析是很有效的技巧,實際上加密法通常還是有用的。不使用頻率分析來破解一個信息需要知道是使用何種加密法,因此才會促成了諜報、賄賂、竊盜或背叛等行為。直到十九世紀學者們才體認到加密法的演演算法並非理智或實在的防護。實際上,適當的密碼學機制(包含加解密法)應該保持安全,即使敵人知道了使用何種演演算法。對好的加密法來說,鑰匙的秘密性理應足以保障資料的機密性。這個原則首先由奧古斯特·柯克霍夫(Auguste Kerckhoffs)提出並被稱為柯克霍夫原則(Kerckhoffs' principle)。資訊理論始祖克勞德·艾爾伍德·香農(Claude Shannon)重述:“敵人知道系統。”
大量的公開學術研究出現,是現代的事,這起源於一九七零年代中期,美國國家標準局(National Bureau of Standards,NBS;現稱國家標準技術研究所,National|Institute of Standards and Technology,NIST)制定數字加密標準(DES),Diffie和Hellman提出的開創性論文,以及公開釋出RSA。從那個時期開始,密碼學成為通訊、電腦網路、電腦安全等上的重要工具。許多現代的密碼技術的基礎依賴於特定基算問題的困難度,例如因子分解問題或是離散對數問題。許多密碼技術可被證明為只要特定的計算問題無法被有效的解出,那就安全。除了一個著名的例外:一次墊(one-time pad,OTP),這類證明是偶然的而非決定性的,但是是目前可用的最好的方式。
密碼學演演算法與系統設計者不但要留意密碼學歷史,而且必須考慮到未來發展。例如,持續增加計算機處理速度會增進暴力攻擊法(brute-force attacks)的速度。量子計算的潛在效應已經是部份密碼學家的焦點。
二十世紀早期的密碼學本質上主要考慮語言學上的模式。從此之後重心轉移,數論。密碼學同時也是工程學的分支,但卻是與別不同,因為它必須面對有智能且惡意的對手,大部分其他的工程僅需處理無惡意的自然力量。檢視密碼學問題與量子物理間的關連也是熱門的研究。
現代密碼學大致可被區分為數個領域。對稱鑰匙密碼學指的是傳送方與接收方都擁有相同的鑰匙。直到1976年這都還是唯一的公開加密法。
現代的研究主要在分組密碼(block cipher)與流密碼(stream cipher)及其應用。分組密碼在某種意義上是阿伯提的多字元加密法的現代化。分組密碼取用明文的一個區塊和鑰匙,輸出相同大小的密文區塊。由於信息通常比單一區塊還長,因此有了各種方式將連續的區塊編織在一起。DES和AES是美國聯邦政府核定的分組密碼標準(AES將取代DES)。儘管將從標準上廢除,DES依然很流行(3DES變形仍然相當安全),被使用在非常多的應用上,從自動交易機、電子郵件到遠端存取。也有許多其他的區塊加密被發明、釋出,品質與應用上各有不同,其中不乏被破解者。
流密碼,相對於區塊加密,製造一段任意長的鑰匙原料,與明文依位元或字元結合,有點類似一次一密密碼本(one-time pad)。輸出的串流根據加密時的內部狀態而定。在一些流密碼上由鑰匙控制狀態的變化。RC4是相當有名的流密碼。
密碼雜湊函數(有時稱作消息摘要函數,雜湊函數又稱散列函數或哈希函數)不一定使用到鑰匙,但和許多重要的密碼演演算法相關。它將輸入資料(通常是一整份文件)輸出成較短的固定長度雜湊值,這個過程是單向的,逆向操作難以完成,而且碰撞(兩個不同的輸入產生相同的雜湊值)發生的機率非常小。
信息認證碼或押碼(Message authentication codes,MACs)很類似密碼雜湊函數,除了接收方額外使用秘密鑰匙來認證雜湊值。
Key authentication
Public Key Infrastructure (PKI)
Identity-Based Cryptograph (IBC)
X.509
Public key certificate
Certificate authority
Certificate revocation list
ID-based cryptography
Certificate-based encryption
Secure key issuing cryptography
Certificateless cryptography
匿名認證系統
GPS (NESSIE selection anonymous identification scheme; Ecole Normale Superieure,France Telecom,& La Poste)
被動攻擊
選擇明文攻擊
選擇密文攻擊
自適應選擇密文攻擊
暴力攻擊
密鑰長度
唯一解距離
密碼分析學
中間相會攻擊
差分密碼分析
線性密碼分析
Slide attack cryptanalysis
Algebraic cryptanalysis
XSL attack
Mod n cryptanalysis
弱密鑰和基於口令的密碼
暴力攻擊
字典攻擊
相關密鑰攻擊
Key derivation function
弱密鑰
口令
Password-authenticated key agreement
Passphrase
Salt
密鑰傳輸/交換
BAN Logic
Needham-Schroeder
Otway-Rees
Wide Mouth Frog
Diffie-Hellman
中間人攻擊
偽的和真的隨機數發生器
PRNG
CSPRNG
硬體隨機數發生器
Blum Blum Shub
Yarrow (by Schneier,et al)
Fortuna (by Schneier,et al)
ISAAC
基於SHA-1的偽隨機數發生器, in ANSI X9.42-2001 Annex C.1 (CRYPTREC example)
PRNG based on SHA-1 for general purposes in FIPS Pub 186-2 (inc change notice 1) Appendix 3.1 (CRYPTREC example)
PRNG based on SHA-1 for general purposes in FIPS Pub 186-2 (inc change notice 1) revised Appendix 3.1 (CRYPTREC example)
匿名通訊Dining cryptographers protocol (by David Chaum)
匿名投遞
pseudonymity
匿名網路銀行業務
Onion Routing
密碼分析又稱破密術。密碼分析的目的是發現密碼機制的弱點,從事者可能是意圖顛覆系統惡意的攻擊者或評估系統弱點的設計人。在現代,密碼演演算法與協定必須被仔細檢查和測試,確定其保證的安全性。
大眾普遍誤解認為所有加密法都可以被破解。Bell Labs的Claude Shannon在二次世界大戰時期便證明只要鑰匙是完全隨機,不重複使用,對外絕對保密,與信息等長或比信息更長的一次一密是不可能破解的。除了一次一密以外的多數加密法都可以以暴力攻擊法破解,但是破解所需的努力可能是鑰匙長度的指數成長。
密碼分析的方式有很多,因此有數個分類。一個常見的分別法則是攻擊者知曉多少信息。在唯密文攻擊中,密碼分析者只能存取密文,好的現代密碼系統對這種情況通常是免疫的。在已知明文攻擊中,密碼分析者可以存取多個明文、密文對。在選擇明文攻擊中,密碼分析者可以自選任意明文,並被賦予相對應的密文,例如二戰時布列顛所使用的園藝法。最後,選擇密文攻擊中,密碼分析者可以自選任意密文,並被賦予相對應的明文
對稱鑰匙加密的密碼分析通常旨在尋找比已知最佳破解法更有效率的方式。例如,以最簡單的暴力法破解DES需要一個已知明文與解密運算,嘗試近半數可能的鑰匙。線性分析攻擊法對DES需要已知明文與DES運算,顯然比暴力法有效。
公開鑰匙演演算法則基於多種數學難題,其中最有名的是整數分解和離散對數問題。許多公開鑰匙密碼分析在研究如何有效率地解出這些計算問題的數值演演算法。例如,已知解出基於橢圓曲線的離散對數問題比相同鑰匙大小的整數因子分解問題更困難。因此,為了達到相等的安全強度,基於因子分解的技術必須使用更長的鑰匙。由於這個因素,基於橢圓曲線的公開鑰匙密碼系統從1990年代中期后逐漸流行。
當純粹的密碼分析著眼於演演算法本身時,某些攻擊則專註於密碼裝置執行的弱點,稱為副通道攻擊。如果密碼分析者可以存取到裝置執行加密或回報通行碼錯誤的時間,它就可能使用時序攻擊法破解密碼。攻擊者也可能研究信息的模式與長度,得出有用的信息,稱為流量分析,對機敏的敵人這相當有效。當然,社會工程與其它針對人事、社交的攻擊與破密術一併使用時可能是最有力的攻擊法。
Commitment schemes
Secure multiparty computations
電子投票
認證
數位簽名
Cryptographic engineering
Crypto systems
1. 數位簽章(Digital Signature):
這是以密碼學的方法,根據EDI訊息的內容和發信有該把私鑰,任何人都無法產生該簽名,因此比手寫式的簽名安全許多。收信人則以發信人的公鑰進行數位簽章的驗證。
2. 數位信封(Digital Envelope):
這是以密碼學的方法,用收信人的公鑰對某些機密資料進行加密,收信人收到后再用自己的私鑰解密而讀取機密資料。除了擁有該私鑰的人之外,任何人即使拿到該加密過的訊息都無法解密,就好像那些資料是用一個牢固的信封裝好,除了收信人之外,沒有人能拆開該信封。
3. 安全回條:
收信人依據訊息內容計算所得到的回覆資料,再以收信人的私鑰進行數位簽章後送回發信人,一方面確保收信人收到的訊息內容正確無誤,另一方面也使收信人不能否認已經收到原訊息。
4. 安全認證:
每個人在產生自己的公鑰之後,向某一公信的安全認證中心申請註冊,由認證中心負責簽發憑證(Certificate),以保證個人身份與公鑰的對應性與正確性。
作為信息安全的主幹學科,西安電子科技大學的密碼學全國第一。1959年,受錢學森指示,西安電子科技大學在全國率先開展密碼學研究,1988年,西電第一個獲准設立密碼學碩士點,1993年獲准設立密碼學博士點,是全國首批兩個密碼學博士點之一,也是唯一的軍外博士點,1997年開始設有長江學者特聘教授崗位,並成為國家211重點建設學科。2001年,在密碼學基礎上建立了信息安全專業,是全國首批開設此專業的高校。
西安電子科技大學信息安全專業依託一級國家重點學科“信息與通信工程”(全國第二)、二級國家重點學科“密碼學”(全國第一)組建,是985工程優勢學科創新平台、211工程重點建設學科,擁有綜合業務網理論及關鍵技術國家重點實驗室、無線網路安全技術國家工程實驗室、現代交換與網路編碼研究中心(香港中文大學—西安電子科技大學)、計算機網路與信息安全教育部重點實驗室、電子信息對抗攻防與模擬技術教育部重點實驗室等多個國家級、省部級科研平台。
在中國密碼學會的34個理事中,西電佔據了12個,且2個副理事長都是西電畢業的,中國在國際密碼學會唯一一個會員也出自西電。毫不誇張地說,西電已成為中國培養密碼學和信息安全人才的核心基地。
以下簡單列舉部分西電信安畢業生:來學嘉,國際密碼學會委員,IDEA分組密碼演演算法設計者;陳立東,美國標準局研究員;丁存生,香港科技大學教授;邢超平,新加坡NTU教授;馮登國,中國科學院信息安全國家實驗室主任,中國密碼學會副理事長;張煥國,中國密碼學會常務理事,武漢大學教授、信安掌門人;何大可,中國密碼學會副理事長,西南交通大學教授、信安掌門人;何良生,中國人民解放軍總參謀部首席密碼專家;葉季青,中國人民解放軍密鑰管理中心主任。
西安電子科技大學擁有中國在信息安全領域的三位領袖:肖國鎮、王育民、王新梅。其中肖國鎮教授是我國現代密碼學研究的主要開拓者之一,他提出的關於組合函數的統計獨立性概念,以及進一步提出的組合函數相關免疫性的頻譜特徵化定理,被國際上通稱為肖—Massey定理,成為密碼學研究的基本工具之一,開拓了流密碼研究的新領域,他是亞洲密碼學會執行委員會委員,中國密碼學會副理事長,還是國際信息安全雜誌(IJIS)編委會顧問。
2001年,由西安電子科技大學主持制定的無線網路安全強制性標準——WAPI震動了全世界,中國擁有該技術的完全自主知識產權,打破了美國IEEE在全世界的壟斷,華爾街日報當時曾報道說:“中國無線技術加密標準引發業界慌亂”。這項技術也是中國在IT領域取得的具少數有世界影響力的重大科技進展之一。
西安電子科技大學的信息安全專業連續多年排名全國第一,就是該校在全國信息安全界領袖地位的最好反映。
密碼學(Cryptology)一字源自希臘文"krypto's"及"logos"兩字,直譯即為"隱藏"及"訊息"之意。而其使用,可以追溯到大約四千年前。公元二千年,埃及人就將祭文刻在墓碑上。之後人們都是以書寫在紙張上的方式,用來傳秘密訊息。在二次大戰中,密碼更是扮演一個舉足輕重的角色,許多人認為同盟國之所以能打贏這場戰爭完全歸功於二次大戰時所發明的破譯密文數位式計算機破解德日密碼。西元1949年,Shannon提出第一篇討論密碼系統通訊理論之論文,近代密碼學可說是濫觴於斯。直至西元1975年,Diffie與Hellman提出公開金
匙密碼系統之觀念,近代密碼學之研究方向,正式脫離秘密金匙密碼系統之窠臼,蓬勃發展,至今已近二十年。發展至今,已有二大類的密碼系統。第一類為對稱金鑰(Symmetric Key)密碼系統,第二類為非對稱金鑰(Public Key) 密碼系統。
1965年,美國史丹福大學電機工程系--默克爾、迪菲、赫爾曼等三人研究密碼學可惜並未有所發現。另外在英國通訊電子保安組(CESG)秘密機構的切爾納姆發現了還原密碼式,但是由於屬於秘密機構,所以不能公開。直到1977年麻省理工研究生--里夫斯,阿德曼發現和切爾曼差不多的式。他們成立RSA Security
Company (RSA是他們名字的字頭)現時值25億美元,在傳送信用卡時起了很大作用。RSA已安裝了5億套產品在IE,Netscape下的小鎖就是RSA的產品。數學掛銷第一個發現不是美國,但?是第一個公開。數學掛鎖上鎖易,還原難,所以受廣泛使用,亦即是信息編碼保密。
數學掛鎖泛例:
數學掛鎖用單向式:N=pxq <--例子 N(合成數)=兩個質數的乘
11x17=187=N
還原單向式公式:C=Me(mod N) *e是M的次數,因為在記事本中打不到*
M*13*(mod 187)=C *13是M的次數*
c=165
x=88 (password kiss)
88*13*(mod 187)=165 *13是88的次數*
modN=M
C*1/e*mod(p-1)(q-1)=88
C=165
p=11
q=17
answer:mod 187=88
一般有兩種類型密碼學被使用:
symmetric key (對稱性的鑰匙)和public key (公開的鑰匙)(也叫 非對稱的鑰匙)密碼學.
舉一個簡單的對稱的鑰匙密碼學的範例,假想從朋友處收到一個通知. 你和你的朋友同意來加解密你們的訊息,
你們將使用下列演演演算法:每個字母將會上移三個字母,例如 A=C,B=D,而 Y 和 Z 轉一圈回到 A 和 B,
這個方程式 ("每個字母上移三個字母") 就是送信者使用來加密訊息的鑰匙;而收信者使用相同的鑰匙來解密 .
任何人如果沒有鑰匙就不能夠讀此訊息. 因為相同的鑰匙視同實用來加密及解密訊息,這個方法是一個對稱鑰匙
的演演演算法. 這類的密碼學及是我們所知的秘密鑰匙密碼學,因為此鑰匙 必須被秘密保存於送信者和收信者,以保護資料的完整性.
非對稱性密碼學
非對稱性或公開的鑰匙 密碼學,不同於對稱性的 密碼學,在於其加密鑰匙只適用於單一使用者.
鑰匙被分為兩個部分:
一把私有的鑰匙,僅有使用者才擁有.
一把公開的鑰匙,可公開發行配送,只要有要求即取得.
每支鑰匙產生一個被使用來改變內文的功能. 私有的鑰匙 產生一個 私有改變內文的功能,而公開的鑰匙 產生一個 公開改變內文的功能.
這些功能是反向相關的,例如.,如果一個功能是用來加密訊息,另外一個功能則被用來解密訊息。不論此改變內文功能的次序為何皆不重要.
公開的鑰匙系統的優勢是兩個使用者能夠安全的溝通而不需交換秘密鑰匙. 例如,假設一個送信者需要傳送一個信息給一個收信者,
而信息的秘密性是必要的,送信者以收信者的公開的鑰匙來加密,而僅有收信者的私有的鑰匙能夠對此信息解密.
公開的鑰匙密碼學是非常適合於提供認證,完整和不能否認的服務,所有的這些服務及是我們所知的數位簽名.
基本原理的密碼法,可以分成兩種:移位法(transposition)和替代法(substitution),
移位法就是將訊息裡面的文字,根據一定的規則改變順序,這種方法,在文字數量很大的時候,
便可以顯示出它的優勢,例如"Hello World"才不過10個字母便可以有11708340914350080000種排列的方式。
另外一種方法,就是替代法,還可以分成兩種,一種是單字替代,一種是字母替代,兩種的原理是一樣的,
就是利用文字相對順序的對應,來改變原來的文章,以英文為例,我們可以把英文字母往後移動三個位置,即:
a b c d e f g h i j k l m n o p q r s t u v w x y z
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
泛例:Hello World How are you
khoor zruog krz duh brx
這句話就變的難以辨認了,而且如果發信人收信人有協定好的話,那還可以把文字之間的空白刪除,反正翻譯回來的時候,
可以靠文句的意思,來推測斷句斷字的時機。而單字替代,則是以每個單字,都去換成另外一個相對應的單字,這樣來改寫原文,
變成一個無法辨認其意義的加密文件。
移位法當然不只限於一種,光是英文字母不考慮大小寫,就可以有25種互異的方法,每種密碼法,都可視為一種加密法,
我們稱為演演演算法(algorithm),和一把鑰匙(KEY)的組合結果。鑰匙是用來指定加密程序的演算細節。以移位法為例,
演演演算法是只以密碼字母集里的字母,取代明文字母集裡面的字母,鑰匙便是收發信人定義的密碼字母集。
整個密碼學發展的程序,辨識找尋新的演演演算法,和保護鑰匙避免被解密者發現的程序,鑰匙在密碼學中非常重要,因為即使演演演算法相同或太簡單,
沒有加密的鑰匙的話,我們仍然很難去破解加密的文件。以單純的英文字母,不單純的平移,而用一個字母一個字母互換的話,不考慮大小寫,
就有403291461126605635584000000種不同的鑰匙必須要去測試,才可以得到原來的明文。
量子密碼學(Jennewein et al.,Quantum Cryptography with EntangledPhotons,Physical Review Letters,May 15,2000,Vol 84,Iss 20,pp. 4729-4732)
三個獨立研究機構首次實驗證明利用量子幽靈式的特性來建構密碼之可行性,這項研究提供未來對付電腦駭客的防犯之道.
在這個最新--也是最安全--的資料加密解密架構(即量子密碼學)中,研究者是採用一對 entangled光子,
而這對粒子即使相隔遠距離的情況下,仍有密切的互動關係.
entanglement-based 的量子密碼學具有唯一的,不可被竊聽的傳輸特性,如果有偷聽者想竊取資料,也很容易的可以監測出來.
簡而言之,entanglement process 可以建立完整的,隨機的 0與 1 序列提供兩端使用者傳輸資料,如果有駭客從中擷取資料,
那麼這個訊息序列將被改變,用戶就會發現有竊聽者,並授權放棄被竊聽的資料. 這種數位隨機序列,或稱“金鑰匙”,
再和資料進行計算(如互斥或閘 XOR),即加密程序,使得這資料串形成一完全隨機序列,這方法就是已知的 one-time pad cipher. 同理,
接收端也是靠著金鑰匙來進行解密程序.
在研究中,Los Alamos 研究者模擬一位竊聽者竊取傳輸資料,成功地被偵測出來,並授權用戶放棄被竊取的資料.
而在澳洲的研究團隊,則建立了一公里長的光纖來連接兩個完全獨立的傳輸,接收站來驗證 entangled 密碼理論,
他們建立了金鑰匙並成功的傳輸 Venus 影像. 同時,在 University of Geneva 團隊建構超過數公里的光纖,
並使用光子頻率來驗證entangled 密碼理論.
在這些實驗中,雖然他們的傳輸速率較慢,但 entanglement-based 密碼理論在未來極有可能超越non-entangled 量子密碼理論,
不僅是傳輸速率,而且在預防資料被竊取方面,所需要的額外光子也比較少.
密碼強度
密碼強度指一個密碼被非認證的用戶或計算機破譯的難度。密碼強度通常用“弱”或“強”來形 容。“弱”和“強”是相對的,不同的密碼系統對於密碼強度有不同的要求。密碼的破譯與系統允許客戶嘗試不同密碼的次數、是否熟悉密碼主人等因素相關。然而,即使再強的密碼也有可能被偷取、破譯或泄漏,在用戶設置密碼時,儘可能的將密碼設置的越複雜、位數越長、經常更換此類型的密碼,從而才能讓密碼強度儘可能達到最高。
高強度的密碼應該是:包括大小寫字母、數字和符號,且長度不宜過短,最好不少於10位。不包含生日、手機號碼等易被猜出的信息。此外,建議您定期更換密碼,不要輕易把您的帳號或者密碼透露給別人。0與1 2進位中得原始代碼,通常可以控制如:2極管,3極管等電子元器件得通與分