Why does HTTPS/SSL need a certificate to do secure transmission, while SSH does not?
  HTTPS (HTTP Secure) and SSH (Secure Shell) are both cryptographic protocols used for secure communication over a network, but they use different approaches to achieve security.

HTTPS uses SSL/TLS (Secure Sockets Layer/Transport Layer Security) to establish a secure connection between a client and a server. SSL/TLS uses a certificate-based system to identify the server and establish trust. The client verifies the server's identity by checking the server's certificate, which is issued by a Certificate Authority (CA). The certificate contains the server's public key, as well as other identifying information such as the server's name and location.

The reason HTTPS needs a certificate is that it provides a way for the client to verify the server's identity and ensure that the communication is truly secure. Without a certificate, an attacker could potentially impersonate the server and intercept the communication. The certificate provides a way for the client to verify that the server is who it claims to be, and that the communication is being conducted with the intended server and not an imposter.

On the other hand, SSH does not use a certificate-based system for authentication and encryption. Instead, it uses a public key-based system, where each user has a private key and a corresponding public key. When a user connects to a server using SSH, the server provides the user with its
The difference in how HTTPS/SSL and SSH handle secure communications primarily stems from their design goals, use cases, and how they establish trust.

### HTTPS/SSL:
1. **Purpose**: HTTPS (HTTP over SSL/TLS) is designed for secure web communications. It is mainly used to secure the transmission of data between a web server and a web browser.

2. **Public Key Infrastructure (PKI)**: HTTPS relies on a system of certificates issued by Certificate Authorities (CAs). When a client connects to a server, the server presents its SSL certificate, which contains the server's public key and is signed by a trusted CA. The client verifies this certificate to ensure that it is communicating with the legitimate server and not an impostor (e.g., through a man-in-the-middle attack).

3. **Trust Model**: The trust model for HTTPS is based on a hierarchical structure where trusted CAs validate the identity of the server. This is essential for public-facing services where users may not have prior knowledge of the server's identity.

4. **Domain Validation**: SSL certificates are tied to specific domain names. This means that a certificate can only be used by the server it was issued to, helping to prevent impersonation.

### SSH:
1. **Purpose**: SSH (Secure Shell) is primarily designed for secure remote administration and file transfers. It is often used for secure command-line access to servers.

2. **Key Pair Authentication**: SSH uses a different approach for