Open QuantumExplorer opened 2 weeks ago
The changes in this pull request introduce new functionalities to handle identities associated with non-unique public key hashes across various modules. Key additions include the getIdentitiesForNonUniquePublicKeyHash
RPC method and corresponding request/response message types in the platform.proto
file. Additionally, several new methods and modules have been created in the rs-drive-abci
and rs-sdk
packages to support querying and verifying identities based on non-unique public key hashes. Various existing methods have also been updated for consistency with the new features.
File | Change Summary |
---|---|
packages/dapi-grpc/protos/platform/v0/platform.proto |
Added RPC method getIdentitiesForNonUniquePublicKeyHash and new message types GetIdentitiesForNonUniquePublicKeyHashRequest and GetIdentitiesForNonUniquePublicKeyHashResponse . |
packages/rs-drive-abci/src/query/identity_based_queries/identities_for_non_unique_public_key_hash/mod.rs |
Introduced module for querying identities with method query_identities_for_non_unique_public_key_hash . |
packages/rs-drive-abci/src/query/identity_based_queries/identities_for_non_unique_public_key_hash/v0/mod.rs |
Added method query_identities_for_non_unique_public_key_hash_v0 for handling identity queries. |
packages/rs-drive-abci/src/query/identity_based_queries/mod.rs |
Added new module identities_for_non_unique_public_key_hash . |
packages/rs-drive-abci/src/query/service.rs |
Introduced method get_identities_for_non_unique_public_key_hash in PlatformService trait. |
packages/rs-drive/src/drive/identity/fetch/fetch_by_public_key_hashes/fetch_full_identities_for_non_unique_public_key_hash/mod.rs |
Added method fetch_full_identities_for_non_unique_public_key_hash . |
packages/rs-drive/src/drive/identity/fetch/fetch_by_public_key_hashes/fetch_full_identities_for_non_unique_public_key_hash/v0/mod.rs |
Introduced methods for fetching identities based on non-unique public key hashes. |
packages/rs-drive/src/drive/identity/fetch/fetch_by_public_key_hashes/fetch_identity_ids_by_non_unique_public_key_hash/mod.rs |
Modified method to include an optional limit parameter. |
packages/rs-drive/src/drive/identity/fetch/fetch_by_public_key_hashes/fetch_identity_ids_by_non_unique_public_key_hash/v0/mod.rs |
Updated methods to include limit parameter for fetching identity IDs. |
packages/rs-drive/src/drive/identity/fetch/fetch_by_public_key_hashes/mod.rs |
Added module for fetching full identities. |
packages/rs-drive/src/drive/identity/fetch/prove/mod.rs |
Introduced module for proving identities associated with non-unique public key hashes. |
packages/rs-drive/src/verify/identity/mod.rs |
Added modules for verifying identities associated with non-unique public key hashes. |
packages/rs-platform-version/src/version/drive_abci_versions/drive_abci_query_versions/mod.rs |
Added fields to support new identity query features. |
packages/rs-platform-version/src/version/drive_versions/drive_identity_method_versions/mod.rs |
Added fields for fetching and proving identities with non-unique public key hashes. |
packages/rs-sdk/src/platform/fetch_many.rs |
Added implementation for fetching identities based on non-unique public key hashes. |
packages/rs-sdk/src/platform/types/identity.rs |
Introduced new struct NonUniquePublicKeyHash for handling non-unique public key hashes. |
🐰 In the meadow, hopping around,
New features for identities we have found!
With hashes that aren't unique, oh what a sight,
Fetching and proving, all feels just right!
So let’s celebrate this code, oh so bright! 🌟
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Issue being fixed or feature implemented
We had no way to get identities having a non unique public key hash. This would cause a problem trying to looking identities by public keys that are hashes in the state.
What was done?
Added the ability to lookup identities by non unique public key hash.
How Has This Been Tested?
Added a few unit tests.
Breaking Changes
Nothing should be breaking.
Checklist:
For repository code-owners and collaborators only
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Chores