Challenges Faced in the Application of Smart Contracts