Computer Science

How to Create an Interactive Web Application using a Jupyter Notebook

Summary: To create an interactive web application in a Jupyter Notebook, use the three libraries ipywidgets, voila, and binder. This requires only basic Python programming skills without the need to learn a new framework. There are various Python tools available to create web applications and frontend GUIs.  For example, Flask and Django. As useful as […]

How to Create an Interactive Web Application using a Jupyter Notebook Read More »

Smart Contract Randomness or ReplicatedLogic Attack

In this tutorial, the randomness attack or also called replicated logic attack is analyzed. The problem in Solidity contracts is finding the true source of randomness. We will see how generating a random number using on chain data cannot be trusted.   The tutorial starts with exploiting the randomness vulnerability, followed by the possible solutions. Let

Smart Contract Randomness or ReplicatedLogic Attack Read More »

DelegateCall or Storage Collision Attack on Smart Contracts

The DelegateCall attack or storage collision is expounded in this post. Before you can grasp this exploit, you must first understand how Solidity saves state variables as explained here.  We start with the differences between call and delegatecall in Solidity, followed by exploiting the vulnerability of the delegatecall using the proxy contracts (mostly in smart

DelegateCall or Storage Collision Attack on Smart Contracts Read More »