Algoritmul lui Grover ar funcționa împotriva CBC. Vrei să spui că ai câteva mii de mesaje text simplu/cifrat, fiecare cu propriul IV?
Nu sunt sigur ce faci la pasul 2. Cred că, în general, IV-ul este considerat parte a textului cifrat, așa că dacă ai textul cifrat, ai IV-ul și apoi ajungi cu ecuații precum:
AES-128$_d$(C$_1$, K) = IV $\oplus$ P$_1$
AES-128$_d$(C$_2$, K) = C$_1 \oplus$ P$_2$
etc.
Pentru algoritmul lui Grover, deoarece cunoașteți partea dreaptă și cunoașteți intrarea pentru decriptarea AES, puteți căuta în spațiul lui K și, pentru oracol, utilizați un circuit pentru a efectua decriptarea AES a lui C.$_1$, C$_2$, etc. și comparați cu valoarea din partea dreaptă.
Pentru aproape siguranța că valoarea returnată K este corectă, veți avea nevoie doar de 2 blocuri pentru AES-128 (adică doar C$_1$ și C$_2$ dintr-un mesaj), 2 blocuri pentru AES-192 și 3 blocuri pentru AES-256. În general, dacă utilizați $r$ blocuri, fiecare cu $n$ biți și cu o cheie de $k$ biți, probabilitatea ca căutarea lui Grover să găsească cheia corectă este de aproximativ $e^{-2^{k-rn}}$. Astfel, dacă $k < rn$, vi se garantează, practic, rezultatul corect (consultați secțiunea „Taste false” de la pagina 4 din această hârtie pentru o derivare).