1 unstable release
new 0.1.0 | Dec 9, 2024 |
---|
#14 in #prototype
19KB
368 lines
Identity Module
Purpose : Uses PKI Algorithms to generate a Key-pair that will be used to derive a User PeerID
The Identity Module provides functionality for generating key-pairs using public-key cryptography algorithms. These key-pairs can then be used to derive unique User PeerIDs, which serve as identifiers in decentralized systems. This module supports a variety of cryptographic algorithms and PeerID generation methods to cater to diverse use cases.
Supported Algorithms
- RSA (Default) ☑️
- EdDSA
- SECP256k1
- NTRU - ❓ Not Sure
Supported PeerID Generation
-
UUID ☑️
-
SHA256/SHA3/SHA512 ☑️
-
Encoding Format : Base64/58
Fingerprinting
- Device Fingerprinting Feature allowing to gather a unique ID of the Device that cannot be replicated binded to the user Identity
Use Cases:
- Decentralized Applications (dApps): Securely generate and identify peers in distributed systems.
- Blockchain Integration: Create wallet addresses or node identifiers using robust cryptographic algorithms.
- Identity Management: Use the generated PeerID as a unique user identifier in privacy-focused systems.
Key Features:
- Flexible Algorithm Selection: Choose between standard RSA or more modern, secure alternatives like ECDSA, EdDSA, NTRU, FrodoKEM, and SECP256k1.
- PeerID Customization: Derive PeerIDs from various cryptographic hash functions (SHA variants or UUID) to suit your specific security or application requirements.
- Multiple Encoding Options: Output PeerIDs in Base64 or Base58 encoding, which ensures compatibility with a variety of platforms and protocols.
Federalized Identity Management Interfaces
- LDAP (Active Directory) : ldap3 => Active Directory integration for user authentication
- OAuth2 : oauth2 => OAuth2-based authentication
- OpenID : Connect (OIDC) openidconnect => Federated authentication via OIDC
- JWT : jsonwebtoken JWT => token creation/validation (OAuth2/OIDC)
- SAML 2.0 : saml => Integration with SAML-based SSO services
- Kerberos : kerberos => Kerberos-based authentication (Windows/AD)
- WebAuthn/FIDO2 : webauthn => Passwordless authentication (FIDO2/WebAuthn)
- CAS : None => (use HTTP client libraries like reqwest) Single Sign-On (SSO) integration for CAS
Dependencies
~10–17MB
~238K SLoC