I've been trying to improve my understanding of elliptic-curve cryptography; I'm currently trying to understand the extent to which curves are interchangeable.
Examples of curves: P-256, Curve25519
Examples of algorithms: ECDH, ECDSA, EdDSA
Of the curves I listed, I've read that both are used with ECDH, but I've only read of P-256 being used with ECDSA and Curve25519 being used with EdDSA. Why can both curves be used with ECDH, but only one can be used with each signing algorithm? Or can ECDSA and EdDSA be used with both of those curves, but there just aren't any implementations of that?