hasKeys
Whether the provider holds any key. Never creates, rotates, repairs or replaces a key, and changes nothing. Throws StorageEncryptionException.KeyUnavailable if the provider's state exists but cannot be read (it never reports such state as empty).
Storage uses it to tell a genuine database from before record encryption (no key yet) from one whose encryption marker was turned back (S1, finding F7; docs/storage-encryption.md).