code: func (s *Session) publicKey() ([]byte, error) {
  	response, err := s.Channel.transmitEncrypted(claSCWallet, insExportKey, exportP1Any, exportP2Pubkey, nil)
  	if err != nil {
  		return nil, err
  	}
  	keys := new(keyExport)
  	if _, err := asn1.UnmarshalWithParams(response.Data, keys, "tag:1"); err != nil {
  		return nil, err
  	}
  	return keys.PublicKey, nil
  }
docs: // publicKey returns the public key for the current derivation path.