I'm interested in developing a framework, which would allow anyone, with a basic programming knowledge, to develop p2p applications. It would need to handle lookups in the local network, as well as providing a reliable way to find other nodes across the internet. Other features supported should include NAT traversal, to establish connections between different nodes inside private networks and a simple relay mechanism which could be set up on a small dedicated server, which don't cost too much anymore. I also thought about using PGP to handle encryption and identification.
Now looking at ethereum, I'm not sure how this would fit in my concept. I'm not saying that it has to fit, I'm just trying to understand what exactly Ethereum can do, or is supposed to be able to do. As far as I've understood it so far, I could use it instead of PGP and it would provide also further functionality, like transactions and distribution of information without anyone being able to alter it.
Is this what Ethereum is designed for, or can you clarify for me the actual idea?
Do I want to use Ethereum instead of PGP if I want to use it only for encryption and identification? Or do I want to allow in my framework both systems to coexist? Would Ethereum be used by people which are developing applications with my framework to have a reliable communication on top of TCP and HTTP (or what other underlying protocols I would choose to use), and I wouldn't need to consider it in my framework at all? Also, how is Ethereum licenced?
Thank you for your time and answers.