高级加密标准
進階加密标准（，缩写：），又称Rijndael加密法（，音似英文的「Rhine doll」），是美国联邦政府采用的一種區塊加密标准。这个标准用来替代原先的DES，已經被多方分析且廣為全世界所使用。經過五年的甄選流程，進階加密標準由美國國家標準與技術研究院（NIST）於2001年11月26日發佈於FIPS PUB 197，並在2002年5月26日成為有效的標準。現在，進階加密标准已然成為对称密钥加密中最流行的演算法之一。
该演算法為比利时密码学家Joan Daemen和Vincent Rijmen所設計，結合兩位作者的名字，以Rijndael為名投稿進階加密標準的甄選流程。
Rijndael是由Daemen和Rijmen早期所设计的改良而來；而Square則是由SHARK发展而来。
不同於它的前任標準DES，Rijndael使用的是代换-置换网络，而非Feistel架構。
严格地说，AES和Rijndael加密法並不完全一樣（虽然在实际应用中兩者可以互换），因为Rijndael加密法可以支援更大範圍的區塊和密钥长度：AES的區塊長度固定為128位元，密钥长度則可以是128，192或256位元；而Rijndael使用的密钥和區塊长度均可以是128，192或256位元。加密過程中使用的密钥是由Rijndael密钥生成方案產生。
大多数AES计算是在一个特别的有限域完成的。
AES加密過程是在一個4×4的位元組矩陣上運作，這個矩陣又称为「体（state）」，其初值就是一個明文區塊（矩陣中一個元素大小就是明文區塊中的一個Byte）。（Rijndael加密法因支援更大的區塊，其矩陣的「列數（Row number）」可視情況增加）加密时，各轮AES加密迴圈（除最后一轮外）均包含4个步骤：AddRoundKey步驟，回合金鑰將會與原矩陣合併。在每次的加密迴圈中，都會由主密鑰產生一把回合金鑰（透過Rijndael密鑰生成方案產生），這把金鑰大小會跟原矩陣一樣，以與原矩陣中每個對應的位元組作异或（⊕）加法。
在SubBytes步骤中，矩陣中的各字節透過一個8位元的S-box進行轉換。這個步驟提供了加密法非線性的變換能力。S-box與formula_1上的乘法反元素有關，已知具有良好的非線性特性。為了避免簡單代數性質的攻擊，S-box結合了乘法反元素及一個可逆的仿射變換矩陣建構而成。此外在建構S-box時，刻意避開了不動點與，即以S-box替換字節的結果會相當於錯排的結果。條目有針對S-box的詳細描述。 ShiftRows描述矩陣的行操作。在此步驟中，每一行都向左循環位移某個偏移量。在AES中（區塊大小128位元），第一行維持不變，第二行裡的每個位元組都向左循環移動一格。同理，第三行及第四行向左循環位移的偏移量就分別是2和3。128位元和192位元的區塊在此步驟的循環位移的模式相同。經過ShiftRows之後，矩陣中每一竖列，都是由輸入矩陣中的每個不同列中的元素組成。Rijndael演算法的版本中，偏移量和AES有少許不同；對於長度256位元的區塊，第一行仍然維持不變，第二行、第三行、第四行的偏移量分別是1位元組、2位元組、3位元組。除此之外，ShiftRows操作步驟在Rijndael和AES中完全相同。 在MixColumns步骤，每一列的四個位元組透過线性变换互相結合。每一列的四個元素分別當作formula_2的係數，合併即為formula_1中的一個多項式，接著將此多項式和一個固定的多項式formula_4在模formula_5下相乘。此步驟亦可視為之下的矩陣乘法。MixColumns函数接受4個位元組的輸入，輸出4個位元組，每一個輸入的位元組都會對輸出的四個位元組造成影響。因此ShiftRows和MixColumns兩步驟為這個密碼系統提供了。 以下條目有對MixColumns更加詳細的描述： 使用32或更多位元定址的系統，可以事先對所有可能的輸入建立對應表，利用查表來實作SubBytes，ShiftRows和MixColumns步驟以達到加速的效果。這麼作需要產生4個表，每個表都有256個格子，一個格子記載32位元的輸出；約佔去4KB（4096位元組）記憶體空間，即每個表佔去1KB的記憶體空間。如此一來，在每個加密迴圈中，只需要查16次表，作12次32位元的XOR運算，以及AddRoundKey步驟中4次32位元XOR運算。若使用的平台記憶體空間不足4KB，也可以利用循環交換的方式一次查一個256格32位元的表。
然而，實際實作中應避免使用這樣的對應表，否則可能因為產生快取命中與否的差別而使旁道攻擊成為可能。
截至2006年，针对AES唯一的成功攻击是旁道攻击或社會工程學攻擊。美国国家安全局审核了所有的參與競選AES的最終入圍者（包括Rijndael），认为他們均能夠满足美国政府傳遞非機密文件的安全需要。2003年6月，美国政府宣布AES可以用于加密机密文件：
（譯：AES加密演算法（使用128，192，和256位元密鑰的版本）的安全性，在設計結構及密鑰的長度上俱已到達保護機密資訊的標準。最高機密資訊的傳遞，則至少需要192或256位元的密鑰長度。用以傳遞國家安全資訊的AES實作產品，必須先由國家安全局審核認證，方能被發放使用。）
这标志着，由美国国家安全局NSA批准在最高机密資訊上使用的加密系統首次可以被公開使用。许多大众化产品只使用128位元密鑰當作預設值；由於最高機密文件的加密系統必須保證數十年以上的安全性，故推測NSA可能認為128位元太短，才以更長的密鑰長度為最高機密的加密保留了安全空間。
通常破解一個區塊加密系統最常見的方式，是先對其較弱版本（加密迴圈次數較少）嘗試各種攻擊。AES中128位元密鑰版本有10個加密迴圈，192位元密鑰版本有12個加密迴圈，256位元密鑰版本則有14個加密迴圈。至2006年為止，最著名的攻擊是針對AES 7次加密迴圈的128位元密鑰版本，8次加密迴圈的192位元密鑰版本，和9次加密迴圈的256位元密鑰版本所作的攻擊。
由於已遭破解的弱版的AES，其加密迴圈數和原本的加密迴圈數相差無幾，有些密碼學家開始擔心AES的安全性：要是有人能將該著名的攻擊加以改進，這個區塊加密系統就會被破解。在密碼學的意義上，只要存在一個方法，比窮舉法還要更有效率，就能被視為一種「破解」。故一個針對AES 128位元密鑰的攻擊若「只」需要2計算複雜度（少於窮舉法2），128位元密鑰的AES就算被破解了；即便該方法在目前還不實用。從應用的角度來看，這種程度的破解依然太不切實際。最著名的暴力攻擊法是針對64位元密鑰RC5所作的攻擊。
其他的爭議則著重於AES的數學結構。不像其他區塊加密系統，AES具有相當井然有序的代數結構。雖然相關的代數攻擊尚未出現，但有許多學者認為，把安全性建立於未經透徹研究過的結構上是有風險的。Ferguson，Schroeppel和Whiting因此寫道：「...我們很擔心Rijndael演算法應用在機密系統上的安全性。」
2002年，和發表名為的理論性攻擊，試圖展示AES一個潛在的弱點。但該攻擊的數學分析有點問題，推測應是作者的計算有誤。因此，這種攻擊法是否對AES奏效，仍是未解之謎。就現階段而言，XSL攻擊AES的效果不十分顯著，故將之應用於實際情況的可能性並不高。
旁道攻击，又称旁路攻击、侧信道攻击，是一种基于从密码系统的物理实现中获取的信息的攻击方式。它不攻击加密算法本身，而是攻击那些基於不安全系統（會在不經意間洩漏資訊）上的加密系統。
2005年4月，公佈了一种缓存时序攻击法，他以此破解了一个装载OpenSSL AES加密系統的客戶伺服器。為了設計使該伺服器公佈所有的時序資訊，攻击算法使用了2亿多条筛选过的明码。对于需要多个跳跃的国际互联网而言，这样的攻击方法并不实用。Bruce Schneier稱此攻擊為「好的時序攻擊法」。
2005年10月，Eran Tromer 和另外兩個研究員發表了一篇論文，展示了數種針對AES的緩存時序攻擊法。