curl -u <username>: --key ~/.ssh/id_rsa --pubkey ~/.ssh/id_rsa.pub sftp://<remote_host>/<remote_path>
HTTP is not secure, so any data that you send during PUT (for example, the password or files that you upload) could be viewed and read in text form. Depending on your application, this may or may not be a problem for you.