def fully_valid_pubkey?
      return false unless valid_pubkey?
      point = ECDSA::Format::PointOctetString.decode(pubkey.htb, ECDSA::Group::Secp256k1)
      ECDSA::Group::Secp256k1.valid_public_key?(point)
    end
def fully_valid_pubkey?
      return false unless valid_pubkey?
      point = ECDSA::Format::PointOctetString.decode(pubkey.htb, ECDSA::Group::Secp256k1)
      ECDSA::Group::Secp256k1.valid_public_key?(point)
    end
fully validate whether this is a valid public key (more expensive than IsValid())