You have to follow these properly.
Configure the Public Key in SSH Server
Copy the public key in to SSH Server via SFTP
put publicy_key
Login to SSH server verify the copied public key
ls -l public_key
Since the public key does not have any permissions, change it to 400 (for read)
chmod 400 public_key
Use ssh-keygen tool to create openSSH format public key
ssh-keygen -if public_key > public_key_openssh_format
Add the created openSSH public key to authorized_keys files
cat public_key_openssh_format >> ~/.ssh/authorized_keys
Check the permissions of .ssh folder and authorized_keys file for access permissions
ls -al ~/.ssh
Verify the Key Pairs with PuTTY
Now, the key based authentication can be verified with PuTTY.
Enter the host name and port
Select the private key (.ppk)
Confirm the Security alert
If the configuration is correct, the connection will be established successfully
If you are still stuck. Then you have to re-create the user and follow the steps and configure the public key again.
The user can be recreated using the following command:
Make a copy of the user folder and delete it before recreation.
yast2 users add username=userName cn=" User for test" password="password" gid=100 grouplist=dialout,video type=local
Generally you should be very cautious when you get
WARNING - POTENTIAL SECURITY BREACH!
The server's host key does not match the one PuTTY has cached in the registry.
It's an indication of MITM attack.
See also PuTTY documentation for WARNING - POTENTIAL SECURITY BREACH! (what is the main part of the message, which you somehow omitted in your question).
You never get this message for a new server. Unless, of course, the new server reuses IP address/hostname of some discarded server. In which case, it's ok to ignore the warning.
It is, of course, a public key that is cached by PuTTY. A private key is secret and it must not be accessible to anyone, except for the server administrator. So there's no way SSH client can get it.
The server can indeed have a number of key pairs for different algorithms (one for each algorithm, like RSA, DSA, ECDSA, ED25519). The client and the server will agree on the best algorithm to use (the best out of those supported by both the server and the client).
The key pairs are usually stored in /etc/ssh
(on Linux with OpenSSH).
Though wording of your question hints that you may confuse the server/host key pair with the key pair you use to authenticate to the server.
See my article on Understanding SSH key pairs.
Best Answer
You can of course use the mouse, but that runs the risk of accidentally selecting/pasting due to mouse-movement.
PuTTY recognizes ShiftInsert for pasting from the clipboard. This works reliably (key bounce is rare). You can also change the behavior of the right-click to get a menu, as noted in Greg Ferro's page.
Further reading: