[GENERAL] Name and surname of main applicant
John Ndigirigi
[GENERAL] Are you delivering this project as an individual or as an entity (whether formally incorporated or not)
Individual
[GENERAL] Please specify how many months you expect your project to last (from 2-12 months)
9
[GENERAL] Please indicate if your proposal has been auto-translated into English from another language
No
[GENERAL] Summarize your solution to the problem (200-character limit including spaces)
We'll develop a C# NuGet package for easy creation, management, resolution of cardano DIDs, and signing and verification of Verifiable Credentials and Presentations
[GENERAL] Does your project have any dependencies on other organizations, technical or otherwise?
Yes
[GENERAL] If YES, please describe what the dependency is and why you believe it is essential for your project’s delivery. If NO, please write “No dependencies.”
Our project depends on the Identus cloud agent (https://github.com/hyperledger/identus-cloud-agent), which utilizes the Cardano blockchain. We'll contribute to and use core functionalities of this agent for managing decentralized identities and verifiable credentials. This dependency is essential as it provides a Cardano-based foundation for our package, ensuring robust security and scalability.
[GENERAL] Will your project’s output/s be fully open source?
Yes
[GENERAL] Please provide here more information on the open source status of your project outputs
Our C# NuGet package for PRISM DIDs will be fully open-source throughout its entire lifecycle. We intend to use the MIT License for our codebase. This license allows for free use, modification, and distribution of the software, making it ideal for widespread adoption in both open-source and commercial projects.
The open-source repository will be publicly available on GitHub from the project's inception. This includes:
- Core library code for PRISM DID operations
- Integration examples and documentation
- Unit and integration tests
- Build and deployment scripts
By making our project open-source, we aim to:
- Foster collaboration within the Cardano and .NET communities
- Encourage code reviews and contributions from developers
- Ensure transparency in the development process
- Facilitate easy integration and customization for various use cases
This approach aligns with the ethos of the Cardano ecosystem and will help accelerate the adoption of PRISM DIDs in the .NET development world.
[METADATA] Horizons
Developer Tools
[SOLUTION] Please describe your proposed solution
Our proposed solution is a comprehensive C# NuGet package that simplifies the integration of PRISM Decentralized Identifiers (DIDs) into .NET projects, with a focus on Identus cloud agent integration and advanced signature capabilities. This package will provide developers with easy-to-use tools for creating and resolving PRISM DIDs, as well as verifying and creating signatures associated with these identifiers.
Key features of our solution:
DID Creation and Management:
- Simple API for generating new PRISM DIDs
- Support for different key types (e.g., Ed25519, secp256k1)
DID Resolution:
- Efficient resolution of PRISM DIDs to their corresponding DID Documents
- Caching mechanisms to optimize repeated resolutions
- Support for resolving both on-chain and off-chain DIDs (long-form)
Signature Verification and Creation:
- Methods to verify signatures associated with PRISM DIDs for example for the verification and signing of Verifiable Credentials and Verifiable Presentations.
- Support for creating signatures using various algorithms, e.g. document signing
Identus Cloud Agent Integration:
- Seamless interaction with the Identus Cloud Agent for DID operations
- Abstraction of complex API calls into simple method invocations
- Support for advanced Identus cloud agent features
Documentation and Examples:
- Comprehensive API documentation with inline examples
- Sample projects demonstrating real-world use cases
Testing Utilities:
- Mock objects and helpers for unit testing DID-related functionality in user applications
Target Audience:
- .NET developers building identity solutions on Cardano
- Enterprises integrating Cardano-based identity into existing .NET infrastructure
- Academic institutions researching decentralized identity in .NET environments
By providing this essential tooling, we aim to bridge the gap between the Cardano ecosystem and the vast .NET development community, fostering increased adoption of PRISM DIDs and showcasing Cardano's capabilities in decentralized identity management.
[IMPACT] Please define the positive impact your project will have on the wider Cardano community
The C# NuGet package for PRISM DIDs will have a significant positive impact on the wider Cardano community in several key areas:
Ecosystem Expansion:
- Attract .NET developers to the Cardano ecosystem, significantly expanding the potential developer base.
- Enable easier integration of Cardano-based identity solutions into existing .NET applications and infrastructure.
Accelerated Adoption:
- Reduce the barrier to entry for implementing PRISM DIDs in .NET projects, leading to faster adoption of Cardano's identity solutions.
- Encourage experimentation and innovation with decentralized identity in the .NET ecosystem.
Interoperability Enhancement:
- Facilitate seamless interaction between Cardano-based identity systems and .NET-based applications.
- Promote the development of cross-platform solutions that leverage Cardano's identity infrastructure.
Showcase Cardano's Versatility:
- Demonstrate Cardano's ability to integrate with mainstream development ecosystems.
- Highlight the practicality and efficiency of PRISM DIDs in real-world applications.
Community Growth:
- Attract .NET developers to contribute to the Cardano ecosystem.
- Foster collaboration between the Cardano and .NET communities.
Measuring Impact:
- Quantitative Metrics:
- Number of NuGet package downloads
- GitHub statistics (stars, forks, contributors)
- Number of projects and applications using the package
- Growth in .NET developer participation in Cardano forums and events
- Qualitative Assessments:
- Case studies of successful integrations in enterprise environments
- Feedback from developers on ease of use and impact on development time
- Testimonials from companies adopting PRISM DIDs through our package
Sharing Outputs and Opportunities:
- Open-Source Repository:
- All code and documentation publicly available on GitHub
- Regular updates and release notes published
- Developer Resources:
- Comprehensive API documentation with examples
- Video tutorials and webinars on package usage
- Sample projects demonstrating various use cases
- Community Engagement:
- Regular posts on Cardano forums and .NET community platforms
- Participation in both Cardano and .NET conferences and meetups
- AMAs (Ask Me Anything) sessions for developers
- Integration Support.
- Support through actively monitored github issues.
We aim to create a bridge between the Cardano ecosystem and the vast .NET development community. This will not only expand Cardano's reach but also demonstrate its practical applications in enterprise-grade software development, potentially leading to increased adoption and innovation within the Cardano ecosystem.
[CAPABILITY & FEASIBILITY] What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?
John Ndigirigi is a dynamic software developer who has worked on several Cardano projects for blocktrust.dev and DirectEd, leveraging Atala PRISM and Open Badges. An Atala PRISM Pioneer and BSc Computer Science graduate from Dedan Kimathi University of Technology, John understands computer science fundamentals, several programming languages, and blockchain technologies. On this project, John will be leading development. His LinkedIn is https://www.linkedin.com/in/ndigirigijohn/.
John's relevant experience includes:
Advisor (unpaid role): Björn Sandmann has declared himself willing to support this project with some architectural and software development advice. He is a senior .NET developer with multiple years of experience in the SSI space. Particularly, he is known in the Cardano / Identus community for infrastructure projects, like the OpenPrismNode or the Blocktrust Analytics platform.
Feasibility Validation:
Technical Proof of Concept:
- Develop MVP within first two months demonstrating core functionalities
- Rigorous testing and security audits to ensure robustness and scalability
Stakeholder Feedback:
- Early engagement with .NET developers and Cardano community members
- Iterative development based on user feedback and real-world testing
Standards Compliance:
- Continuous validation against PRISM DID specifications
- Regular checks for compatibility with W3C DID standards
Interoperability Checks:
- Collaboration with Identus cloud agent team to ensure seamless integration
- Testing with various wallet providers and third-party applications in the Cardano ecosystem
[PROJECT MILESTONES] What are the key milestones you need to achieve in order to complete your project successfully?
Project Architecture and Design
Output:
- Comprehensive system architecture documentation
- Technical specification for Identus cloud agent integration
- PRISM DID implementation plan
Acceptance Criteria:
- Detailed system architecture diagrams covering all major components
- Complete technical specification for Identus integration
- Thorough mapping of PRISM DID standards to system components
Evidence of milestone completion:
- Project diagrams and other documentations on a github repository
Core Development and Integration
Output:
- Functional MVP with Identus cloud agent integration
- Basic implementation of PRISM DID creation and resolution
- Initial signature verification and creation functionality
Acceptance Criteria:
- Working integration with Identus cloud agent on Cardano testnet
- Successful creation and resolution of test PRISM DIDs
- Functional signature verification and creation for supported algorithms
Evidence of milestone completion:
- Code on github repository
Feature Enhancement and Testing)
Outputs:
- Advanced DID management tools
- Full PRISM DID compatibility
- Comprehensive security and performance testing results
Acceptance Criteria:
- Successful implementation of advanced DID operations
- Compliance with PRISM DID standards
- Security audit report with all critical issues resolved
- Performance test results meeting defined scalability targets
Evidence of milestone completion:
- Code on github repository
Deployment and Project Handover
Outputs and Acceptance criteria:
- Deployed C# NuGet package for PRISM DIDs
- Comprehensive project documentation
- Functional DID creation, resolution, and signature operations
- Complete user and developer documentation
- Close out video and report
Evidence of milestone completion:
- Code on a github repository
[RESOURCES] Who is in the project team and what are their roles?
John Ndigirigi - Lead Developer LinkedIn: https://www.linkedin.com/in/ndigirigijohn/ Role: John will lead the development of the C# NuGet package. He has significant experience in Cardano development and PRISM DIDs, and has contributed to open-source projects in the blockchain space. His expertise in both .NET and Cardano ecosystems makes him ideal for this role.
John's relevant experience includes:
Advisor (unpaid role): Björn Sandmann has declared himself willing to support this project with some architectural and software development advice. He is a senior .NET developer with multiple years of experience in the SSI space. Particularly, he is known in the Cardano / Identus community for infrastructure projects, like the OpenPrismNode or the Blocktrust Analytics platform.
[BUDGET & COSTS] Please provide a cost breakdown of the proposed work and resources
Total Budget: ₳75,000
Project Architecture and Design: 150 hours (₳15,000)
- System architecture design and documentation: 70 hours
- Technical specification and standards mapping: 80 hours
Core Development and Integration: 330 hours (₳33,000)
- Identus cloud agent integration: 140 hours
- PRISM DID implementation: 110 hours
- Signature verification and creation: 80 hours
Feature Enhancement and Testing: 170 hours (₳17,000)
- Advanced feature development: 90 hours
- Security and performance testing: 80 hours
Deployment and Documentation: 40 hours (₳4,000)
Contingency for currency fluctuation and other expenses: ₳6,000
[VALUE FOR MONEY] How does the cost of the project represent value for money for the Cardano ecosystem?
- The C# NuGet package for PRISM DIDs represents exceptional value for money for the Cardano ecosystem for the following reasons:
- Ecosystem Expansion: The ₳75,000 investment will result in a tool that opens up the entire .NET ecosystem to Cardano and PRISM DIDs. This has the potential to bring millions of .NET developers into the Cardano ecosystem, far outweighing the initial cost.
- Accelerated Adoption: By providing an easy-to-use tool for .NET developers, we're lowering the barrier to entry for implementing PRISM DIDs in enterprise and consumer applications. This accelerated adoption can lead to increased usage of the Cardano network and potential growth in ADA value.
- Cost-Effective Development: Our budget allocation prioritizes efficient use of funds:
- 70% of the budget is allocated to experienced personnel, ensuring high-quality development and reducing the risk of costly mistakes or delays.
- We're leveraging existing tools and infrastructure where possible to minimize costs.
- The open-source nature of the project allows for community contributions, effectively extending the value of the initial investment.
- Long-term Impact: This package will continue to provide value long after the initial development period, serving as a foundation for numerous .NET applications integrating with Cardano and PRISM DIDs.
- Competitive Analysis: Our proposal delivers comparable functionality at a fraction of the cost, thanks to our experienced team and focused approach.
- Reusable Components: Many of the components developed for this package (e.g., cryptographic utilities, Cardano network interactions) can be reused in other Cardano-related .NET projects, multiplying the value of the initial investment.
- Strategic Positioning: By being first-to-market with a comprehensive PRISM DID solution for .NET, we position Cardano as a leader in blockchain identity solutions for enterprise software development.
- Educational Value: The documentation, examples, and open-source nature of the project will serve as educational resources for developers looking to understand and implement decentralized identity solutions, providing additional value beyond the software itself.
- Community Building: This project will help bridge the Cardano and .NET communities, fostering collaboration and knowledge exchange that can lead to further innovations and integrations.
- Potential for Commercial Adoption: By targeting the .NET ecosystem, we're opening doors for commercial and enterprise adoption of Cardano technology, which could lead to significant long-term value for the ecosystem.
- Cost Justification: The budget has been carefully calculated based on industry standards:
- Developer rates are competitive but below market averages for .NET and blockchain specialists.
- The project timeline of 6 months is focused and efficient, minimizing ongoing costs.
- We've allocated funds for security audits and documentation, which are critical for long-term success and adoption.
- Scalability and Future-Proofing: The modular design of our solution ensures that it can be easily updated and expanded as the PRISM DID standards evolve, providing long-term value to the Cardano ecosystem.
- Cross-Pollination of Ideas: By bringing PRISM DIDs to the .NET ecosystem, we're facilitating the exchange of ideas and best practices between two vibrant communities, potentially leading to innovative applications of blockchain technology in traditional enterprise environments.
- Increased Visibility for Cardano: A successful .NET integration will showcase Cardano's versatility to a wide audience of enterprise developers, potentially attracting more projects and investments to the ecosystem.