private void GenerateKeys(byte[] highCostSecret)
        {
            SecureRandom seededPRNG = CBCrypt.GetSeededDigestRandomGenerator(highCostSecret);

            this.AsymmetricKey = CBCrypt.GenerateKeyPair(seededPRNG);
            this.SymmetricKey  = new byte[32];
            seededPRNG.NextBytes(this.SymmetricKey);
        }
 public CBCryptKey(string CBCryptHostId, string username, string password)
 {
     byte[] highCostSecret = CBCrypt.GenerateHighCostSecret(CBCryptHostId, username, password);
     GenerateKeys(highCostSecret);
 }