8. A method for protecting data for N users using N passphrases respectively known to the N users such that N is at least 2, comprising: encrypting data using a master key according to a first symmetric encryption algorithm, to provide encrypted data; deriving a key encryption key for each user from the passphrase known to each user; encrypting the master key using the key encryption key of each user according to a second symmetric encryption algorithm, to provide an encrypted master key for each user; deriving a verification key for each user from the passphrase known to each user, said verification key for each user differing from said key encryption key for each user; and posting the encrypted data along with an ancillary file for access by the user, said ancillary file comprising a user identifier specific to each user, the encrypted master key for each user, and the verification key for each user, wherein said deriving said verification key for each user comprises: hashing the passphrase known to each user, to provide a hashed passphrase pertaining to each user; altering the hashed passphrase pertaining to each user to provide an altered passphrase pertaining to each user; hashing the altered passphrase pertaining to each user, to provide a result pertaining to each user; and truncating the result pertaining to each user, to provide the verification key for each user.
9. The method of claim 8 , wherein said altering comprises concatenating a predetermined text with the hashed passphrase pertaining to each user to provide the altered passphrase pertaining to each user.