I do not understand the multiplication technique using triples and secret shares of the inputs. Could somebody explain me where I'm wrong? It works like this: The inputs are secret shared in XOR shares.
Alice holds $[x]_a$ and $[y]_a$ and a share of a multiplication triple $[a]_a,[b]_a,[c]_a$ s.t. $a \cdot b = c$. Bob holds the other shares.
Now multiplication is supposed to work as follows:
Both parties do the following: $$[d] = [x] \oplus [a]$$
$$[e] = [y] \oplus [b]$$
Both parties reveal their shares of $[d]$ and $[e]$ to each other. Then both calculate $$ [z] = [c] \oplus e[x] \oplus d[y] \oplus ed $$
To reveal the result of their computation one party sends the other party its secret shares.
My questions:
How is reconustruction working? If I XOR the two shares of $z$, the last bit ($... \oplus ed$) cancels out. I have seen this trick in many lecture notes and in all of them they analyze the correctness for showing that $xy = c \oplus ex \oplus dy \oplus ed$, but I don't see how this directly relates to the shares.