Number of keys when using symmetric and asymmetric encryption? Quoting part of my homework/assignment:


  How many keys are required for secure communication among 1000 person if: 
  
  
  Symmetric key encryption algorithm is used?
  Asymmetric key encryption algorithm is used?
  


My guess:

For symmetric they each need to maintain and transfer their own key, so probably $1000 \times 1000$, and for asymmetric maybe just $2000$, each having one public one private. 

Is that correct?
For the symmetric key, you can approach this problem as a complete graph with order 1000. With the vertexes representing people and the edges representing the symmetric keys. Then each vertex would have degree 999 and, applying the Handshaking lemma, the number of edges would be:

$(1000 \times 999)/2 = 499500$

So they would need 499500 symmetric keys to have a secure communication between all of them.

For the asymmetric keys, each one would have 2 keys, so a total of 2000 keys.