# Authenticity, and Approval Framework for Bus Transportation Based on Blockchain 2.0 Technology
## 6 Methodology
As the ledger only supports textual information, heavier data, such as photos and documents, must be saved to the IPFS. The Web3 user interface (UI) sends the file content to the IPFS, which provides the CID (hash) for the file sent, which is then consequently endorsed on the blockchain. Figure 6 refers to the access control and the relationship between the coordinator and administrator in our implemented system. The coordinator can first view, examine, and inspect the application submitted by the bus company. Upon completion of the prerequisites, the coordinator approves the application, which is then forwarded to the administrator, who can, after a final check, approve or reject the application. The coordinator can also find all the pending applications and approved applications on the dashboard, which is cryptographically secured using the private key. The application can only be forwarded to the administrator when the coordinator has approved it. The generic software architecture is shown in Figure 7, which facilitates a seamless flow of operations from the HTTP browser layer, where users interact with the system, to the user interface layer that provides an intuitive interface. The smart contracts layer handles the core business logic and enforces predefined rules, while the data access layer based on the IPFS ensures the secure and decentralized storage of data objects. This layered approach enhances the scalability, modularity, and maintainability of the system, allowing for easier updates and modifications to specific layers without impacting the overall architecture. Algorithm 1 presents the bus user registration process, where the user inputs the required credentials and requests access to the bus portal. Algorithm 2, the second inter-process procedure of the intelligent transport system, is invoked. This procedure is responsible for bus approval application retrieval. The process begins by retrieving the validation attribute from the blockchain, to perform security verification, ensuring that the user is a legitimate participant in the blockchain network. Upon successful security verification, the process is executed, and the application is uploaded to the portal. This involves creating a process object and assigning a digital identity to it. Subsequently, a blockchain transaction is initiated, to record the validation attribute of this process on the blockchain. These data are then sent to the smart contract, triggering the execution of the next inter-process procedure within the system. Finally, in Algorithm 3, the third inter-process procedure of the intelligent transport system is invoked. This procedure is responsible for the approval  
Figure 4: Sequence diagram for registration and authentication. of applications uploaded to the portal. First, the validation attribute is retrieved from the blockchain, to verify the user's legitimacy in the network. Upon successful security verification, the execution of the procedure proceeds, approving or rejecting the approval as per the terms and conditions. The time complexity of each interconnected process and the smart contract in the BC-BAS system is O(\(N\)). The overall complexity of inter-process communication, along with the smart contract, is O(\(N^{2}\)), which indicates that the system's performance is heavily dependent on the interaction between inter-process communication and the smart contract. The flow chart of the overall process execution is shown in Figure 8.  
Figure 5: Sequence diagram for uploading application. Figure 6: Interaction and relationship between the coordinator and the administration.