code: func (r *keyring) Add(priv interface{}, cert *ssh.Certificate, comment string) error {
  	r.mu.Lock()
  	defer r.mu.Unlock()
  	if r.locked {
  		return errLocked
  	}
  	signer, err := ssh.NewSignerFromKey(priv)
  
  	if err != nil {
  		return err
  	}
  
  	if cert != nil {
  		signer, err = ssh.NewCertSigner(cert, signer)
  		if err != nil {
  			return err
  		}
  	}
  
  	r.keys = append(r.keys, privKey{signer, comment})
  
  	return nil
  }
docs: // Insert adds a private key to the keyring. If a certificate
  // is given, that certificate is added as public key.