Seems like you could use the cached self.to_der in the == and hash methods below?