密码学

術語

直到現代以前，密碼學幾乎專指加密演算法：將普通訊息（明文）轉換成難以理解的資料（密文）的過程；解密演算法則是其相反的過程：由密文轉換回明文；加解密包含了這兩種演算法，一般加密即同時指稱加密與解密的技術。
加解密的具體運作由兩部分決定：一個是演算法，另一個是金鑰。金鑰是一個用於加解密演算法的秘密參數，通常只有通訊者擁有。歷史上，金鑰通常未經認證或完整性測試而被直接使用在加解密上。
密碼協定是使用密碼技術的通訊協定。近代密碼學者多認為除了傳統上的加解密演算法，密碼協定也一樣重要，兩者為密碼學研究的兩大課題。在英文中，「cryptography」和「cryptology」都可代表密碼學，前者又稱密碼術。但更嚴謹地說，前者（cryptography）指密碼技術的使用，而後者（cryptology）指研究密碼的學門，包含密碼術與密碼分析。密碼分析是研究如何破解密碼學的學門。但在實際使用中，通常都稱密碼學（即cryptography），而不具體區分其含義。
口語上，編碼常意指加密或隱藏訊息的各種方法。然而，在密碼學中，編碼有更特定的意義：它意指以碼字取代特定的明文。例如，以『蘋果派』（apple pie）替換『拂曉攻擊』（attack at dawn）。編碼已經不再被使用在嚴謹的密碼學，它在資訊理論或通訊原理上有更明確的意義。
在漢語口語中，電腦系統或網路使用的個人帳戶通行碼也常被以密碼代稱，雖然通行碼亦屬密碼學研究的範圍，但學術上通行碼與密碼學中所稱的金鑰並不相同，即使兩者間常有密切的關連。

對稱金鑰加密

對稱金鑰加密是密碼學中的一種加密法，是以轉換其中一個數字、字母或僅字串隨機字母，一個秘密金鑰會以特定的方式變更訊息裡面的文字或字母，例如更換字母相對位置（例如hello變成lohel）。只要寄件者與收件者知道秘密金鑰，他們可以加密和解密並使用這個資料。

公開金鑰加密

公開金鑰加密（也稱為非對稱加密）是密碼學中的一種加密法，非對稱金鑰，是指一對加密金鑰與解密金鑰，某使用者使用加密金鑰加密後所獲得的資料，只能用該使用者的解密金鑰才能夠解密。如果知道了其中一個，並不能計算出另外一個。因此如果公開了其中一個金鑰，並不會危害到另外一個。因此公開的金鑰為公鑰；不公開的密鑰為私鑰。

數位簽章

數位簽章（又稱公鑰數位簽章、電子簽章）是一種類似寫在紙上的簽名，但是使用了公鑰加密領域的技術實現，用於鑒別數位資訊的方法。在網路上，我們可以使用「數位簽章」來進行身分確認。數位簽章是一個獨一無二的數值，若公鑰能通過驗證，那我們就能確定對應的公鑰的正確性，數位簽章兼具這兩種雙重屬性："可確認性"及"不可否認性（不需要筆跡專家驗證）"。

密碼學與密碼分析的歷史

許多物理裝置被用來輔助加密，例如古希臘斯巴達的密碼棒，這是一個協助置換法的圓柱體，可將資訊內字母的次序調動，利用了字條纏繞木棒的方式，把字母進行位移，收信人要使用相同直徑的木棒才能得到還原的資訊。在歐洲中世紀時期，密碼欄用在某類隱寫術上。
多字元加密法出現後，更多樣的輔助工具出現，如阿伯提發明的密碼盤、特里特米烏斯發明的表格法、以及美國總統湯瑪斯·傑佛遜發明的傑弗遜圓盤（巴澤里約在1900年再次獨立發明改進）。
二十世紀早期，多項加解密機械被發明且被註冊專利，包括最有名的轉輪機，第二次世界大戰德軍所用，別名『謎』式密碼機（恩尼格瑪密碼機），其加密法是在第一次世界大戰後針對當時破密術所做最好的設計。
二十世紀早期的密碼學本質上主要考慮語言學上的模式。從此之後重心轉移，現在密碼學使用大量的數學，包括資訊理論、計算複雜性理論、統計學、組合學、抽象代數以及數論。密碼學同時也是工程學的分支，但卻是與別不同，因為它必須面對有智慧型且惡意的對手，大部分其他的工程僅需處理無惡意的自然力量。檢視密碼學問題與量子物理間的關連也是目前熱門的研究。

中世紀至第二次世界大戰

本質上所有的密碼仍然受到上述的破密法的危害，直到阿伯提約在1467年發明了多字母加密法，阿伯提的創新在於對訊息的不同部分使用不同的程式碼，他同時也發明了可能是第一個自動加密器，一個實現他部分想法的轉輪。多字元加密法最典型的例子是維吉尼亞加密法：加密重複使用到一個關鍵字，用哪個字母取代端視輪替到關鍵字的哪個字母而定。儘管如此，多字母加密法仍然受到頻率分析法的部分危害，不過這直到十九世紀中期才被查爾斯·巴貝奇發現。
比較近代的著名的例子可數中世紀蘇格蘭的瑪麗女王、第一次世界大戰德國的齊默爾曼電報和第二次世界大戰的「恩尼格瑪」。

蘇格蘭的瑪麗女王

西元1578年，瑪麗女王被伊莉莎白女王軟禁。在1586年1月6日瑪麗收到一批秘密信件，得悉了安東尼·貝平頓（Anthony Babington）的計劃。安東尼和幾個同黨在密謀營救瑪麗，並計劃行刺伊莉莎白女王。他們的信件被轉成密碼，並藏在啤酒桶的木塞以掩人耳目。但卻被英格蘭大臣華興翰（Walsingham）的從中截獲、複製、還信入塞，並由菲力普·馬尼斯（Philip van Marnix）破解信件。信件破解後，華興翰使菲力普摹擬瑪麗的筆跡引誘安東尼行動，把叛逆者一網成擒，審判並處死瑪麗女王。問題在於錯誤地使用脆弱的加密法會製造虛假的安全錯覺：安東尼對他們的通訊方式太過有信心，令他的加密方法過於簡單，輕易被敵人破解。

第一次世界大戰

1914年8月25日德國的馬格德堡巡洋艦（Magdeburg）在芬蘭灣（Gulf of Finland）擱淺，俄國搜出多份德國的檔案及兩本電碼本，一本被送往英國的「40號房間」（Room 40）進行密碼分析。同時，無線電的發明亦使得截獲密信易如反掌。由於德國通往美國的電纜在大戰開始時被剪斷了，德國借用了美國的海底電纜發電報到華盛頓，但電纜經過了英國，1917年1月17日齊默爾曼電報被「40號房間」截獲。同年2月23日，密電內容揭開了，內容指德國將在1917年2月1日開始『無限制潛艇戰』，用潛艇攻擊戰時包括中立國在內的海上商運船。為了阻止美國因此參戰，德國建議墨西哥入侵美國，並承諾幫助墨西哥從美國手中奪回德克薩斯、新墨西哥和亞利桑那三州。德國還要墨西哥說服日本共同進攻美國，德國將提供軍事和資金援助。密電內容揭開後，美國在4月16日向德國宣戰。

第二次世界大戰

德國汲取了第一次大戰的教訓，發展出以機械代替人手的加密方法。雪畢伍斯（Arthur Scherbius）發明了「謎」（ENIGMA，恩尼格瑪密碼機），用於軍事和商業上。「謎」主要由鍵盤、編碼器和燈板組成。三組編碼器合、加上接線器和其他配件，合共提供了種一億億種編碼的可能性。1925年，「謎」開始有系列生產，在20年間，德國軍方購入了3萬多台「謎」，亦難倒了「40號房」，成為德國在二次大戰的重要工具。波蘭位於德國東面，俄國的西面，一直受到威脅，故成立了波蘭密碼局（Biuro Szyfrow）以獲取情報。波蘭從漢斯-提羅·施密德（Hans-Thilo Schmidt）處得到諜報，由年輕的數學家馬里安·雷耶夫斯基（Marian Rejewski）解譯，用了一年時間編纂目錄，並在1930年代製造了「炸彈」（bomba），漸漸掌握瞭解「謎」的技術。
1938年12月德國加強了「謎」的安全性，令波蘭失去了情報。「謎」成為了希特勒（Hitler）閃電戰略的核心，每天更改的加密排列維繫了強大快速的攻擊。1939年4月27日德國復原與波蘭的互不侵犯條約，波蘭才不得不決定把「炸彈」這個構想與英、法分享，合力破解新的「謎」。1939年9月1日，德國侵擊波蘭，大戰爆發。英國得到了波蘭的解密技術後，40號房間除了原有的語言和人文學家，還加入了數學家和科學家，後來更成立了政府程式碼暨密碼學校（Government code and Cipher School），5年內人數增至7000人。1940至1942年是加密和解密的拉鋸戰，成功的解碼提供了很多寶貴的情報。例如在1940年得到了德軍進攻丹麥和挪威的作戰圖，以及在不列顛戰役（Battle of Britain）事先獲得了空襲情報，化解了很多危機。但「謎」卻並未被完全破解，加上「謎」的網路很多，令德國一直在大西洋戰役中佔上風。最後英國在「順手牽羊」的行動中在德國潛艇上俘獲「謎」的密碼簿，破解了「謎」。英國以各種虛假手段掩飾這件事，免得德國再次更改密碼，並策劃摧毀了德國的補給線，縮短了大西洋戰役的持續時間。

現代密碼學

第二次世界大戰後電腦與電子學的發展促成了更複雜的密碼，而且電腦可以加密任何二進位形式的資料，不再限於書寫的文字，以語言學為基礎的破密術因此失效。多數電腦加密的特色是在二進位字串上操作，而不像經典密碼學那樣直接地作用在傳統字母數字上。然而，電腦同時也促進了破密分析的發展，抵消了某些加密法的優勢。不過，優良的加密法仍保持領先，通常好的加密法都相當有效率（快速且使用少量資源），而破解它需要許多級數以上的資源，使得破密變得不可行。
雖然頻率分析是很有效的技巧，實際上加密法通常還是有用的。不使用頻率分析來破解一個訊息需要知道目前是使用何種加密法，因此才會促成了諜報、賄賂、竊盜或背叛等行為。直到十九世紀學者們才體認到加密法的演算法並非理智或實在的防護。實際上，適當的密碼學機制（包含加解密法）應該保持安全，即使敵人知道了使用何種演算法。對好的加密法來說，金鑰的秘密性理應足以保障資料的機密性。這個原則首先由奧古斯特·柯克霍夫（Auguste Kerckhoffs）提出並被稱為柯克霍夫原則（Kerckhoffs' principle）。資訊理論始祖克勞德·艾爾伍德·香農（Claude Shannon）重述：「敵人知道系統。」
大量的公開學術研究出現，是現代的事，這起源於一九七零年代中期，美國國家標準局（National Bureau of Standards, NBS；現稱國家標準技術研究所，National, NIST）制定數位加密標準（DES），惠特菲爾德·迪菲和Hellman提出的開創性論文，以及公開釋出RSA。從那個時期開始，密碼學成為通訊、電腦網路、電腦安全等上的重要工具。許多現代的密碼技術的基礎依賴於特定計算問題的困難度，例如因數分解問題或是離散對數問題。許多密碼技術可被證明為只要特定的計算問題無法被有效的解出，那就安全。除了一個著名的例外：一次性密碼本（one-time pad，OTP），這類證明是偶然的而非決定性的，但是是目前可用的最好的方式。
密碼學演算法與系統設計者不但要留意密碼學歷史，而且必須考慮到未來發展。例如，持續增加電腦處理速度會增進蠻力攻擊（brute-force attacks）的速度。量子計算的潛在效應已經是部份密碼學家的焦點。

現代密碼學

現代密碼學大致可被區分為數個領域。對稱金鑰密碼學指的是傳送方與接收方都擁有相同的金鑰。直到1976年這都還是唯一的公開加密法。
現代密碼學重視區塊加密法與串流加密法的研究及應用。區塊加密法在某種意義上是阿伯提的多字元加密法的現代化。區塊加密法取用明文的一個區段和金鑰，輸出相同大小的密文區段。由於訊息通常比單一區段還長，因此有了各種方式將連續的區段編織在一起。DES和AES是美國聯邦政府核定的區塊加密法標準（AES將取代DES）。儘管將從標準上廢除，DES依然很流行（三重資料加密演算法變形仍然相當安全），被使用在非常多的應用上，從自動交易機、電子郵件到遠端存取。也有許多其他的區段加密被發明、釋出，品質與應用上各有不同，其中不乏被破解者。
串流加密法，相對於區段加密，製造一段任意長的金鑰原料，與明文依位元或字元結合，有點類似一次一密密碼本（one-time pad）。輸出的串流根據加密時的內部狀態而定。在一些串流加密法上由金鑰控制狀態的變化。RC4是相當有名的串流加密法。
密碼雜湊函式（有時稱作訊息摘要函式，雜湊函式又稱雜湊函式或雜湊函式（Hash））不一定使用到金鑰，但和許多重要的密碼演算法相關。它將輸入資料（通常是一整份檔案）輸出成較短的固定長度雜湊值，這個過程是單向的，逆向操作難以完成，而且碰撞（兩個不同的輸入產生相同的雜湊值）發生的機率非常小。
訊息認證碼或押碼（Message authentication codes, MACs）很類似密碼雜湊函式，除了接收方額外使用秘密金鑰來認證雜湊值。

公鑰密碼學

公開金鑰密碼學，簡稱公鑰密碼學，又稱非對稱金鑰密碼學，相對於對稱金鑰密碼學，最大的特點在於加密和解密使用不同的金鑰。
在對稱金鑰密碼學中，加密和解密使用相同的金鑰，也許對不同的訊息使用不同的金鑰，但都面臨金鑰管理的難題。由於每對通訊方都必須使用異於他組的金鑰，當網路成員的數量增加時，金鑰數量成二次方增加。更尷尬的難題是：當安全的通道不存在於雙方時，如何建立一個共有的金鑰以利安全的通訊？如果有通道可以安全地建立金鑰，何不使用現有的通道。這個「雞生蛋、蛋生雞」的矛盾是長年以來密碼學無法在真實世界應用的阻礙。
1976年，惠特菲爾德·迪菲與馬丁·赫爾曼發表開創性的論文，提出公開金鑰密碼學的概念：一對不同值但數學相關的金鑰，公開金鑰（公鑰, public key）與私密金鑰（私鑰, private key or secret key）。在公鑰系統中，由公開金鑰推算出配對的私密金鑰於計算上是不可行的。歷史學者David Kahn這樣描述公開金鑰密碼學；「從文藝復興的多字元取代法後最革命性的概念。」
在公鑰系統中，公鑰可以隨意流傳，但私鑰只有該人擁有。典型的用法是，其他人用公鑰來加密給該接受者，接受者使用自己的私鑰解密。Diffie與Hellman也展示了如何利用公開金鑰密碼學來達成迪菲-赫爾曼密鑰交換協定。
1978年，麻省理工學院的羅納德·李維斯特、阿迪·薩莫爾和倫納德·阿德曼發明另一個公開金鑰系統，RSA。
直到1997年的公開檔案中大眾才知道，早在1970年代早期，英國情報機構政府通訊總部的數學家James H. Ellis便已發明非對稱金鑰密碼學，而且Diffie-Hellman與RSA都曾被Malcolm J. Williamson與Clifford Cocks分別發明於前。這兩個最早的公鑰系統提供優良的加密法基礎，因而被大量使用。其他公鑰系統還有Cramer-Shoup、El Gamal、以及橢圓曲線密碼學等等。
除了加密外，公開金鑰密碼學最顯著的成就是實現了數位簽章。數位簽章名副其實是普通簽章的數位化，他們的特性都是某人可以輕易製造簽章，但他人卻難以仿冒。數位簽章可以永久地與被簽署訊息結合，無法自訊息上移除。數位簽章大致包含兩個演算法：一個是簽署，使用私密金鑰處理訊息或訊息的雜湊值而產生簽章；另一個是驗證，使用公開金鑰驗證簽章的真實性。RSA和DSA是兩種最流行的數位簽章機制。數位簽章是公開金鑰基礎建設（public key infranstructures, PKI）以及許多網路安全機制（SSL/TLS, 虛擬私人網路等）的基礎。
公開金鑰演算法大多基於計算複雜度上的難題，通常來自於數論。例如，RSA源於整數因數分解問題；DSA源於離散對數問題。近年發展快速的橢圓曲線密碼學則基於和橢圓曲線相關的數學難題，與離散對數相當。由於這些底層的問題多涉及模數乘法或指數運算，相對於區塊加密法需要更多計算資源。因此，公開金鑰系統通常是複合式的，內含一個高效率的對稱金鑰演算法，用以加密訊息，再以公開金鑰加密對稱金鑰系統所使用的金鑰，以增進效率。

密碼分析

密碼分析又稱破密術。密碼分析的目的是發現密碼機制的弱點，從事者可能是意圖顛覆系統惡意的攻擊者或評估系統弱點的設計人。在現代，密碼演算法與協定必須被仔細檢查和測試，確定其保證的安全性。
大眾普遍誤解認為所有加密法都可以被破解。香農在二戰時的工作就已證明只要金鑰是完全隨機，不重覆使用，對外絕對保密，與訊息等長或比訊息更長的一次一密是不可能破解的。除了一次一密以外的多數加密法都可以以暴力攻擊法破解，但是破解所需的努力可能是金鑰長度的指數成長。
密碼分析的方式有很多，因此有數個分類。一個常見的分別法則是攻擊者知曉多少資訊。在唯密文攻擊中，密碼分析者只能存取密文，好的現代密碼系統對這種情況通常是免疫的。在已知明文攻擊中，密碼分析者可以存取多個明文、密文對。在選擇明文攻擊中，密碼分析者可以自選任意明文，並被賦予相對應的密文，例如二戰時布列顛所使用的園藝法。最後，選擇密文攻擊中，密碼分析者可以自選任意密文，並被賦予相對應的明文
對稱金鑰加密的密碼分析通常旨在尋找比已知最佳破解法更有效率的方式。例如，以最簡單的暴力法破解DES需要一個已知明文與2⁵⁵解密運算，嘗試近半數可能的金鑰。線性分析攻擊法對DES需要2⁴³已知明文與2⁴³ DES運算，顯然比暴力法有效。
公開金鑰演算法則基於多種數學難題，其中最有名的是整數分解和離散對數問題。許多公開金鑰密碼分析在研究如何有效率地解出這些計算問題的數值演算法。例如，已知解出基於橢圓曲線的離散對數問題比相同金鑰大小的整數因數分解問題更困難。因此，為了達到相等的安全強度，基於因數分解的技術必須使用更長的金鑰。由於這個因素，基於橢圓曲線的公開金鑰密碼系統從1990年代中期後逐漸流行。
當純粹的密碼分析著眼於演算法本身時，某些攻擊則專注於密碼裝置執行的弱點，稱為副通道攻擊。如果密碼分析者可以存取到裝置執行加密或回報通行碼錯誤的時間，它就可能使用時序攻擊法破解密碼。攻擊者也可能研究訊息的模式與長度，得出有用的資訊，稱為流量分析，對機敏的敵人這相當有效。當然，社會工程與其它針對人事、社交的攻擊與破密術一併使用時可能是最有力的攻擊法。

密碼學原型

多數的密碼學理論研究在探討密碼學原型：具備基本密碼學特質的演算法以及和其他問題的關連。例如，容易正向運算卻難以逆向運算的單向函式。通常而言，密碼應用如果要安全，就必須保證單向函式存在。然而，如果單向函式存在，就表示P ≠ NP。既然目前P與NP問題仍是未解，我們就無從得知單向函式是否存在。如果單向函式存在，那安全的準亂數產生器與準亂數函式就存在。
目前已知的密碼學原型僅提供基本的機能。通常是機密、訊息完整、認證、和不可否認。任何其他機能都是基本演算法的組合與延伸，這類組合稱為密碼系統。例如PGP、SSH、SSL/TLS、公開金鑰基礎建設和數位簽章等。其他密碼原型還有加密演算法本身、單向排列、暗門排列等。

密碼協定

在許多狀況，密碼技術涉及通訊的雙方或多方（例如公司總部與分部）或是跨越時間（例如保護備份資料）。密碼協議已經擴展到涵蓋多種議題，像是互動證明、秘密分享與零知識，更複雜的有電子鈔票和安全多方計算。
當一個好的密碼系統的安全失效時，很少是密碼學原型出現漏洞。大部分的弱點都發生於協定設計、系統實作、或是某些人為錯誤。許多密碼學協定都在非系統化的過程中發展出來，很少有安全上的証明。一些正規分析協定安全的方式都本於數學邏輯（例如BAN邏輯）或近期的具體安全原則，這些都是數十年來研究人員的主題。很不幸的，這些工具都相當的笨重也無法用於複雜的設計。如何實現與整合密碼學的應用本身是截然不同的領域，參見密碼學工程與安全工程。

禁令

密碼學長期以來都是情報或司法機構的興趣。由於這些單位的隱密性以及禁令後個人隱私的減少，密碼學也是人權支持者關心的焦點。環繞密碼學的法律議題已有很長的歷史，特別是在可以執行高品質密碼的廉價電腦問世後。
在某些國家甚至本國性的密碼學也受限制。直到1999年，法國仍然限制國內密碼學的使用。許多國家有更嚴格的限制，例如白俄羅斯、哈薩克、蒙古、巴基斯坦、俄羅斯、新加坡、突尼西亞、委內瑞拉和越南。
在美國，國內的使用是合法的，但仍然有許多法律衝突。一個特別重要的議題是密碼軟體與硬體的出口管制。由於密碼分析在二戰時期扮演的重要角色，也期待密碼學可以持續在國家安全上效力，許多西方國家政府嚴格規範密碼學的出口。二戰之後，在美國散布加密科技到國外曾是違法的。事實上，加密技術曾被視為軍需品，就像坦克與核武。直到個人電腦和網際網路問世後情況才改變。好的密碼學與壞的密碼學對絕大部分使用者來說是沒有差別的，其實多數情況下，大部分現行密碼技術普遍緩慢而且易出錯。然而當網際網路與個人電腦日益成長，優良的加密技術逐漸廣為人知。可見出口管制將成為商務與研究上的阻礙。

出口管制

在1990年代發生了數件挑戰美國出口規範的事件。其中一件是Phillip Zimmermann的PGP加密程式，於1991年6月在美國連原始碼一併釋出於網際網路。在RSA Security公司提出抗議後，Zimmermann被商務部和聯邦調查局偵訊達數年。接著，柏克萊加州大學的研究生Daniel Bernstein發起了對美國政府的法律訴訟，以言論自由挑戰禁令的某些觀點。1995年的Bernstein v. United States案例促成了在1999年判決印出密碼演算法的原始碼屬美國憲法言論自由保障範圍內。在1996年，39個國家簽訂處理軍武出口的華沙公約。該公約約定使用短金鑰長度（對稱金鑰56位元；RSA　512位元）的密碼學不再受到出口管制。從2000年後，美國出口密碼學已經寬鬆許多。現在，幾乎所有的網際網路使用者都可存取到優良的密碼學，就在瀏覽器內建的傳輸層安全性協定（TLS）或安全通訊協定（SSL）。Mozilla Thunderbird和微軟Outlook電子郵件用戶端程式可以用TLS連結至IMAP或Pop伺服器，並以S/MIME收送加密的電子郵件。許多網路用戶並不知曉他們的基本應用內含大量的密碼系統。這些瀏覽器與郵件程式如此普及，甚至試圖規範市民使用密碼學使用的政府單位也無力從事有效的限制。

美國國家安全域介入

另一個密碼學的爭議點是美國國家安全域（美國國家安全域）在加密法發展的介入。國家安全域考量到將其制訂為國家表準局的聯邦標準，曾介入於IBM發展的DES。DES是NSA與IBM為了克制強力的差分分析法而制定，這個攻擊直到1980年代晚期才公開。根據Steven Levy所說，IBM曾重新發現差分分析法，但被NSA下禁口令。這個攻擊法直到Biham與Shamir在數年後再次發現才公開。這些事情顯示了決定攻擊者擁有哪些資源或知識的困難。還有1993年，NSA涉入用在Capstone計劃的加密微晶片Clipper chip。Clipper飽受密碼學者的批評，其一是因為其加密演算法被列為機密，NSA可能蓄意設計較弱的加密法以達成情報目的；其二是整個計畫案違反柯克霍夫原則，由於這機制使用到一個特別的只有政府才有的委任金鑰，難保沒有竊聽的可能。

數位智慧財產權管理

數位智慧財產權管理又稱數位智財權（Digital rights management, DRM）
密碼學是數位智慧財產權的核心，有許多技術被應用在保障著作權資料的使用。1998年，美國總統比爾·柯林頓（Bill Clinton）簽署了數位千禧年著作權法案（數字千年著作權法, DMCA），明定特定破密技術的重製或散布屬犯罪行為，特別是某些迴避DRM者。這對密碼學研究社群造成了相當嚴重的潛在衝擊，因為任何逆向解碼技術都可以被用於破解DRM從而被認定為違反DMCA。考慮到這些爭議，美國聯邦調查局與司法部並未嚴格執行DMCA。一位密碼學者Niels Ferguson曾公開陳述受DMCA的影響，他將不會釋出部分研究給英特爾安全設計。Linux核心的第二號發展人物艾倫·考克斯與普林斯頓大學教授Edward Felten都曾受到這法案的相關困擾。Dmitry Sklyarov在從俄羅斯到美國存取時曾因違反該法案被監禁達數月，但違反DMCA的作品實際上發生於俄羅斯，而且在俄羅斯是合法行為。類似的事情發生在許多國家。例如歐盟所制定的Copyright Directive。在2007年，負責數位多功能影音光碟與HD DVD防偽的金鑰被發現且是出在網際網路上，同時，美國電影協會發出多個違DMCA的告示，導致大量網際網路使用者回擊，也引出了公平使用與言論自由的議題。