An SDK for cross-platform identity authentication and end-to-end encrypted communication based on DID
Project description
Cross-Platform Identity Authentication and End-to-End Encrypted Communication Technology Based on DID
Author: Chang Gaowei
Email: chgaowei@gmail.com
Website: pi-unlimited.com
中文版本: 中文版本readme
Abstract
This project is an open-source SDK implementation based on Decentralized Identifier (DID) and end-to-end encrypted communication technology. For technical details, refer to the Technical White Paper: A Cross-Platform Identity Authentication and End-to-End Encrypted Communication Technology Based on DID. With the didall open-source project, any intelligent agent or server can connect to the DID server, register its DID, accept connections from other users, connect to other users, and engage in end-to-end encrypted communication.
Features
- Cross-Platform Identity Authentication: Achieves identity interoperability across different platforms using DID.
- End-to-End Encrypted Communication: Uses ECDHE for short-term key agreement to ensure communication security.
- Efficient and Secure: Simplifies the identity verification process, ensuring data confidentiality and integrity.
Installation
The latest version has been removed from PyPI, so install directly:
pip install didall
Usage
After installing the didall library, you can run the sample code in the examples directory to generate DID files for Alice and Bob, save Alice's DID file to the DID server, and then have Bob connect to Alice's DID for end-to-end encrypted communication.
- Generate two DID documents, alice.json and bob.json, save them to the specified files, and register them with the DID server:
python sample_did.py alice.json
python sample_did.py bob.json
- Start Alice's demo:
python sample_alice.py alice.json
- Start Bob's demo:
python sample_bob.py bob.json
By checking the logs, you can see that Alice and Bob have successfully connected and engaged in end-to-end encrypted communication.
Contributing
Contributions to this project are welcome. Please read the contribution guidelines before submitting a pull request.
License
This project is open-sourced under the MIT License. For more details, please refer to the LICENSE file.
Packaging and Uploading (update the version number in setup.py first)
python setup.py sdist bdist_wheel
twine upload dist/*
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file didall-0.1.5.tar.gz
.
File metadata
- Download URL: didall-0.1.5.tar.gz
- Upload date:
- Size: 30.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28c8539cbf5c659fd44669e48f8315107260fc3cb7e95cd9d06035f9c4f79ef9 |
|
MD5 | f4a6c0e1511ed92f2368cc00f11e7082 |
|
BLAKE2b-256 | fc6554df1af137365050738d51da5c1099957a7c80dc72066e0592d344fd8987 |
File details
Details for the file didall-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: didall-0.1.5-py3-none-any.whl
- Upload date:
- Size: 39.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cad41a160b16f9a9099801196921ecc4b7ea0858c283105b57bca2fb978ba802 |
|
MD5 | 1d44c61c03618f482ffc33d672214c6a |
|
BLAKE2b-256 | be0236755ed817fc31e13167cfbf4a12d735006cbfaa1ff87fae147f09e0a054 |