-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: implement IssuanceServices
for signing and verifying
#98
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
nanderstabel
added
the
Enhancement
New feature or improvement to an existing feature
label
Jul 29, 2024
2 tasks
nanderstabel
force-pushed
the
feat/issuance-service
branch
from
July 29, 2024 16:09
aa4e06e
to
20c5ca9
Compare
7 tasks
daniel-mader
approved these changes
Aug 2, 2024
berkes
pushed a commit
to educredentials/ssi-agent
that referenced
this pull request
Aug 14, 2024
…ierce#98) * refactor: undo unnecessary changes * docs: list all config values * refactor: rename config file * refactor: remove example files from docker image * refactor: merge config files * refactor: update .dockerignore to include all Dockerfiles and .env files * WIP: migrate from config macro to config function * refactor: configs for `log_format` and `event_store` * refactor: remove unused macros calls * refactor: migrate `url` config * refactor: `secret_manager` config * refactor: `credential_configurations` config * refactor: rename `DidMethodOptions`, add config for `signing_algorithms_supported` * refactor: determine default DID method * refactor: remove comments, load env variables * WIP: refactor `event_publishers` config * refactor: remove `metadata` * refactor: remove `config!` macro * refactor: rename `config_2` to `config` * chore: change example logo, disable `event_publisher`, respect `default_did_method` * chore: resolve clippy issues * refactor: remove `set_metadata_configuration` * refactor: remove `TEST_METADATA` * WIP * test: fix tests * ci: update docker-compose * fix: replace `localhost` with container name * refactor: clean up code * chore: fix unused import * chore: remove unused deployment scripts * refactor: read `connection_string` inside postgres module * refactor: rename env prefix to `UNICORE` * feat: init `IsuanceService` * refacotr: remove unused code * feat: add `from_jsonwebtoken_algorithm_to_jwsalgorithm` helper function * chore: remove unused code * feat: add `generate_stronghold` option * chore: update logo URI's in example config file * chore: remove temp stronghold file * chore: remove `example-config.yaml` file * chore: remove unused `identity_iota` dependencies * refactor: remove unused 'services' * refactor: use `from_jsonwebtoken_algorithm_to_jwsalgorithm` * fix: reset config source to `agent_application/config.yaml` * feat: update config files * chore: update docker-compose file * fix: don't use `example.config.yaml` by default --------- Co-authored-by: Daniel Mader <daniel.mader@impierce.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of change
At the moment we have two different approaches of utilizing the
SecretManager
for signing and verifying in UniCore.agent_issaunce
we load theSecretManager
each time we either Sign a Credential, or Verify an incomingCredentialRequest
.agent_verifiaction
one single instance of theSecretManager
is loaded on initialization of UniCore and this instance will be reused for all signing and verifying.The loading of the
SecretManager
takes a significant amount of time and therefore this PR introduces the same approach used inagent_verification
toagent_issuance
.To illustrate how this change (positively) affects UniCore's latency, below are the first and last log messages when UniCore receives a call to the
/openid4vci/credential
endpoint both before and after the changes in this PR.Before (latency ≈ 2.4 seconds):
After (latency ≈ 0.4 seconds):
Links to any relevant issues
Fixes #99
How the change has been tested
Manually tested using the Postman Collection
Definition of Done checklist
Add an
x
to the boxes that are relevant to your changes.