diff --git a/readme.md b/readme.md
index 2b6913c..2f887ab 100644
--- a/readme.md
+++ b/readme.md
@@ -90,12 +90,11 @@ First up, we have to establish what requirements this transformation must fulfil
Let's be honest, I'm not a cryptographer, I have no idea how collision resistant this is.
This means, it has to be considered *insecure*!
I have tried a few passwords brute-forcibly, experimentally (about 1mil) and have not been able to produce a collision.
-Obviously there have to be collisions, since *|P|, len\(p\) ∈ ℵ ≫ |C|*.
+Obviously there have to be collisions, since *|P|, len\(p\) ∈ ℵ ≫ |C|, len(c)*.
How does it work? Basically, what happens is your password gets recoded to binary. It is then split into blocks of
-size KEY_SIZE, they are ⨁ together, and this single block is then encrypted with itself as a key.
+size KEY_SIZE, and they are combined using *ci+1 = ci ⨁ E(c=blocki, k=blocki)*. *c0* is a static initialization vector. The final *c* is they key corresponding to a password.
-The end result is the key corresponding to your password.
This is a one-way operation. Since the key used for this operation is the cleartext itself, you cannot undo it without already
knowing the password(=cleartext) to begin with. *You could make a hashfunction out of this.*