Aș dori să înțeleg corect mecanismul de umplutură utilizat în rutarea cepei. Următoarele sunt preluate din lucrarea originală despre rutarea cepei[https://www.onion-router.net/Publications/IH-1996.pdf].
Observați că la fiecare hamei, ceapa se micșorează pe măsură ce un strat este decojit. La
evitați ca nodurile compromise să deducă informații despre rută din aceasta
Dimensiunea în scădere monotonă, un șir de biți aleatoriu de dimensiunea
stratul decojit este atașat la capătul încărcăturii utile înainte
expediere. Niciun proxy, cu excepția ultimului, nu va ști cât este din sarcina utilă pe care o primește
astfel de căptușeală pentru că nu va ști unde se află în lanț. Pur și simplu „decriptează” fișierul
umplutură împreună cu restul de ceapă
Pentru a face întrebarea mea concretă, să presupunem că lanțul are lungimea 3 constând din $X$, $Y$, $Z$, Unde $Z$ este ultimul nod din lanț. Să presupunem, de asemenea, că cheile lanțului au fost deja stabilite. Din intelesul meu, daca sursa vrea sa trimita $M$ la o destinație folosind acest lanț, acesta criptează $M$ după cum urmează:
$$
O_Z = \left[\_,C_Z = E.K_{FZ}(M), T_Z=\text{MAC}.K'_{FZ}(C_Z)\right] \
O_Y = \left[Z, C_Y = E.K_{FY}(O_Z), T_Z=\text{MAC}.K'_{FY}(C_Y)\right] \
O_X = \left[Y, C_X = E.K_{FX}(O_Y), T_Z=\text{MAC}.K'_{FX}(C_X)\right]
$$
presupunând că criptarea autentificată este utilizată pentru a cripta încărcătura utilă.
Dacă $X$ primeste $O_X$ de la expeditor, $X$ peale ale stratului exterior și trimite $O_Y$ la $Y$ și așa mai departe. Este clar că dimensiunea cepei se va micșora dacă numai ceapa decriptată este transmisă.
Dacă X adaugă umplutură aleatoare la $O_Y$ înainte de a-l trimite la $Y$, cum poate $Y$ știți dimensiunea căptușelii? Dacă $Y$ poate determina cumva dimensiunea căptușelii, cred $Y$ poate ști unde se află în lanțul care contrazice ceea ce este argumentat în lucrarea originală. Ce îmi lipsește aici?