Synchronous stream cipher is used for encryption that satisfies:
encrypt(k2,encrypt(k1,x))≡encrypt(k1,encrypt(k2,x))encryptpartial(k)∘decryptpartial(k)≡identity
C stands for the collection of 52 cards:
C=(c1,c2,...,c52)
The whole collection is encrypted with a single key
Cencrypted=encrypt(k,C)=(encrypt(k,c1),…,encrypt(k,c52))
In this step Alice & Bob encrypt & shuffle collection of 52 cards each with own single key
In these steps Alice & Bob encrypt each card with an independent key:
K=(k1,k2,…,k52)Cencrypted=encrypt(K,C)=(encrypt(k1,c1),…,encrypt(k52,c52))
K=(k1,k2,…,k52)K=(k1,k2,…,k52)Cencrypted=encrypt(K,C)=(encrypt(k1,c1),…,encrypt(k52,c52))
The final encryption with 52 keys
The whole encryption procedure made by all clients: