information that resides inside the message and what possible actions are required to be taken.











### **Figure 4.** Message Formats.

According to the requirements, addresses, i.e., public keys, of EVs, HCSs, and servers, are added. However, to understand the format more clearly, sender/requester and receiver are shown on the figure. Completion and termination functions also do similar operations.

Some packet formats are applicable for multiple functions. For example, the same format is used for the *request()* and *response()* functions, where there is a field that informs the receiver about the type of message (request/response) and the status of the message. All the messages have a special field called optional data, which can be used for different purposes. Which function is used by which entity is presented in Table 2.


**Table 2.** Smart contract functions in the proposed system.
