I know that the client needs a client key-pair for client authentication; Clients sends its public key to the Server for it to encrypt a challenge which will be decrypted by the Client to authenticate the Client.
I also know that before authenticating the Client, the Client needs to authenticate the Server by storing the host public key in ~/.ssh/known_hosts
However, why does the Server need a host key-pair? It seems like only the host's public key is needed, why do we need asymmetrical keys for this?