I'm currently working on a school project that aims at creating a P2P chat client for users on the same network. For now, it will only be used by users on the same LAN network. But hopefully,I will to extend to work for users on the same public Wifi(if that's possible, is it?).I'm new to the .NET enviroment but have programmed in Java for the last a year. What is confusing me at the moment is how to store users information like username, password, account picture...etc. I was thinking of creating a database and storing them there but that seems inconvienent and since the app won't connect to some sort of server it might affect portability. How would you guys do this if you were working on such app? And also I started this thread so that I could also discuss some issues I face while developing(none so far) and get help.Thanks in advance.

I'm not sure I see the benefit of P2P rather than having a controlling server if you're looking at having secured user access (since you mentioned a password). Sure, you could store an identity account locally and transfer the relevant data to peers on connection acceptance, but that's more of a usability feature than any kind of security. It's also relatively easy to spoof.

Can you elaborate on the overall design goals of your chat application?