Project

Security Analysis of Smart Contracts

A smart contract is a self-executing contract with the terms of the agreement between buyer and seller being directly written into lines of code. The code is stored on a blockchain across a distributed, decentralized blockchain network. The code controls the execution, and transactions are trackable and irreversible. Because the smart contract is irreversible, we must audit the written program to ensure it is secure.

Leveraging Language Models for Vulnerability Detection and Generation in Solidity Smart Contracts

This research focuses on enhancing the security of smart contracts written in Solidity by fine-tuning large language models (LLMs) for vulnerability classification and the generation of potentially vulnerable code. The project explores both binary and multi-class classification strategies to identify different types of vulnerabilities within smart contract code. By curating a specialized dataset, the study aims to improve the detection of security flaws that can lead to exploits in decentralized applications. In addition to classification, the research also investigates the use of LLM encoders to predict specific buggy lines of code. This approach is intended to enhance the precision of vulnerability detection, enabling developers to address issues at a more granular level. The computational resources of the Texas Advanced Computing Center (TACC) are being utilized to support the fine-tuning process and large-scale experimentation, allowing for efficient model training and validation. Ultimately, this work aims to contribute to the development of more secure smart contract ecosystems by providing robust tools for identifying and mitigating vulnerabilities at both the code level and during development.