Skip to content

briankang0314/gradeblock

Repository files navigation

gradeblock

Overview

  • Project Name: GradeBlock
  • Description: A decentralized system for managing academic records on the Tezos blockchain, featuring multisig functionality for secure updates and transfers.

Contract Components

  1. AcademicRecord Contract (academic_record.py):

    • Purpose: Manages individual academic records.
    • Key Functionalities:
      • Create and store academic records.
      • Update records with multisig approvals.
      • Retrieve and verify records.
      • Transfer ownership of records.
  2. Multisig Contract (multisig.py):

    • Purpose: Implements a multisig system for approving record updates.
    • Key Functionalities:
      • Create proposals for record updates.
      • Allow signatories to vote on proposals.
      • Execute changes upon reaching the required threshold of approvals.
      • Manage signatories and change approval thresholds.
  3. AcademicRecordWithMultisig Contract (academic_record_multisig.py):

    • Purpose: Integrates academic record management with multisig functionality.
    • Key Functionalities:
      • Propose and execute record updates via multisig approval.
      • Inherit functionalities from the AcademicRecord and Multisig contracts.

Usage Instructions

  • Setting Up Contracts:
    • Deploy each contract separately on the Tezos blockchain.
    • Initialize the AcademicRecordWithMultisig contract with references to the AcademicRecord and Multisig contracts.
  • Managing Records:
    • Creation, update, retrieval, and verification of academic records.
    • How to propose and approve changes using the multisig system.

Development Notes

  • Smart Contract Language: SmartPy (Python-like syntax for Tezos smart contracts).
  • Blockchain: Tezos

Security Considerations

  • Security Measures:
    • Multisig Approval: Changes to academic records require approvals from multiple authorized parties, mitigating unauthorized modifications.
    • Record Integrity Verification: Academic records include a hash to verify their integrity, preventing unnoticed tampering.
    • Access Control: Functions are protected to ensure only authorized users (like the record owner) can propose updates or transfer ownership.
  • Potential Vulnerabilities and Mitigations:
    • Reentrancy Attacks: Not applicable as the contract does not involve TEZ transfers to external contracts.
    • Front-Running: Sensitive operations like ownership transfer are protected by multisig, reducing the risk.
    • Input Validation: All inputs are validated to prevent invalid or malicious data from being processed.

Deployment Guide

  • Deploying the Contracts:
    1. Preparation: Ensure you have a Tezos wallet with enough XTZ for deployment.
    2. Compilation: Use SmartPy CLI to compile the contracts to Michelson.
    3. Deployment:
      • Deploy Multisig first. Set initial signatories and threshold.
      • Deploy AcademicRecord with basic parameters.
      • Deploy AcademicRecordWithMultisig, referencing the addresses of the above two contracts.
    4. Verification: Verify the contracts on a Tezos explorer.
  • Initial Parameters:
    • Set initial signatories in the Multisig contract carefully.
    • Choose a reasonable threshold for multisig approvals based on the number of signatories.

Maintenance and Updates

  • Monitoring Performance:
    • Regularly check contract operations through a Tezos blockchain explorer.
    • Monitor gas usage and execution times.
  • Updating Contracts:
    • Smart contracts on Tezos are generally immutable. However, consider implementing a versioning system or an upgradeable pattern if necessary.
    • Communicate any updates or maintenance schedules to users.

Contact and Support

  • Support Channels:
    • For support, reach out via [Email/Support Channel].
    • Report issues on the project's [GitHub Issues Page].
  • Contribution Guidelines:
    • Contributions are welcome! Please follow the guidelines outlined in the project's [GitHub Repository].

Conclusion

  • Project Synopsis:
    • GradeBlock aims to revolutionize academic record management using blockchain technology, offering enhanced security, reliability, and transparency.
  • Achievements:
    • Successfully developed and tested smart contracts for decentralized academic record management with multisig security.
  • Future Prospects:
    • Potential integration with educational institutions' systems.
    • Continuous improvement of the contracts based on user feedback and technological advancements.

Appendices

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors