• Aucun résultat trouvé

Trust and Reputation Model

Chapter 4. Design of a Novel Trust Metric and Model for Wi-Fi Selection,

4.2 The Novel Trust and Reputation Model for trustworthy Wi-Fi evaluation

4.2.3 Trust and Reputation Model

The behaviour of each AP in our model is characterised by what we call a trust value. This trust value represents the trust level of the AP, based on the previous experiences of the users with that

AP, and it is signed and sent to our server. The trust value of an AP is represented in a range [0…1], with 0 being untrustworthy and 1 being very trustworthy. When an AP first enters the network, the server provides it with an initial trust value equal to 0.5, which can afterwards increase or decrease, depending on the behaviour of the AP. In order to limit the influence of dishonest users, like in paper[49], for each user on the server’s side we will summarise her ratings in order to take the average of her ratings for the same AP.

This ensures that malicious users only have at most X ratings on the final summary; if there are X malicious users. The users have the possibility to ask their friends for recommendations about a given AP. The user will be able to become friends with other users and we will store all their information about their friends and the APs used by them on our server. The connection to our server will be done by using GPRS or 3G. Balasubramanian et al. [50], have compared the energy consumption between 3G, GSM and Wi-Fi and their results show that Wi-Fi is more energy efficient than the others. So, if the user has the choice between 3G and Wi-Fi, it will be more efficient to choose the latter. This is why 3G will only be used to retrieve the information, which will help the user to choose the most trustworthy AP. The recommendations are useful when a user does not have any information about an AP. The user can ask for recommendations from their friends, and if their friends do not have any recommendations about the AP when asked, their friends in turn can ask their friends; but there will be a limit to the application of recommendations from friends to a depth of six because of the theory of Small World [51]. Figure 3 explains in more detail the concept of the depth of friendship.We will explain how recommendations work in more detail in SubSection 4.2.4.

Figure 3: Diagram of the depth of friendship

After using the AP, the user will be presented with five different rating possibilities:

Rating

By limiting the possible values of the rating, we can estimate easily the degree of satisfaction of the user. If the rating is 1 or 2 that means it was “Bad”, otherwise if the rating is 3, 4 or 5 that means it was “Good”. In order to aggregate these ratings, it is necessary to normalise them in some manner; we define a normalised rating in the following way:

I chose to normalise user’s ratings in this manner because it allows us to perform the computation that we will describe later on.

The ratings of the users are aggregated on our server; we chose to normalise user’s ratings in this manner because it allows us perform the computation we describe below without renormalising the global user’s ratings at each iteration.

In order for users to make her choice when selecting an AP, she will have information about an AP from three sources. First the

user can have information from their friends, secondly from the aggregation of the ratings of all the users and thirdly from their own previous experiences with that AP. My solution proposes a trust/reputation management system in order to help users choose the most trustworthy AP. One threshold that is used is: K with 0<K<1. Using this threshold, we have defined two cases:

First case: the user will not connect to an AP if the trust value is lower than K.

Second case: the user will connect his MP to the AP when the trust value of it is higher than K. In this case, we assume that the user will trust the hotspot.

To apply this algorithm, our solution needs trust functions to compute the trust value.

In the following sequence diagrams we have:

T: represents the trust value of the AP

K: is the threshold that the user can set in his MP

Server: represents our servers where we store all user’s ratings. It is from server that the user can get friend recommendation. The recommendation defines the trust value aggregate from all the user’s friends.

User: represents the user with his MP

In the MP we store the trust value of AP based on the past experience of the owner of the MP.

Figure 4: Sequence diagram of the user who did not connect to the AP because of the trust value T of the AP

The Sequence diagram of the connection of a user is based on:

the trust value obtained from user’s friends recommendations on the server, the trust value stored on the server and also the trust value stored locally on the user’s device which is based on the past experience of the user on the AP. T represents the final trust value computed on the user’s device, we wil explain how we compute this final trust value later. This sequence diagram represents the action of a user who wants to connect to an AP that is around. The user does not connect because the trust value T of the AP is lower than the constant K. Thus, the user begins by asking for recommendations from her friends about the AP through the server, which retrieves the trust value of the AP stored on the server. Then the final trust value is calculated by taking into account friends’ recommendations, the trust value stored on the server and the trust value stored locally on the device of the user.

If a trust value exists in the device that means that the user has already used this AP previously.

Figure 5: Sequence diagram of a user’s connection to an AP without recommendations from the user's friends

The figure 5 represents the sequence diagram that show how the user can connect to an AP without getting recommendation from her friends. The user connects because the trust value of the AP is higher than the constant K. Thus, users begin by asking her friends for recommendations about the AP through the server, but in this case there are no recommendations available from her friends; so the server retrieves the trust value of the AP that is stored. The final trust value is then calculated by taking the trust value stored on the server and the trust value stored locally on the device of the user; and if a trust value exists, then that means that the user has already used this AP previously.

Figure 6: Sequence diagram of the connection of a user based on friends’

recommendations and the trust value stored on the server

The figure 6 represents the sequence diagram that show how the user can connect to an AP with recommendation from her friends.

The user connects because the trust value of the AP is higher than the constant K Thus, the user begins by asking the recommendations of his friends about the AP through the server, and it retrieves the trust value of the AP stored on the server. Then the final trust value is calculated by taking into account friends’

recommendations, the trust value stored on the server and the trust value stored locally on the device of the user.

Figure 7: Sequence diagram of the second attempt of a user's connection

The figure 7 represents the sequence diagram that show how the user can connect to an AP after the second attempt without recommendation from her friends. This sequence diagram represents the action of a user who wants to connect to an AP that is around. The user cannot connect because the trust value of the AP is lower than the constant K. Thus, the user begins by asking her friends for recommendations about the AP through the server, and it retrieves the trust value of the AP stored on the server. After the first attempt, the user decreases the value of the constant K in order to be able to connect to the AP; but the user has to know that by doing this they may connect to an untrustworthy AP. After decreasing the constant K, the trust value T is higher than the constant K. Thus, the user can connect to this AP.