Tuesday, April 30, 2024

190: Sablier

 The CodeHawks platform has an upcoming audit on the Sablier protocol, so I decided to read through the docs and familiarize myself with the existing deployments before the audit contest goes live. 

In traditional finance, payment is sent out in discrete lump sum amounts. These payments have numerous fundamental problems, such as being prone to human error and being controlled by numerous intermediaries. Sablier innovates on this concept by allowing continuous streams of payment in any ERC20 token. This technology enables numerous use cases not possible in traditional finance. Firstly Sablier allows for automated vesting, where payment can be sent out on a pre-defined bases to recipients without the need of constant work from a treasury team. The recipient receives a fraction of their allocated compensation every second, granting them more freedom in their finances. This model also eliminates Schelling points in the speculation of token prices. When vesting is done manually, the date and time of a distribution, if known, will effect the market itself. With continuous payment, there is no single discrete moment exists to create a coordinated disruptive market action. The transparency of the Sablier protocol also allows all payment streams to clearly defined in terms of purpose and duration. Errors can also be corrected early, as a payment to the wrong address can be canceled long before the full sum is transferred. 

Sablier also allows for a gradual airdrop stream when launching a new project. Often, crypto projects will airdrop their initial supply and the token will dump immediately when recipients sell. The stream method allows for the token supply to be gradually released over time. Additionally, the stream admin has the ability to cancel the steam to any recipient who has stopped engaging with the project. This airdrop management can promote project longevity. 

The protocol is built on the ER-1620 standard which was the first proposal on Ethereum for streaming payments. This supports simple linear lockups, where the token becomes available on a by-second basis. However, the programmability of the protocol allows for arbitrarily complex lockups. A "cliff" can be built, where tokens are accumulated but cannot be withdrawn before a certain date. Exponential or logarithmic lockups can be created, along with monthly distributions, or any combination of the above. The only real limitation is the function must be monotonic, since the claimable amount of tokens cannot decrease with time. 

Each stream is wrapped in an ERC-721 NFT which grants the owner the permission to withdraw the accumulated tokens. The NFT further creates DEFI opportunity, since the NFT itself can be traded or lent on a secondary market. 

Wednesday, April 24, 2024

189: ZKasino Rugpull

 The ZKasino project recently exit scammed over 33 million dollars worth of Ethereum. 

he recent debacle surrounding ZKasino offers valuable lessons for anyone involved in cryptocurrency investments. As investors and users grapple with the aftermath of the $33 million rug pull, it's essential to reflect on the warning signs that preceded the collapse and what can be learned from them.

    One of the earliest red flags was the founder's questionable past, including involvement in failed projects like ZigZagExchange. Prioritizing due diligence on the team behind a project can reveal potential risks and help investors assess the credibility of their claims.

     ZKasino touted advanced technologies like zkSync while operating on a more basic network. Such inconsistencies should prompt investors to scrutinize a project's claims and verify the accuracy of its technological capabilities.

    The sudden cancellation of token listings without clear explanations should raise concerns about the project's stability and integrity. Investors should be wary of projects that fail to communicate openly and transparently about significant developments or changes in plans.

    Reports of unpaid employees and contractors, as well as allegations of mismanagement within the team, can indicate underlying issues within a project. Investors should pay attention to such allegations and conduct thorough research before committing funds.

    Projects that make inflated promises of high returns with little substance behind them should be approached with caution. Investors should critically evaluate the feasibility of a project's goals and assess the likelihood of achieving them.

Wednesday, April 10, 2024

188: Remote Procedure Calls

Interacting directly with the Ethereum blockchain requires running a full Ethereum node locally. This can be a complex process involving downloading and synchronizing the entire Ethereum blockchain, and requires intensive resources including memory and network bandwidth. This is where the utility of Remote Procedure Calls (RPCs) come into Web3 development. 

An RPC allows a computer to call a procedure on another network, while abstracting away the specific details of how the procedure works or is processed. This concept far predates blockchain and goes back to the 1970s. In the context of Ethereum, RPC calls allow developers to interact with the blockchain and with smart contracts without having to personally handle all the complexities of deploying an Eth node. This provides an enormous utility and allowed Web3 applications to maintain a light footprint without the overhead of running a local node, while having all the power and capability to interact with the network. There are a variety of RPC providers, but Infura is a popular one with a generous free tier to allow for developers to practice working with decentralized applications. By abstracting away the complexities of working with the blockchain directly, RPC providers like Infura allow developers to focus on the business logic of their contracts and applications, making these providers a critical part of the entire Web3 ecosystem. 

190: Sablier

 The CodeHawks platform has an upcoming audit on the Sablier protocol, so I decided to read through the docs and familiarize myself with the...