Na łańcuchu Plasma bloki same w sobie niewiele różnią się od zwykłych łańcuchów, transakcje i aktualizacje stanu odbywają się wewnątrz podłańcucha. Jednak od samego początku Plasma nie zamierzała ujawniać tych szczegółów głównemu łańcuchowi.
Po wygenerowaniu każdego bloku Plasma operatorzy robią tylko jedną rzecz:
wszystkie transakcje i stany w bloku są haszowane, generując Merkle Root (niektóre implementacje to Root transakcji, inne to Root stanu / UTXO).
Ten Root zasadniczo jest:
„Do tego bloku, wszystkie historyczne odciski palców.”
Ten krok to pierwsza kompresja Plasma — niezależnie od tego, ile transakcji znajduje się w bloku, główny łańcuch ostatecznie widzi tylko hasz o stałej długości.
Następnie następuje druga kompresja.
Plasma nie spieszy się z dodawaniem każdego bloku do łańcucha, a zamiast tego pakuje nagłówki wielu bloków razem, tworząc wyższy poziom Root. Główny łańcuch często otrzymuje nie pojedynczy nagłówek bloku, ale jednolitą obietnicę stanu Plasma na dany okres czasu.
Ostatecznie przesyłana do głównego łańcucha zawartość jest bardzo powściągliwa:
• Numer bloku lub zakres
• Odpowiedni Root
• Niezbędne informacje czasowe
Główny łańcuch nie weryfikuje transakcji, ani nie przechowuje danych, tylko traktuje te Root jako niezmienne punkty czasowe.
Gdy ktoś się wycofa lub zakwestionuje, Plasma wymagają, abyś przyniósł dane transakcji i dowód Merkle, aby porównać te nagłówki bloków „sprawdzając księgę”.
Zwykle nie liczy się to, co do zasady, liczy się tylko w sytuacji kryzysowej, to jest sedno logiki kompresji nagłówków bloków Plasma i ich przesyłania do głównego łańcucha.

