Explanation of each of the parameters used in ECC I'm having a very difficult time finding a clear explanation of the parameters used elliptic curve cryptography. I know for certain that $p$ is the number or order or whatever of the given field that a particular curve uses. I know that $k$ is what is used as the secret key and that $Q=(Q_x,Q_y)$ is the public key. But playing around on these two pages and seeing the contents of this file have left me more confused. What is the importance of $P$ and how does it differ from $Q$? Do $a$ and $b$ change depending on the key in question or are they held constant for a curve? What is the function of $n$? It always seems to be slightly less in value than $p$. How do $G$, the order of the curve, and the seed fit in?

Finally, how is a number encrypted? Is it done by multiplying $Q$? And how can I extract the coordinates of Q from its "compact" form used in certficates?
I know that k is what is used as the secret key and that $Q=(Q_x,Q_y)$ is the public key. But playing around on these two pages and seeing the contents of this file have letft me more confused. What is the importance of $P$ and how does it differ from $Q$?


Don't get too caught up with variable names. People usually use $P$ and $Q$ to represent points in general. There's really no notation that says $Q$ is always the public key.

The contents of that github file are parameters for Dual EC DRBG, which uses two points $P$ and $Q$, which are related. They're not public keys (atleast in the typical sense).


  Do a and b change depending on the key in question or are they held constant for a curve?


No. $a$, $b$, and $p$ define the curve and do not change.


  What is the function of n? It always seems to be slightly less in value than p. How do G, the order of the curve, and the seed fit in?


$n$ is the order of the point $G$. Simply put, it's the number of possible points you can generate through multiplication of $G$. 

The private key $k$ is $1 \lt k \lt n$. If $k \geq n$ then it's effectively $k \mod n$. So another way to look at $n$ is the number of possible private keys. That's why when we generate curve parameters we want good parameters that give us a large $n$.

The seed is simply the seed for the random number generate that generated the parameters. This is used to show that the numbers were actually generated randomly.


  Finally, how is a number encrypted? Is it done by multiplying Q?


ECC isn't like RSA where you can encrypt a number directly. For encrypting with ECC you basically do half a key exchange by generating a shared secret using the sender's private key and the recipients public key. The sender encrypts the message using this shared secret. The recipient can reconstruct the shared secret key using their private key and the sender's public key, and can decrypt the message.

One common method is ECIES.


  And how can I extract the coordinates of Q from its "compact" form used in certficates?


A coordinate in compressed form will be the $X$ value, a value indicating whether to use the positive or negative $Y$ value. You just need to plug the $X$ value into the equation $Y = \sqrt{x^{3} + ax + b}$. There are algorithms to compute square roots $\mod p$.