code: func unmarshalECKey(curve elliptic.Curve, pubkey []byte) (x, y *big.Int, err error) {
  	x, y = elliptic.Unmarshal(curve, pubkey)
  	if x == nil {
  		return nil, nil, errors.New("ssh: elliptic.Unmarshal failure")
  	}
  	if !validateECPublicKey(curve, x, y) {
  		return nil, nil, errors.New("ssh: public key not on curve")
  	}
  	return x, y, nil
  }
docs: // unmarshalECKey parses and checks an EC key.