This should be abstractmethod to be consistent with how we did it for RSA