https://github.com/trustbloc/edv
Encrypted data vault implementation in Golang - https://identity.foundation/edv-spec/
https://github.com/trustbloc/edv
encrypted-data storage
Last synced: 28 days ago
JSON representation
Encrypted data vault implementation in Golang - https://identity.foundation/edv-spec/
- Host: GitHub
- URL: https://github.com/trustbloc/edv
- Owner: trustbloc
- License: apache-2.0
- Archived: true
- Created: 2020-01-09T15:49:51.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2023-04-04T21:23:27.000Z (almost 3 years ago)
- Last Synced: 2025-08-15T02:18:18.067Z (6 months ago)
- Topics: encrypted-data, storage
- Language: Go
- Homepage:
- Size: 2.1 MB
- Stars: 16
- Watchers: 11
- Forks: 17
- Open Issues: 57
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/trustbloc/edv/releases/latest)
[](https://raw.githubusercontent.com/trustbloc/edv/main/LICENSE)
[](https://godoc.org/github.com/trustbloc/edv)
[](https://github.com/trustbloc/edv/actions/workflows/build.yml)
[](https://codecov.io/gh/trustbloc/edv)
[](https://goreportcard.com/report/github.com/trustbloc/edv)
# edv
An implementation of the [Encrypted Data Vaults v0.1 (20 June 2022) specification](https://identity.foundation/edv-spec/). This implementation is a work in progress; be sure to read the [limitations](#limitations) section which outlines which parts of the specification have yet to be implemented.
## Limitations
The following has not yet been implemented:
* Service endpoint discovery
* Encrypted attribute querying with multiple name+value pairs
* Support for the unique property on an encrypted attribute pair
* Streams (also a work in-progress in the [specification](https://identity.foundation/edv-spec/))
## Underlying Storage
This EDV server is not by itself a database - a database provider must be chosen for it to work. This underlying database is used by the EDV server for storage of encrypted data. Currently, three database providers are supported:
- MongoDB
- CouchDB
- In-memory storage
See [here](docs/rest/edv_cli.md#edv-server-parameters) for information on how to choose the database provider.
## Extensions
This EDV server implementation includes support for an optional feature that, as of writing, is in the spec but is marked "at-risk". It is disabled by default, but can be safely enabled without breaking any standard features. Non-extension-aware clients will still work seamlessly. See the [extensions documentation](docs/extensions.md) for more information.
## Documentation
- [Build + BDD tests](docs/test/build.md)
- [Run as Binary with CLI](docs/rest/edv_cli.md)
- [Run as Docker Container](docs/rest/edv_docker.md)
- [OpenAPI Spec](docs/rest/openapi_spec.md)
- [OpenAPI Demo](docs/rest/openapi_demo.md)
## Contributing
Thank you for your interest in contributing. Please see our [community contribution guidelines](https://github.com/trustbloc/community/blob/main/CONTRIBUTING.md) for more information.
## License
Apache License, Version 2.0 (Apache-2.0). See the [LICENSE](LICENSE) file.