/BlockSim-Redact

A Redactable Blockchain Simulator in Python. Proof of concept of combining Chamelon Hash Functions & Shamir's Secret Sharing.

Primary LanguageJupyter Notebook

BlockSim-Redact

This is a simple Redactable Blockchain Simulator of my final year project. The work is utillising Discrete Logarithm based Chameleon Hash, Shamir's Secret Sharing Scheme and Ateniese's Chain Redact Algorithm.

How to Run the Project?

  1. I would recommend PyCharm as the IDE to run the code.
  2. Once you have cloned or downloaded the project, open it with PyCharm.
git clone
  1. In an import statement of a Python file, click a package which is not yet imported. You can also run the following code to install the packages. See details
pip install openpyxl
pip install xlsxwriter
pip install pandas
pip install numpy
  1. Configure the Python interpreter in PyCharm. See details
  2. You can explore the modules and packages.
    • You can try with different parameters in the InputConfig.py file
    • Have a look with the cryptographic schemes in the CH package
    • Results are stored in the Results folder. When storing simulation's results, do aware of the csv output file name
    • Configure the results and statistical parameter in the Statistics.py
    • Models module stores the implementation of the redactable blockchain
  3. Run the Main.py to start the simulation.
  4. Try with different input parameters and see how the results change. Finally, use the Statistic_Analysis.ipynb (in the Results module) to analysis the simulation results.

References

This project is inspired by the following works: