1. A method for creating a shared secret for use in communicating confidential information, the method comprising: receiving, via a member user interface, a group identification, user id, and user passcode; generating, by a n-bit generator using the group identification, the user id, and the user passcode as inputs, a first m-bit result, the first m-bit result including a file name and encryption key; generating, by the n-bit generator using a group-agreed seed as input, a second m bit result, the second m-bit result including a shared secret; encrypting said shared secret using said encryption key to produce an encrypted shared secret, wherein encrypting the shared secret comprises selecting the encryption algorithm from among a plurality of encryption algorithms according to an encryption algorithm identifier according to information extracted from the first m-bit result; assigning the file name to the encrypted shared secret; and storing the encrypted shared secret in a secrets directory under the assigned file name.
6. The method of claim 1 , wherein the information extracted from the first m-bit result is a key length of the encryption key.