Trust2Vec: Large-Scale IoT Trust Management System based on Signed Network Embeddings

Extracted source text · arXiv 2204.06988

%% bare_jrnl.tex
%% V1.4b
%% 2015/08/26
%% by Michael Shell
%% see http://www.michaelshell.org/
%% for current contact information.
%%
%% This is a skeleton file demonstrating the use of IEEEtran.cls
%% (requires IEEEtran.cls version 1.8b or later) with an IEEE
%% journal paper.
%%
%% Support sites:
%% http://www.michaelshell.org/tex/ieeetran/
%% http://www.ctan.org/pkg/ieeetran
%% and
%% http://www.ieee.org/

%%*************************************************************************
%% Legal Notice:
%% This code is offered as-is without any warranty either expressed or
%% implied; without even the implied warranty of MERCHANTABILITY or
%% FITNESS FOR A PARTICULAR PURPOSE! 
%% User assumes all risk.
%% In no event shall the IEEE or any contributor to this code be liable for
%% any damages or losses, including, but not limited to, incidental,
%% consequential, or any other damages, resulting from the use or misuse
%% of any information contained here.
%%
%% All comments are the opinions of their respective authors and are not
%% necessarily endorsed by the IEEE.
%%
%% This work is distributed under the LaTeX Project Public License (LPPL)
%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used,
%% distributed and modified. A copy of the LPPL, version 1.3, is included
%% in the base LaTeX documentation of all distributions of LaTeX released
%% 2003/12/01 or later.
%% Retain all contribution notices and credits.
%% ** Modified files should be clearly indicated as such, including  **
%% ** renaming them and changing author support contact information. **
%%*************************************************************************


% *** Authors should verify (and, if needed, correct) their LaTeX system  ***
% *** with the testflow diagnostic prior to trusting their LaTeX platform ***
% *** with production work. The IEEE's font choices and paper sizes can   ***
% *** trigger bugs that do not appear when using other class files.       ***                          ***
% The testflow support page is at:
% http://www.michaelshell.org/tex/testflow/



\documentclass[journal]{IEEEtran}
%
% If IEEEtran.cls has not been installed into the LaTeX system files,
% manually specify the path to it like:
% \documentclass[journal]{../sty/IEEEtran}





% Some very useful LaTeX packages include:
% (uncomment the ones you want to load)


% *** MISC UTILITY PACKAGES ***
%
%\usepackage{ifpdf}
% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional
% compilation based on whether the output is pdf or dvi.
% usage:
% \ifpdf
%   % pdf code
% \else
%   % dvi code
% \fi
% The latest version of ifpdf.sty can be obtained from:
% http://www.ctan.org/pkg/ifpdf
% Also, note that IEEEtran.cls V1.7 and later provides a builtin
% \ifCLASSINFOpdf conditional that works the same way.
% When switching from latex to pdflatex and vice-versa, the compiler may
% have to be run twice to clear warning/error messages.






% *** CITATION PACKAGES ***
%
%\usepackage{cite}
% cite.sty was written by Donald Arseneau
% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package
% \cite{} output to follow that of the IEEE. Loading the cite package will
% result in citation numbers being automatically sorted and properly
% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using
% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's
% \cite will automatically add leading space, if needed. Use cite.sty's
% noadjust option (cite.sty V3.8 and later) if you want to turn this off
% such as if a citation ever needs to be enclosed in parenthesis.
% cite.sty is already installed on most LaTeX systems. Be sure and use
% version 5.0 (2009-03-20) and later if using hyperref.sty.
% The latest version can be obtained at:
% http://www.ctan.org/pkg/cite
% The documentation is contained in the cite.sty file itself.





% *** GRAPHICS RELATED PACKAGES ***
%
\ifCLASSINFOpdf
  % \usepackage[pdftex]{graphicx}
  % declare the path(s) where your graphic files are
  % \graphicspath{{../pdf/}{../jpeg/}}
  % and their extensions so you won't have to specify these with
  % every instance of \includegraphics
  % \DeclareGraphicsExtensions{.pdf,.jpeg,.png}
\else
  % or other class option (dvipsone, dvipdf, if not using dvips). graphicx
  % will default to the driver specified in the system graphics.cfg if no
  % driver is specified.
  % \usepackage[dvips]{graphicx}
  % declare the path(s) where your graphic files are
  % \graphicspath{{../eps/}}
  % and their extensions so you won't have to specify these with
  % every instance of \includegraphics
  % \DeclareGraphicsExtensions{.eps}
\fi
% graphicx was written by David Carlisle and Sebastian Rahtz. It is
% required if you want graphics, photos, etc. graphicx.sty is already
% installed on most LaTeX systems. The latest version and documentation
% can be obtained at: 
% http://www.ctan.org/pkg/graphicx
% Another good source of documentation is "Using Imported Graphics in
% LaTeX2e" by Keith Reckdahl which can be found at:
% http://www.ctan.org/pkg/epslatex
%
% latex, and pdflatex in dvi mode, support graphics in encapsulated
% postscript (.eps) format. pdflatex in pdf mode supports graphics
% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure
% that all non-photo figures use a vector format (.eps, .pdf, .mps) and
% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats
% which can result in "jaggedy"/blurry rendering of lines and letters as
% well as large increases in file sizes.
%
% You can find documentation about the pdfTeX application at:
% http://www.tug.org/applications/pdftex





% *** MATH PACKAGES ***
%
%\usepackage{amsmath}
% A popular package from the American Mathematical Society that provides
% many useful and powerful commands for dealing with mathematics.
%
% Note that the amsmath package sets \interdisplaylinepenalty to 10000
% thus preventing page breaks from occurring within multiline equations. Use:
%\interdisplaylinepenalty=2500
% after loading amsmath to restore such page breaks as IEEEtran.cls normally
% does. amsmath.sty is already installed on most LaTeX systems. The latest
% version and documentation can be obtained at:
% http://www.ctan.org/pkg/amsmath





% *** SPECIALIZED LIST PACKAGES ***
%
%\usepackage{algorithmic}
% algorithmic.sty was written by Peter Williams and Rogerio Brito.
% This package provides an algorithmic environment fo describing algorithms.
% You can use the algorithmic environment in-text or within a figure
% environment to provide for a floating algorithm. Do NOT use the algorithm
% floating environment provided by algorithm.sty (by the same authors) or
% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated
% algorithm float types and packages that provide these will not provide
% correct IEEE style captions. The latest version and documentation of
% algorithmic.sty can be obtained at:
% http://www.ctan.org/pkg/algorithms
% Also of interest may be the (relatively newer and more customizable)
% algorithmicx.sty package by Szasz Janos:
% http://www.ctan.org/pkg/algorithmicx




% *** ALIGNMENT PACKAGES ***
%
%\usepackage{array}
% Frank Mittelbach's and David Carlisle's array.sty patches and improves
% the standard LaTeX2e array and tabular environments to provide better
% appearance and additional user controls. As the default LaTeX2e table
% generation code is lacking to the point of almost being broken with
% respect to the quality of the end results, all users are strongly
% advised to use an enhanced (at the very least that provided by array.sty)
% set of table tools. array.sty is already installed on most systems. The
% latest version and documentation can be obtained at:
% http://www.ctan.org/pkg/array


% IEEEtran contains the IEEEeqnarray family of commands that can be used to
% generate multiline equations as well as matrices, tables, etc., of high
% quality.




% *** SUBFIGURE PACKAGES ***
%\ifCLASSOPTIONcompsoc
%  \usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig}
%\else
%  \usepackage[caption=false,font=footnotesize]{subfig}
%\fi
% subfig.sty, written by Steven Douglas Cochran, is the modern replacement
% for subfigure.sty, the latter of which is no longer maintained and is
% incompatible with some LaTeX packages including fixltx2e. However,
% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty
% which will override IEEEtran.cls' handling of captions and this will result
% in non-IEEE style figure/table captions. To prevent this problem, be sure
% and invoke subfig.sty's "caption=false" package option (available since
% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls
% handling of captions.
% Note that the Computer Society format requires a larger sans serif font
% than the serif footnote size font used in traditional IEEE formatting
% and thus the need to invoke different subfig.sty package options depending
% on whether compsoc mode has been enabled.
%
% The latest version and documentation of subfig.sty can be obtained at:
% http://www.ctan.org/pkg/subfig




% *** FLOAT PACKAGES ***
%
%\usepackage{fixltx2e}
% fixltx2e, the successor to the earlier fix2col.sty, was written by
% Frank Mittelbach and David Carlisle. This package corrects a few problems
% in the LaTeX2e kernel, the most notable of which is that in current
% LaTeX2e releases, the ordering of single and double column floats is not
% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a
% single column figure to be placed prior to an earlier double column
% figure.
% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's
% corrections already built into the system in which case a warning will
% be issued if an attempt is made to load fixltx2e.sty as it is no longer
% needed.
% The latest version and documentation can be found at:
% http://www.ctan.org/pkg/fixltx2e


%\usepackage{stfloats}
% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e
% the ability to do double column floats at the bottom of the page as well
% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in
% LaTeX2e). It also provides a command:
%\fnbelowfloat
% to enable the placement of footnotes below bottom floats (the standard
% LaTeX2e kernel puts them above bottom floats). This is an invasive package
% which rewrites many portions of the LaTeX2e float routines. It may not work
% with other packages that modify the LaTeX2e float routines. The latest
% version and documentation can be obtained at:
% http://www.ctan.org/pkg/stfloats
% Do not use the stfloats baselinefloat ability as the IEEE does not allow
% \baselineskip to stretch. Authors submitting work to the IEEE should note
% that the IEEE rarely uses double column equations and that authors should try
% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty
% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in
% such ways.
% Do not attempt to use stfloats with fixltx2e as they are incompatible.
% Instead, use Morten Hogholm'a dblfloatfix which combines the features
% of both fixltx2e and stfloats:
%
% \usepackage{dblfloatfix}
% The latest version can be found at:
% http://www.ctan.org/pkg/dblfloatfix




%\ifCLASSOPTIONcaptionsoff
%  \usepackage[nomarkers]{endfloat}
% \let\MYoriglatexcaption\caption
% \renewcommand{\caption}[2][\relax]{\MYoriglatexcaption[#2]{#2}}
%\fi
% endfloat.sty was written by James Darrell McCauley, Jeff Goldberg and 
% Axel Sommerfeldt. This package may be useful when used in conjunction with 
% IEEEtran.cls'  captionsoff option. Some IEEE journals/societies require that
% submissions have lists of figures/tables at the end of the paper and that
% figures/tables without any captions are placed on a page by themselves at
% the end of the document. If needed, the draftcls IEEEtran class option or
% \CLASSINPUTbaselinestretch interface can be used to increase the line
% spacing as well. Be sure and use the nomarkers option of endfloat to
% prevent endfloat from "marking" where the figures would have been placed
% in the text. The two hack lines of code above are a slight modification of
% that suggested by in the endfloat docs (section 8.4.1) to ensure that
% the full captions always appear in the list of figures/tables - even if
% the user used the short optional argument of \caption[]{}.
% IEEE papers do not typically make use of \caption[]'s optional argument,
% so this should not be an issue. A similar trick can be used to disable
% captions of packages such as subfig.sty that lack options to turn off
% the subcaptions:
% For subfig.sty:
% \let\MYorigsubfloat\subfloat
% \renewcommand{\subfloat}[2][\relax]{\MYorigsubfloat[]{#2}}
% However, the above trick will not work if both optional arguments of
% the \subfloat command are used. Furthermore, there needs to be a
% description of each subfigure *somewhere* and endfloat does not add
% subfigure captions to its list of figures. Thus, the best approach is to
% avoid the use of subfigure captions (many IEEE journals avoid them anyway)
% and instead reference/explain all the subfigures within the main caption.
% The latest version of endfloat.sty and its documentation can obtained at:
% http://www.ctan.org/pkg/endfloat
%
% The IEEEtran \ifCLASSOPTIONcaptionsoff conditional can also be used
% later in the document, say, to conditionally put the References on a 
% page by themselves.

\usepackage{amsmath}
\usepackage{lipsum}
\usepackage{graphicx}
\usepackage[justification=centering]{caption}
\usepackage{epstopdf}
\usepackage{tabularx}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{amssymb}

\usepackage{xcolor}

\usepackage[hyphens]{url} 

%to avoid displaying dash in repeated author names
%\bstctlcite{IEEEexample:BSTcontrol}



% *** PDF, URL AND HYPERLINK PACKAGES ***
%
%\usepackage{url}
% url.sty was written by Donald Arseneau. It provides better support for
% handling and breaking URLs. url.sty is already installed on most LaTeX
% systems. The latest version and documentation can be obtained at:
% http://www.ctan.org/pkg/url
% Basically, \url{my_url_here}.




% *** Do not adjust lengths that control margins, column widths, etc. ***
% *** Do not use packages that alter fonts (such as pslatex).         ***
% There should be no need to do such things with IEEEtran.cls V1.6 and later.
% (Unless specifically asked to do so by the journal or conference you plan
% to submit to, of course. )


% correct bad hyphenation here
\hyphenation{op-tical net-works semi-conduc-tor}


\begin{document}
%
% paper title
% Titles are generally capitalized except for words such as a, an, and, as,
% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually
% not capitalized unless they are the first or last word of the title.
% Linebreaks \\ can be used within to get better formatting as desired.
% Do not put math or special symbols in the title.
\title{Trust2Vec: Large-Scale IoT Trust Management System based on Signed Network Embeddings}

%
% author names and IEEE memberships
% note positions of commas and nonbreaking spaces ( ~ ) LaTeX will not break
% a structure at a ~ so this keeps an author's name from being broken across
% two lines.
% use \thanks{} to gain access to the first footnote area
% a separate \thanks must be used for each paragraph as LaTeX2e's \thanks
% was not built to handle multiple paragraph
%

\author{Sahraoui Dhelim, Nyothiri Aung, Tahar Kechadi,  Huansheng Ning, Liming Chen and Abderrahmane Lakas

	\thanks{Sahraoui Dhelim, Nyothiri Aung and Tahar Kechadi are with the School of Computer Science, University College Dublin, Ireland.} 
	\thanks{Huansheng Ning is with School of Information Technology and Engineering, Jinzhong University, Shanxi, 030619, China}
    \thanks{Huansheng Ning is also with the School of Computer and Communication Engineering, University of Science and Technology Beijing, Beijing, 100083, China.}
	\thanks{Liming Chen is with the School of Computing, Ulster University, U.K.}
	\thanks{Abderrahmane Lakas is with the College of Information Technology, United Arab Emirates University, UAE}
	\thanks{Sahraoui Dhelim and Nyothiri Aung are co-first authors, they have contributed equally to this work}
	\thanks{Corresponding author: Huansheng Ning (ninghuansheng@ustb.edu.cn).}
}



% note the % following the last \IEEEmembership and also \thanks - 
% these prevent an unwanted space from occurring between the last author name
% and the end of the author line. i.e., if you had this:
% 
% \author{....lastname \thanks{...} \thanks{...} }
%                     ^------------^------------^----Do not want these spaces!
%
% a space would be appended to the last name and could cause every name on that
% line to be shifted left slightly. This is one of those "LaTeX things". For
% instance, "\textbf{A} \textbf{B}" will typeset as "A B" not "AB". To get
% "AB" then you have to do: "\textbf{A}\textbf{B}"
% \thanks is no different in this regard, so shield the last } of each \thanks
% that ends a line with a % and do not let a space in before the next \thanks.
% Spaces after \IEEEmembership other than the last one are OK (and needed) as
% you are supposed to have spaces between the names. For what it is worth,
% this is a minor point as most people would not even notice if the said evil
% space somehow managed to creep in.


% The paper headers
\markboth{Journal of \LaTeX\ Class Files,~Vol.~14, No.~8, August~2022}%
{Shell \MakeLowercase{\textit{et al.}}: Bare Demo of IEEEtran.cls for IEEE Journals}
% The only time the second header will appear is for the odd numbered pages
% after the title page when using the twoside option.
% 
% *** Note that you probably will NOT want to include the author's ***
% *** name in the headers of peer review papers.                   ***
% You can use \ifCLASSOPTIONpeerreview for conditional compilation here if
% you desire.




% If you want to put a publisher's ID mark on the page you can do it like
% this:
%\IEEEpubid{0000--0000/00\$00.00~\copyright~2015 IEEE}
% Remember, if you use this you must call \IEEEpubidadjcol in the second
% column for its text to clear the IEEEpubid mark.



% use for special paper notices
%\IEEEspecialpapernotice{(Invited Paper)}




% make the title area
\maketitle

% As a general rule, do not put math, special symbols or citations
% in the abstract or keywords.
\begin{abstract}
  A trust  management system (TMS)  is an integral  component of any  IoT network. A  reliable TMS must guarantee  the network security, data integrity, and act  as a referee that
  promotes legitimate devices, and punishes any  malicious activities. Trust scores assigned by TMSs
  reflect devices' reputations, which can help predict the future behaviours of network entities and
  subsequently judge the reliability of different entities in IoT networks.  Many TMSs have
  been proposed in the literature, these systems are designed for small-scale trust attacks, and can
  deal  with attacks  where  a malicious  device  tries to  undermine TMS  by  spreading fake  trust
  reports. However, these systems  are prone to large-scale trust attacks.  To address this problem,
  in this  paper, we propose  a TMS for large-scale IoT systems  called Trust2Vec, which  can manage
  trust relationships in large-scale IoT systems and can mitigate large-scale trust attacks that are
  performed by hundreds of malicious devices.  Trust2Vec leverages a random-walk network exploration
  algorithm  that  navigates  the  trust  relationship among  devices  and  computes  trust  network
  embeddings, which enables it to analyze the  latent network structure of trust relationships, even
  if there is no  direct trust rating between two malicious devices.  To detect large-scale attacks,
  such as self-promoting  and bad-mouthing,  we propose  a network  embeddings community  detection
  algorithm that detects and blocks communities  of malicious nodes.  The effectiveness of Trust2Vec
  is  validated through  large-scale IoT  network simulation.  The results  show that  Trust2Vec can
  achieve up to 94\% mitigation rate in various network settings.

\end{abstract}

% Note that keywords are not normally used for peerreview papers.
\begin{IEEEkeywords}
IoT, trust management, network embedding, bad-mouthing, self-promoting, device trust.
\end{IEEEkeywords}


% For peer review papers, you can put extra information on the cover
% page as needed:
% \ifCLASSOPTIONpeerreview
% \begin{center} \bfseries EDICS Category: 3-BBND \end{center}
% \fi
%
% For peerreview papers, this IEEEtran command inserts a page break and
% creates the second title. It will be ignored for other modes.
\IEEEpeerreviewmaketitle


%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
\section{Introduction}

\IEEEPARstart{T}{he} wide  deployment of Internet of  Things (IoT) applications has  created a large
network of interconnected  physical devices, as well  as virtual entities, such  as agents. Managing
trust relationships among  this huge number of IoT  devices is an important part of  IoT security. A
trust  management  system   is  used  to  ensure   network  security  and  data   integrity  in  IoT
\cite{dhelim2021iot}.  A  Trust  management system  (TMS)  can  serve  as  a referee  that  promotes
well-behaved entities and punishes  malicious devices within the network. To do so,  a TMS assigns a
trust score for each entity in the network. A  Trust score is a good indicator for predicting future
behaviors of the network entities and subsequently  judging the reliability of different entities in
an IoT  network. However,  if malicious entities  manage to  alter the trust  scores, the  trust and
reputation indicators might not  reflect the genuine nature of network  entities. Therefore, the TMS
may mistakenly  punish reliable  entities and  reward malicious entities.  Furthermore, such  a fake
trust score  could pose  a serious  threat to  the functioning of  the whole  system and  may enable
network attackers  to gain access  to sensitive information \cite{kumar2021leveraging}.  Trust among
IoT devices is usually measured and  evaluated using two factors \cite{yan2014survey}, namely direct
trust and  indirect trust.  The former  represents the personal  experience of  a given  device with
regards to  other network entities, it  is usually computed  by rating the previous  experience with
these  entities.  The latter  represents  the  reputation  score of  a  device,  it is  computed  by
aggregating multiple ratings given by entities that interacted with the device. 

The most known  trust-based attacks are self-promoting attack  \cite{kandhoul2019t_cafe} (also known
as  a  good-mouthing  attack)  and bad-mouthing  attack  \cite{kalkan2020trusd}.  In  self-promoting
attacks, malicious devices attempt to illegally increase their trust scores (reputation). The attack
could be conducted by two  nodes, or by a large number of nodes that  work together to achieve their
malicious purpose.  In the most  basic form of  a self-promoting attack,  two nodes provide  a false
report for each  other to promote themselves  as trustworthy entities, hence  increasing their trust
scores (reputation). To mitigate the self-promoting attack,  a TMS must keep track of all previously
reported trust  ratings, and  detect and  punish the entities  that are  involved in  such malicious
activities. In bad-mouthing attack,  attackers usually give bad ratings to a  victim entity in order
to lower its trust score and destroy  its reputation among other nodes.
Figure \ref{small_scale} and
Figure \ref{large_scale} show examples of self-promoting and bad-mouthing attacks. In these figures,
the white circles denote normal entities, and the red circles denote malicious entities that perform
an attack. A solid arrow represents a positive trust rating and a dashed arrow represents a negative
trust rating.  Figure \ref{small_scale}  (a) illustrates an  example of  small-scale self-promoting,
where two  malicious nodes  increase their  trust scores  by repeatedly  giving each  other positive
ratings. Figure \ref{small_scale} (b) demonstrates that two malicious nodes undermine the reputation
of a legitimate node by continuously giving it negative trust ratings. Such small-scale attacks can
be easily mitigated by controlling the rating behaviors  of each entity in the system.  For example,
to prevent  self-promoting attacks, a TMS can limit the number  of positive trust ratings  that two
entities are  allowed to give  to each  other. Similarly, bad-mouthing  attacks can be  prevented by
limiting the number of negative trust ratings that  an entity can assign to another. However, things
get  more complicated  when a  group  of entities  is  collectively involved  in self-promoting  and
bad-mouthing  attacks. For  example, in  Figure  \ref{large_scale} (a)  a group  of malicious  nodes
increase their trust score  by giving each other positive ratings  without attracting any attention,
achieve this in the way that each node gives no more than one positive rating to another node in the
malicious group. Similarly, in Figure \ref{large_scale} (b) a group of malicious nodes performs
bad-mouthing attacks against a normal node by targeting it with unfair ratings.

\begin{figure}[!htbp]
	\centering
	\includegraphics[width=\columnwidth]{Figures/smallScale.png}
	\caption{(a) small-scale self-promoting attack. (b) small-scale bad-mouthing attack}
	\label{small_scale}
\end{figure}

\begin{figure}[!htbp]
	\centering
	\includegraphics[width=\columnwidth]{Figures/largeScale.png}
	\caption{(a) large-scale self-promoting attack. (b) large-scale bad-mouthing attack}
	\label{large_scale}
\end{figure}

While  existing  trust  frameworks  can  mitigate  small-scale  trust-related  attacks,  managements frameworks that considered  large-scale trust-related attacks have not been  seen yet. On the other hand, network embedding algorithms have been proven effective when dealing with large-scale graphs and networks \cite{cui2018survey}. Therefore, in this  paper, we  propose a  trust management  framework, dubbed  as Trust2Vec,  for large-scale  IoT systems, which can manage  the trust of millions of IoT devices.  Trust2Vec can mitigate large-scale trust attacks that are performed by hundreds of malicious nodes. Our contributions can be summarized as follows: 

\begin{itemize}
   \item  Propose  a trust  management  framework  that  can  mitigate large-scale  and  small-scale trust-related attacks, such as self-promoting and bad-mouthing attacks. 
   \item  Develop a  random-walk  network algorithm  that navigates  the  trust relationships  among  devices and computes  trust network embeddings. The algorithm enables  the proposed system to analyze the latent network structure of trust relationships. 
    \item We developed a parallelization method for trust attack detection in large-scale IoT systems. Parallelizing made the TMS highly scalable and can manage a large number of network devices with less computational cost.
    
\end{itemize}

The rest of the  paper is organized as follows: Section \ref{sec.2}  reviews existing research about
trust management  in IoT.  Section \ref{sec.3}  describes the  system design  of the  proposed trust
management framework, and how Trust2Vec is used to detect trust-related attacks. Section \ref{sec.4}
presents the  evaluation details and  experiment results. We conclude  the paper and  outline future
research directions in Section \ref{sec.5}.

%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 
\section{Related Work}
\label{sec.2}
Trust  management  in  IoT  is  a  well-established   research  topic  in  the  literature.  Guo  et
al. \cite{guo2021itcn} proposed a  data collection method for IoT using UAV that  uses a trust score
to  evaluate the  reliability of  data collection  devices. They  concluded that  using trust  as an
evaluation metric for  UAV data collection can  significantly increase the data  accuracy and reduce
data collection costs. Similarly, Liang et al. \cite{liang2021intelligent} investigated the usage of
trust management in UAV-assisted IoT. They proposed  a trust evaluation scheme to identify the trust
of  the mobile  vehicles by  dispatching the  UAV to  obtain the  trust messages  directly from  the
selected devices as evidence. Kumar et  al. \cite{kumar2021tp2sf} introduced a smart city networking
architecture  that  leverages  a  trust   computational  module  to  distinguish  unreliability  and
trustworthiness among  smart city sensors  and devices. Fang  et al \cite{fang2019ddtms}  proposed a
trust management framework, in  which the devices in the cluster start to  detect the nearby devices
within sensing  range, compute  their trust  value, and report  to a  pre-elected cluster  head. The
latter calculates  the aggregated trust  score of each  device in the  cluster. The cluster  head is
periodically re-elected by  the network devices with the cluster.   Chen et al. \cite{chen2018trust}
introduced IoT-HiTrust,  a 3-tier cloud-cloudlet-device hierarchical  trust-based service management
protocol for  large-scale mobile-cloud IoT systems.  Their proposed trust model  combines friendship
similarity, and social  contact similarity to compute  the trust score of network  devices. In their
study, the trust score is represented as a random variable in the range of [0, 1] following the Beta
($\alpha$, $\beta$) distribution. The numbers of positive  and negative experiences of an IoT device
are represented as binomial random variables. They computed  the indirect trust as a weighted sum of
service ratings reported by  other IoT devices, such that trust reports  of socially similar devices
are prioritized. Bahutair et al. \cite{ba2021multi}  introduced a generic trust management framework
that can operate for crowdsourced IoT  services. Their framework leverages a multi-perspective trust
model that obtains the  implicit features of crowd-sourced IoT services.  Each entity is represented
by a set of  characteristics that contribute to the entity's influence on  trust. The trust features
are fed into a machine-learning algorithm that  manages the trust model for crowdsourced services in
an  IoT network.  Marche el  al. \cite{marche2020trust}  discussed possible  trust attacks  that can
affect IoT networks, and introduced a trust  management model that is able to overcome trust-related
attacks.  Specifically, they  proposed  a  decentralized trust  management  model  based on  Machine
Learning algorithms. The model utilized several parameters to compute three trust scores, namely the
goodness, usefulness,  and perseverance  score. Their  model uses these  scores to  detect malicious
nodes  performing trust-related  attacks. Movahedi  et  al. \cite{movahedi2019t}  proposed T-D2D,  a
lightweight trust  model that  evaluates a network  device's trust level  using both  short-term and
long-term evaluation intervals  to mitigate different types of trust-related  attacks. T-D2D records
marginal misbehaving over several successive time slots to reveal the nature of suspicious malicious
nodes with a light misbehaving attitude. To  mitigate bad-mouthing attackers, T-D2D does not rely on
other nodes' recommendations in the case when the  direct trust is not decisive. T-D2D evaluates the
honesty of a recommender  based on the correctness of its recommendations  over time. Ben Abderrahim
et al. \cite{abderrahim2016dtms} introduced DTMS-IoT,  a Dirichlet-based trust management system for
the IoT, which alleviated dishonest trust  recommendations and related attacks by clustering devices
using the k-means algorithm. DTMS-IoT detects IoT  devices' malicious activities, which allows it to
alleviate   the    effect   of    on-off   attacks   and    dishonest   recommendations.  Liu et al. \cite{liu2022semi} introduced a semi-centralized TMS that leverage blockchain for single and multiple domains.  The devices are connected in a centralized fashion and coordinated by a cloud server that manage the rating data ledger, to support cross-domain data exchange the server uses rotation consensus protocol. The proposed TMS aggregates both direct and indirect trust information to compute the trust values of IoT devices. Din et al. \cite{din2021lighttrust}  introduced a  trust framework  for lightweight  devices, which  uses a
centralized  trust authority.  The  framework  manages trust  certificates  that  enable devices  to
exchange  services without  prior  knowledge or  performing trust  computations.  Trust between  two
devices  is  computed  by  direct  observations  in terms  of  delivery  ratio,  compatibility,  and
cooperativeness, while trust recommendations are utilized to determine trust in the case of indirect
observations.  Okuda et  al. \cite{okuda2019community}  proposed a  random-walk community  detection
algorithm that  clusters similar  nodes. Nodes  that frequently appear  when traversing  the network
using finite-length random walk are judged to belong to the same community.  Aung et al \cite{aung2020t,aung2021dynamic} studied trust relationship among driverless cars in the context of vehicular ad-hoc networks (VANET) for route recommendations and path planning, and also trust-based content caching \cite{aung2021vesonet,aung2018accident}. Wu et al. \cite{wu2018information,liao2019security} proposed a deep-learning (DL)-based physical layer authentication scheme which exploits channel state information to enhance the security of mobile edge computing systems. Dhelim et al \cite{dhelim2021survey} studied the trust among social network users for personality-aware recommendation system, they concluded that recommendation accuracy can be significantly improved by adding social factors such as trust and personality traits. Wang et al \cite{wang2021survey} studied trust relationships in human-machine hybrid artificial intelligence. Similarly, Cai et al \cite{cai2020robot} suggested that trust can be established in human-robot interactions. 


All  the above-mentioned  trust  frameworks were  designed to  mitigate  small-scale trust  attacks,
without consideration  for large-scale trust attacks.  That is due  to the challenge of  analysing a
large  number  of IoT  devices  with  limited computational  power  required  to analyse  the  trust
relationships. In our proposed  system, we have considered both small-scale,  as well as large-scale
trust attacks.  We have overcome  the computational cost limit  problem by analysing  latent network
embeddings of trust relationships among IoT devices. 

%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
\section{System model}
\label{sec.3}
To detect and mitigate a trust-related attack, Trust2Vec will analyse the network structure of trust
relationships among devices. The main phases of  the attack detection process, as depicted in Figure
\ref{social_path} are: 1)  determine device communities; 2) generate random  walks within each local
community, which yield the devices' trust network embeddings; 3) leverage trust relationship network
embeddings to detect malicious device clusters.

\begin{figure}[!htbp]
	\centering
	\includegraphics[width=\columnwidth]{Figures/random_walk.png}
	\caption{Trust2Vec mitigation scheme phases}
	\label{social_path}
\end{figure}

\subsection{Community Detection}

The network of  devices can be structured  as a graph $G=\left(D,T\right)$ that  represents a signed
trust   network  between   devices,   where   the  graph   vertices   represent   the  IoT  devices;
$D=\left\{d_1,d_2,\dots ,d_n\right\}$,  and the edges  represent the previous trust  reports between
graph  nodes; $T=\left\{T^+,T^-\right\}$. An  edge $t_{i,j}\in  T^+$ denotes  that  device $d_j$  is
declared as  trustworthy by device $d_i$,  and $t_{i,j}\in T^-$  denotes that device $d_j$  has been
declared as untrustworthy by  device $d_i$. Given the enormous size of IoT  networks, which can have
millions of  devices, it  is not  viable to  operate on the  overall IoT  network. However,  the IoT
network is generally easy to partition, as it  is composed of smaller IoT subnetworks that are known
as IoT units  \cite{dhelim2021iot}. The edge density  (trust relationships in our  case) within these
IoT units is much higher  than the edge between these Units. This is  based on the observations that
interactions between edge devices to perform edge computing tasks generate a high  number of trust
relationships as  these devices  work together  within the same  local network \cite{naouri2021novel}. This allows us to detect the communities' boundaries without decreasing the resolution limit, an advantage that is not
possible to get with other types of networks, such as social network graphs or user-products graphs \cite{dhelim2020personality}, where the communities tend to overlap with each other \cite{dhelim2020compath}.

\subsection{Random Walks Generation}

To compute the latent network structure, Trust2Vec  generates random walks by navigating the network
through random steps. The  logic behind this approach is that the more  we repeat these random walks
from the same starting device with a fixed length, the more likely the walks will include nodes that
are similar  in terms of network  proximity, either first-order proximity  or second-order proximity
nodes. Let $W_{d_i}(l)$ denotes the random walk starting from device $d_i$ with a walk length $l$. A
random  walk $W_{d_i}(l)$  is a  stochastic process  composed of  a chain  of random  variables
$W_{d_i}\left(l\right)=\left\{w^1_{d_i},w^2_{d_i},\dots  ,w^l_{d_i}\right\}$,  where $w^n_{d_i}$  is
the neighbor  device that  is randomly  chosen among $w^{n-1}_{d_i}$  neighbors.  Relying  on random
walks  to  compute  the  latent  network  structure is  desirable  for  two  reasons.  Firstly,  the
computations  of the  random walks  can be  distributed  among edge  devices, hence  the process  is
distributed and can be performed offline without relying on any remote cloud or server. Secondly, as
the random walks are limited with walk length $l$, the newly added trust relationships among devices
can be easily  accommodated by regenerating random  walks only for the  updated trust relationships,
without  the need  to  recompute  the random  walks  for  the whole  graph. To navigate the  trust
relationships  among devices,  Trust2Vec estimates  the likelihood  of observing  a series  of short
random walks  by adapting  the same  approach in  natural language  modeling, where  the goal  is to
estimate the likelihood of a sentence being present in a corpus. The analogy here is to calculate the trust walk TW that starts from source device $d_o$, and estimate the probability of arriving at destination device $d_d$ given the previously navigated devices through a random walk of length $l$:

\begin{equation}
	\label{eq1}
	{TW\left(d_{s},d_{d},l\right)=Pr\left(d_d\ |\ \left(w^1_{d_s},w^2_{d_s},\dots,w^{l-1}_{d_s}\right)\right)}
\end{equation}

\subsection{Node Embeddings Learning}
The objective  is to  learn the device's latent trust structure  in the  trust graph, not  only the neighboring nodes that  are a few hops away. Trust2Vec computes a device's  trust network structure and represents it as a vector in low dimensional space.  Formally, let $\phi :d\in  D\ \longmapsto
{\mathbb{R}}^{|D|\times  z}$  be the  mapping  function  that  represents  a device's  latent  trust
structure for each device in D. Here z is the length of the vector in the lower dimension, such that $z\ll  \left|D\right|$, hence  it  is easier  to  manipulate  small vectors  rather  than the large adjacency matrix. The likelihood estimation is then represented as:

\begin{equation}
	\label{eq2}
	{Pr\left(d_d\ |\ \left(\phi (w^1_{d_s}),\phi (w^2_{d_s}),\dots, \phi (w^{l-1}_{d_s})\right)\right)}
\end{equation}	

As the random walk length increases, it becomes computationally expensive to calculate the objective
function.    To    overcome   this    problem,    Trust2Vec    leverages   the    skip-gram    model
\cite{mikolov2013distributed},  which inverses  the  problem  by predicting  the  context given  the
missing word  instead of predicting the  word given the  context. The skip-gram model  maximizes the
likelihood of any word  to be observed in the current context without  prior knowledge about current
words. In the context of trust management, Trust2Vec target the following objective function: 

\begin{equation}
	\label{eq3}
	{{\mathop{\mathrm{Min}}_{\phi}\left[-\mathrm{log}Pr\left(\left\{d_{i-w},\dots, d_{i-1}, d_{i+1}, 
	\dots, d_{i+w}\right\}|{\phi (d}_1)\right)\right]}}
\end{equation}

where $w$ is the random walk window size.

Trust2Vec optimizes  the function  (\ref{eq3}) to  build the trust  network representation  for each
device, hence capturing the  latent similarity between network devices. Devices  that have a similar
trust network  structure will have similar  trust vectors in lower-dimensional  space. Measuring the
similarity of devices'  representation in lower-dimensional space allows us  to reveal the community
membership, thus detecting malicious devices that perform trust-based attacks.

To computing devices' trust relationships and extract trust network embeddings, we developed Algorithm \ref{deviceTrustAlgo}. The algorithm takes as an input the graph of devices in the studied edge environment, and generate the matrix $\phi \in {\mathbb{R}}^{|D|\times z}$ that represents the trust relationship network structure in lower dimensional space. Firstly, the algorithm generates the random walks of length $l$ for $\mathrm{\lambda}$ times starting from each device $d_x$ (line 3-5), and for each device within the $\omega $ hop away in the random walk $W_{\mathrm{\ }d_x}$ apply the SkipGram model to map every device $d_y$ to its representation vector ${\phi (d}_y)\in {\mathbb{R}}^z$. Given the low dimension representation, we are aiming to maximize the probability of the device neighbors in random walks (line 7). The posterior probability can be computed using basic classifiers such as logistic regression. However, this approach is not feasible as the number of devices increase, and become computational expensive to perform. To address this, we leverage hierarchical softmax \cite{perozzi2014deepwalk}, which maps all the network nodes (devices in our case) to a binary tree. In this way, the prediction problem is pivoted to maximizing the probability of path navigation from the root to the leaf of the tree that identify that device. In case a device $d_k$ is defined by the sequence $\left(b_0,b_1,\dots .,b_{\left\lceil log\left[D\right]\right\rceil }\right)$ where $b_0$ is the root and $b_{\left\lceil log\left|D\right|\right\rceil }=d_k$ then eq(\ref{eq3}) can be computed using binary classifier, which reduces the complexity of computing $Pr(d_k|\phi (d_y))\ $ from $O(\left|D\right|)$ to $O(log\left|D\right|)$ as showed bellow in eq(\ref{eq4})

\begin{equation}
	\label{eq4}
	{{\mathrm{Pr} \left(d_k\mathrel{\left|\vphantom{d_k {\phi (d}_y)}\right.\kern-\nulldelimiterspace}{\phi (d}_y)\right)\ }=\prod^{\left\lceil log\left|D\right|\right\rceil }_{l=1}{Pr(d_k|\phi (d_y))}}
\end{equation}

To optimize eq(4), Trust2Vec utilizes Stochastic gradient descent (SGD). The derivatives are computed using the back-propagation algorithm, SGD learning rate is initialized as 2.5\% at the start of the training and then decreased linearly with the count of devices encountered so far.

\begin{algorithm}
	\caption{Device\_Trust\_Embeddings}
	\label{deviceTrustAlgo}
	\begin{flushleft}
	\textbf{Input}\newline 
	graph $G=\left(D,T\right)$\newline
	Walk window size $\omega $\newline  
	Low dimension vector size $z$\newline  
	Random walks count per device $\mathrm{\lambda }$\newline  
	Random walks length $l$\newline
	\textbf{Output} \newline
	$\phi \in {\mathbb{R}}^{|D|\times z}$ Matrix of device trust embeddings
	\end{flushleft}
	\begin{algorithmic}[1]
	\STATE Sample\_matrix($\phi ,D)$
	\STATE Generate\_Binary\_Tree(T,D)
	\FOR {$i:\ 0\to \mathrm{\ }\mathrm{\lambda }$}
	\FORALL{$d_x\in D$}
	\STATE $W_{\mathrm{\ }d_x}=RandomWalk(G,\mathrm{\ }d_x,l)$
	\FORALL{$d_y$ in $W_{\mathrm{\ }d_x}$}
	\STATE $J\left(\phi \right)=\ -{\mathrm{log} Pr\left(d_k|\phi (d_y)\right)\ }$
	\ENDFOR
	\ENDFOR
	\ENDFOR
	\end{algorithmic} 
\end{algorithm}



\subsection{Trust attack detection}


After computing the low dimensional trust network structure using Trust2Vec, the resulting embeddings are used to detect trust attacks. We propose an algorithm which can detect large-scale bad-mouthing and self-promoting attacks, as shown in Algorithm \ref{trust_attack_algo}. Given the network embeddings of trust graph $\phi (G)$, the source device $d_s$ that reports the trust relationship (trustor), and the destination device $d_d$ that received trust level (trustee). In case of a positive trust report, it is checked for possible large-scale self-promoting. Lines 1-8 checks if the similarity of embeddings vectors of the trustor and trustee is greater than the embedding similarity threshold $\alpha $, the set of suspected devices is denoted as ${\mathrm{\Omega }}_P$, which is the union of the previous positive trustees and trustors of the trustor device $d_s$. The set of malicious self-promoting cluster ${\mathrm{M}}_s$ is determined by comparing the positive trust report to devices within ${\mathrm{\Omega }}_P$, and to devices outside ${\mathrm{\Omega }}_P$, which are denoted as $\overline{{\mathrm{\Omega }}_P}$, and classified as malicious nodes if the cardinality difference is greater than the self-promoting similarity threshold $\beta$. In the case of a negative trust report, it is checked against bad-mouthing attack as shown in lines 9-20. The set of suspected device is denoted as ${\mathrm{\Omega }}_N$, which contain the devices $N_{in}(d_d)$ that previously given negative trust report against device $d_d$. If two or more devices within ${\mathrm{\Omega }}_N$ have low dimension similarity greater than the bad-mouthing similarity threshold $\gamma $, then these nodes are classified as malicious bad-mouthing community ${\mathrm{M}}_b$.

\begin{algorithm}
	\caption{Trust\_Attack\_Detection}
	\label{trust_attack_algo}
	\begin{flushleft}
	\textbf{Input}\newline 
	Network embeddings of trust graph $\phi (G)$\newline 
	$d_s$ trustor device\newline 
	$d_d$ trustee device\newline
	\textbf{Output} \newline
	${\mathrm{M}}_s$ malicious self-promoting community\newline
	${\mathrm{M}}_b$ malicious bad-mouthing community 
	\end{flushleft}
	\begin{algorithmic}[1]
	\IF{($R\left(d_s,d_d\right)>0$)}
	\IF{(Sim($\phi \left(d_s\right),\phi (d_d)$)$>\alpha $)}
	\STATE ${\mathrm{\Omega }}_P\mathrm{\leftarrow}P_{in}(d_s)\cup P_{out}(d_s)$
	\FORALL{$d_i\in {\mathrm{\Omega }}_P$}
	\IF{$(\left|P_{out}\left(d_i,{\mathrm{\Omega }}_P\right)\right|-\left|P_{out}(d_i,\overline{{\mathrm{\Omega }}_P})\right|)>\beta $}
	\STATE ${\mathrm{M}}_s\mathrm{\leftarrow }{\mathrm{M}}_s\mathrm{\cup }\left\{d_i\right\}$
	\ENDIF
	\ENDFOR
	\ELSE
	\STATE ${\mathrm{\Omega }}_N\mathrm{\leftarrow }N_{in}(d_d)$
	\FORALL{$d_i\in {\mathrm{\Omega }}_N$}
	\IF{$(\left|N_{out}(d_i,d_d)\right|)$}
	\FORALL{$d_j\in {\mathrm{\Omega }}_N-\left\{d_i\right\}$}
	\IF{$(Sim\left(\phi \left(d_s\right),\phi \left(d_d\right)\right)>\gamma )$}
	\STATE ${\mathrm{M}}_b\mathrm{\leftarrow }{\mathrm{M}}_b\mathrm{\cup }\left\{d_i,d_j\right\}$
	\ENDIF
	\ENDFOR
	\ENDIF
	\ENDFOR
	\ENDIF
	\ENDIF
	\end{algorithmic} 
\end{algorithm}


\section{Evaluation }
\label{sec.4}

\subsection{Evaluation baselines}

To test the effectiveness of the proposed system, we have compared its performance with the following trust management systems from the literature.

DDTMS \cite{fang2019ddtms}: In this system, the devices in the cluster start to detect the nearby devices within sensing range, and compute their trust value, and report that to a pre-elected cluster head. The latter calculates the aggregated trust score of each device in the cluster. The cluster head is periodically reelected by the network devices located within the cluster. In this system, the trust value is computed as: $Tij\mathrm{=}\alpha \mathrm{\times }DTij\mathrm{+}\beta \mathrm{\times }RTj$. Whereas, $\alpha$ is the weight of weight and $\beta$ is the weight of indirect observation, such that $\alpha$+$\beta$=1.

T-D2D \cite{movahedi2019t}: In this system, the overall trust level is computed by aggregating the direct trust level that account for the direct interaction between the two devices, and indirect trust that rely on other devices' recommendations. The total trust level between device i and device j is calculated as: $TTL_{i,j}=(1-\omega) DTL_{i,j}+ \omega ITL_{i,j}$ , where $DTL_{i,j}$ denotes direct trust level between device i and device j, $d$ denotes inderct trust level between device i and device j, and $\omega$ is the attention factor.


Liu-Trust: is a semi-centralized TMS that leverage blockchain for trust score management. The total trust value of device $i$ in device $j$ is denoted by $T^j_i\mathrm{(}t\mathrm{)=}\alpha \mathrm{\times }{DT}^j_i\mathrm{(}t\mathrm{)+}\beta \mathrm{\times }{IT}^j_i\mathrm{(}t\mathrm{)}$ , which is computed by aggregating direct trust value ${DT}^j_i\mathrm{(}t\mathrm{)}$, as well as indirect trust value ${IT}^j_i\mathrm{(}t\mathrm{)}$. The direct trust is computed as ${DT}^j_i\left(t\right)\mathrm{=}{ResT}^j_i\left(t\right)\mathrm{\times }RaT^j_i\mathrm{(}t\mathrm{)}$, where ${ResT}^j_i\left(t\right)$ is the response trust of device $i$ to device $j$, and is defined as the probability of device $i$ in whether device $j$ can provide information on time, and $RaT^j_i\mathrm{(}t\mathrm{)}$ is the rating trust and it represents the trustworthiness of device $i$ about another device $j$ on the aspect that device $j$ can provide reliable data on the request of $i$.

LightTrust: is a light-weight TMS, in which the trust between two nodes p and q is estimated by aggregating: device compatibility ${com}_{p\mathrm{\to }q}$, cooperativeness ${coop}_{p\mathrm{\to }q}$, and delivery ratio ${dl}_{p\mathrm{\to }q}$ as shown in eq (x), in addition to experience and previous knowledge. 
\[T\left(p,q\right)=\sum{({com}_{p\to q},{coop}_{p\to q},\ {dl}_{p\to q})}\] 

DTMS-IoT \cite{abderrahim2016dtms}: is a TMS that alleviate dishonest trust recommendations and related attacks by clustering the devices using k-means algorithm. 




\subsection{Experiments}
\begin{figure*}[htb]
	\centering
	\includegraphics[ scale=0.35]{Figures/F1R.png}
	\caption{Self-promoting in various malicious devices count}
	\label{result1}
\end{figure*}

\begin{table}
	\centering
	\caption{Simulation parameters}
	\label{simulation_parameters}
	\begin{tabular}{|l|l|l}
		\cline{1-2}
		\textbf{Parameter}   & \textbf{Value}   \\ \cline{1-2}
		OMNet++ & V5.7.0   \\ \cline{1-2}
		INET & V3.7.1             \\ \cline{1-2}
		Mobility Type & Linear Mobility \\ \cline{1-2}
        Mobility speed  & 10mps \\ \cline{1-2}
        Update Interval & 100ms \\ \cline{1-2}
        Transmitter power & 3.5mW \\ \cline{1-2}
	\end{tabular}
\end{table}


We have compared the proposed system with the above-mentioned baselines in various scenario and experiment settings. The simulation is performed using INET, an open-source model library framework of OMNet++ simulator \cite{varga2010omnet}, that can simulate wired and wireless networks, and also support mobility module that can be used to simulated IoT and Fog/Edge computing networks. Table \ref{simulation_parameters} shows the simulation environment details. We simulate the network with different number of devices and malicious devices percentages to observe the effect on the overall performance. We simulate 10000 devices, The mobile devices are randomly placed at the beginning of simulation, and moves according to INET's linear mobility model. The trust scores of the devices within each cluster are stored in a local fog server that is usually the gateway to the external network. The trust value of each device is initialized as 0, and can vary between -1 and 1. Devices can express their trust level regarding their neighbouring device following device to device interaction such as data exchange interactions, or common computational or data offloading tasks. For small-scale attacks, we randomly choose a device that tries to self-promote or bad-mouth one of its neighbors that is randomly selected, we repeat the attack until the number of fake trust report submitted by the attackers represent a certain percentage (attack density) of the total submitted trust reports. We evaluate the system's performance with difference attack densities (5\% to 50\%). We also evaluate the system with different malicious devices percentages, in which we randomly select a certain percentage of devices to perform self-promoting or bad-mouthing attacks, we have simulated the system in different malicious devices percentage settings (5\% to 50\%). For large-scale attacks, we randomly select x (depending on the malicious devices percentage) devices as a group malicious devices that self-promote each others, in which each device iterate and self-promote all the other devices within the malicious group, as shown in the example in Figure  \ref{large_scale} (a). for bad-mouthing, we randomly select a victim device, all the devices in the malicious group will bad-mouth the victim device, as shown in the example in Figure  \ref{large_scale} (b).

We evaluate the proposed system and other baselines based on the following metrics: (1) Self-promoting attack resilience: The ability to accurately detect small-scale and large-scale self-promoting attacks without mistakenly blocking legitimate devices. (2) Bad-mouthing attack resilience: The ability to identify small-scale and large-scale bad-mouthing attacks without mistakenly blocking legitimate devices. The attack success rate is defined as the ratio of succeed attacks (e.g. self-promoting trust report) from all attempted attacks by all nodes in the network, as defined in eq (\ref{attack_success_rate}), where $s$ is the number of simulated devices, $AS_i$ is the total succeed attacks by device $i$, and $AA_i$ is the total attack attempts by device $i$.



\begin{equation}
\label{attack_success_rate}
{ASR=\frac{\sum_{i=1}^{s}\frac{AS_i}{AA_i}}{s}}
\end{equation}
\begin{figure*}[hbt]
	\centering
	\includegraphics[scale=0.35]{Figures/F2R.png}
	\caption{Self-promoting in various attack densities}
	\label{result2}
\end{figure*}




\begin{figure*}[ht]
	\centering
	\includegraphics[scale=0.35]{Figures/F3R.png}
	\caption{Bad-Mouthing in various malicious devices count}
	\label{result3}
\end{figure*}

\begin{figure*}[ht]
	\centering
	\includegraphics[scale=0.35]{Figures/F4R.png}
	\caption{Bad-Mouthing in various attack densities}
	\label{result4}
\end{figure*}

\subsection{Results and discussion}


Figure \ref{result1} shows self-promoting success rate with different malicious devices percentage from 5\% to 50\%. In Figure \ref{result1} (a) the attack is performed as small-scale self-promotion, where the malicious devices are randomly chosen, and each two malicious devices try to inflate each other's trust value by broadcasting fake trust reports to other nodes in network. Figure \ref{result1} (b) displays a large-scale attack, where randomly selected malicious devices inflate their trust scores by distributing trust reports among their group rather than through multiple mutual trust reports, hence avoid being detected. From Figure \ref{result1}(a), we can observe that the percentage of a successful self-promoting attack increases proportional with malicious devices percentage for all studied systems. All baselines have relatively low attack success rate, with 0.005\% when there is  5\% of the devices are malicious. The attack success rate increase when more devices malicious participate in the attack, as it become more difficult to distinguish legitimate trust ratings from self-promoting ratings; however, the attack is mitigated as the attackers are stopped once detected, and the attack success rate stabilizes with less than 0.03 for all baselines, except DDTMS and Liu-Trust, they fail to detect malicious nodes as they rely on neighboring devices' observations, which can be misleading if the neighbors are among the malicious nodes. Unlike Figure \ref{result1}(a) where Trust2Vec has similar performance with the studied baselines, the upper hand of Trust2Vec is obvious in Figure \ref{result1}(b) which shows the success rate of large-scale self-promoting attack with different malicious devices percentage from 5\% to 50\%. We can observe that Trust2Vec is the only system that can mitigate attacks as the percentage of malicious devices increases. That is because Trust2Vec analyses not only the direct trust link but also the latent trust graph structure, whereas other baselines focus on direct trust links between devices. 

Figure \ref{result2} shows self-promoting success rate with different attack density. The higher the attack density, the more malicious devices attempt to inflate their trust score. Figure \ref{result2} (a) and (b) show small-scale  and large-scale attack scenario. From Figure \ref{result2} (a), we can observe that all the attack success rate plummets when the attack density increases, that is because in high attack density, malicious device become more aggressive by sending successive fake trust reports, hence they are easily detected and eventually blocked. In Figure \ref{result2} (b), we can easily observe that Trust2Vec copes well with increase of attack density in large-scale scenarios, unlike other baselines that could not mitigate large-scale attacks.

Figure \ref{result3} shows bad-mouthing success rate with different malicious devices percentage from 5\% to 50\%. Figure \ref{result3} (a) and (b) display small-scale and large-scale attacks respectively. As seen in self-promoting attacks, the studied baselines have similar performance in small-scale settings. Nonetheless, the superiority of Trust2vec is obvious in large-scale settings, that is because the bad-mouthing is traced back by analysing the malicious devices' latent trust network structure through network embedding comparison, unlike the studied baselines that rely solely on the direct observation of neighboring devices.

Figure \ref{result4} shows bad-mouthing success rate with different attack density. With small-scale attack in Figure \ref{result4} (a), we can observe that all the studied baselines perform better when with higher attack density, with 0.04\% attack success rate at worst (DDTMS) when the attack is at 5\% density. As the attack density increases, it become much easier to detect and block malicious nodes. However, in large-scale attack scenario shown in Figure \ref{result4} (b), all baselines (DDMTS, T-D2D, Liu-Trust, LightTrust and DMTS-IOT) fail to detect malicious nodes, with at least 55\% attack success rate in all attack densities. Nevertheless, Trust2Vec was able to mitigate large-scale by 82\% in less dense attacks and up to 90\% percent in highly dense attacks.



\section{Conclusion}
\label{sec.5}

In this paper we have proposed a trust management system for large-scale IoT systems named Trust2Vec. Unlike state-of-the-art trust frameworks that focus only on small-scale IoT networks, Trust2Vec can be leveraged to manage trust relationships among devices in large-scale IoT application. Trust2Vec had been validated through large-scale IoT network simulation. The results show that Trust2Vec can achieve up to 94\% mitigation rate in various network scenarios. 
The proposed trust management system can be further improved from various aspects:
\begin{itemize}
    \item The proposed system focus on general IoT applications, where the devices can include fixed devices such as sensors and mobile devices such as mobile phones. However, things may differ in high dynamic environments such as vehicular network. Extending the proposed system to be customized for scenario-specific IoT applications is one of our future directions
    \item Trust2Vec can be extended to manage trust in of virtual network entities  by a software defined network.
    \item The proposed system manages trust scores of network devices. In our next work, we will extend that to include trust management of data entities as well.
\end{itemize}


\section*{Acknowledgment}
This work was supported by:

The Insight Centre for Data Analytics funded by Science Foundation Ireland under Grant Number 12/RC/2289 P2.

CONSUS project funded by the SFI Strategic Partnerships Programme (16/SPP/3296) and is co-funded by Origin Enterprises Plc.

The National Natural Science Foundation of China under Grant 61872038.


% An example of a floating figure using the graphicx package.
% Note that \label must occur AFTER (or within) \caption.
% For figures, \caption should occur after the \includegraphics.
% Note that IEEEtran v1.7 and later has special internal code that
% is designed to preserve the operation of \label within \caption
% even when the captionsoff option is in effect. However, because
% of issues like this, it may be the safest practice to put all your
% \label just after \caption rather than within \caption{}.
%
% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class
% option should be used if it is desired that the figures are to be
% displayed while in draft mode.
%
%\begin{figure}[!t]
%\centering
%\includegraphics[width=2.5in]{myfigure}
% where an .eps filename suffix will be assumed under latex, 
% and a .pdf suffix will be assumed for pdflatex; or what has been declared
% via \DeclareGraphicsExtensions.
%\caption{Simulation results for the network.}
%\label{fig_sim}
%\end{figure}

% Note that the IEEE typically puts floats only at the top, even when this
% results in a large percentage of a column being occupied by floats.


% An example of a double column floating figure using two subfigures.
% (The subfig.sty package must be loaded for this to work.)
% The subfigure \label commands are set within each subfloat command,
% and the \label for the overall figure must come after \caption.
% \hfil is used as a separator to get equal spacing.
% Watch out that the combined width of all the subfigures on a 
% line do not exceed the text width or a line break will occur.
%
%\begin{figure*}[!t]
%\centering
%\subfloat[Case I]{\includegraphics[width=2.5in]{box}%
%\label{fig_first_case}}
%\hfil
%\subfloat[Case II]{\includegraphics[width=2.5in]{box}%
%\label{fig_second_case}}
%\caption{Simulation results for the network.}
%\label{fig_sim}
%\end{figure*}
%
% Note that often IEEE papers with subfigures do not employ subfigure
% captions (using the optional argument to \subfloat[]), but instead will
% reference/describe all of them (a), (b), etc., within the main caption.
% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure
% labels, the optional argument to \subfloat must be present. If a
% subcaption is not desired, just leave its contents blank,
% e.g., \subfloat[].


% An example of a floating table. Note that, for IEEE style tables, the
% \caption command should come BEFORE the table and, given that table
% captions serve much like titles, are usually capitalized except for words
% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to
% and up, which are usually not capitalized unless they are the first or
% last word of the caption. Table text will default to \footnotesize as
% the IEEE normally uses this smaller font for tables.
% The \label must come after \caption as always.
%
%\begin{table}[!t]
%% increase table row spacing, adjust to taste
%\renewcommand{\arraystretch}{1.3}
% if using array.sty, it might be a good idea to tweak the value of
% \extrarowheight as needed to properly center the text within the cells
%\caption{An Example of a Table}
%\label{table_example}
%\centering
%% Some packages, such as MDW tools, offer better commands for making tables
%% than the plain LaTeX2e tabular which is used here.
%\begin{tabular}{|c||c|}
%\hline
%One & Two\\
%\hline
%Three & Four\\
%\hline
%\end{tabular}
%\end{table}


% Note that the IEEE does not put floats in the very first column
% - or typically anywhere on the first page for that matter. Also,
% in-text middle ("here") positioning is typically not used, but it
% is allowed and encouraged for Computer Society conferences (but
% not Computer Society journals). Most IEEE journals/conferences use
% top floats exclusively. 
% Note that, LaTeX2e, unlike IEEE journals/conferences, places
% footnotes above bottom floats. This can be corrected via the
% \fnbelowfloat command of the stfloats package.









% if have a single appendix:
%\appendix[Proof of the Zonklar Equations]
% or
%\appendix  % for no appendix heading
% do not use \section anymore after \appendix, only \section*
% is possibly needed

% use appendices with more than one appendix
% then use \section to start each appendix
% you must declare a \section before using any
% \subsection or using \label (\appendices by itself
% starts a section numbered zero.)
%





% Can use something like this to put references on a page
% by themselves when using endfloat and the captionsoff option.
\ifCLASSOPTIONcaptionsoff
  \newpage
\fi



% trigger a \newpage just before the given reference
% number - used to balance the columns on the last page
% adjust value as needed - may need to be readjusted if
% the document is modified later
%\IEEEtriggeratref{8}
% The "triggered" command can be changed if desired:
%\IEEEtriggercmd{\enlargethispage{-5in}}

% references section

% can use a bibliography generated by BibTeX as a .bbl file
% BibTeX documentation can be easily obtained at:
% http://mirror.ctan.org/biblio/bibtex/contrib/doc/
% The IEEEtran BibTeX style support page is at:
% http://www.michaelshell.org/tex/ieeetran/bibtex/
%\bibliographystyle{IEEEtran}
% argument is your BibTeX string definitions and bibliography database(s)
%\bibliography{IEEEabrv,../bib/paper}
%
% <OR> manually copy in the resultant .bbl file
% set second argument of \begin to the number of references
% (used to reserve space for the reference number labels box)

\bibliographystyle{IEEEtran}

\bibliography{refs}

% biography section
% 
% If you have an EPS/PDF photo (graphicx package needed) extra braces are
% needed around the contents of the optional argument to biography to prevent
% the LaTeX parser from getting confused when it sees the complicated
% \includegraphics command within an optional argument. (You could create
% your own custom macro containing the \includegraphics command to make things
% simpler here.)
%\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{mshell}}]{Michael Shell}
% or if you just want to reserve a space for a photo:
\vskip 0pt plus -1fil

\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{Figures/bio/sahra.jpg}}]{Sahraoui Dhelim}
	is a postdoctoral researcher at University College Dublin, Ireland. He was a visiting researcher at Ulster University, UK (2020-2021). He obtained his PhD degree in Computer Science and Technology from the University of Science and Technology Beijing, China, in 2020. And a Master's degree in Networking and Distributed Systems from the University of Laghouat, Algeria, in 2014. He serves as workshop chair of Cyberspace congress (CyberCon). His research interests include Social Computing, Digital Agriculture, Deep-learning, Recommendation Systems and Intelligent Transportation Systems.
\end{IEEEbiography}


\vskip 0pt plus -1fil
\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{Figures/bio/chekli.jpg}}]{Nyothiri Aung}
is a postdoctoral researcher at University College Dublin, Ireland. She received her PhD in Computer Science and Technology from University of Science and Technology Beijing, China, 2020. And a Master's of Information Technology from Mandalay Technological University, Myanmar, 2012. She worked as a tutor at the Department of Information Technology in Technological University of Meiktila, Myanmar (2008-2010). And System Analyst of ACE Data System, Myanmar (2012-2015). Her research interests include Social Computing, Medical image analysis, and Intelligent Transportation Systems.
\end{IEEEbiography}	



\vskip 0pt plus -1fil
\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{Figures/bio/tahar.jpg}}]{Mohand Tahar Kechadi}
is a full professor in school of computer science, University College Dublin, Ireland. He received master’s and Ph.D. degrees in computer science from the University of Lille 1, France. His research interests include data mining, distributed data mining heterogeneous distributed systems, grid and cloud computing, and digital forensics and cyber-crime investigations. He is a member of the Communications of the ACM journal and IEEE Computer Society. He is an Editorial Board Member of journal of Future Generation Computer Systems.
\end{IEEEbiography}



\vskip 0pt plus -1fil

\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{Figures/bio/ninghuansheng.jpg}}]{Huansheng Ning}
	Received his B.S. degree from Anhui University in 1996 and his Ph.D. degree from Beihang University in 2001. Now, he is a professor and vice dean of the School of Computer and Communication Engineering, University of Science and Technology Beijing, China. His current research focuses on the Internet of Things and general cyberspace.
	He is the founder and chair of the Cyberspace and Cybermatics International Science and Technology Cooperation Base.
	He has presided many research projects including Natural Science Foundation of China, National High Technology Research and Development Program of China (863 Project). He has published more than 150 journal/conference papers, and authored 5 books. He serves as an associate editor of IEEE Systems Journal (2013-Now), IEEE Internet of Things Journal (2014-2018), and as steering committee member of IEEE Internet of Things Journal (2016-Now).
\end{IEEEbiography}

\vskip 0pt plus -1fil

\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{Figures/bio/chen.jpg}}]{Liming Chen}
	is a professor in the School of Computer  Science  and  Informatics  at  University  of  Ulster,  Newtownabbey,  United  Kingdom.  He  received his  B.Eng  and  M.Eng  from  Beijing  Institute  of Technology  (BIT),  Beijing,  China,  and  his  Ph.D  in Artificial Intelligence from De Montfort University,UK.  His  research  interests  include  data  analysis,ubiquitous computing, and human-computer interaction. Liming is a Fellow of IET, a Senior Member of IEEE, a Member of the IEEE Computational Intelligence Society (IEEE CIS), a Member of the IEEE CIS Smart World Technical Committee (SWTC), and the Founding Chair of the IEEE CIS SWTC Task Force on User-centred Smart Systems (TF-UCSS). He has served as an expert assessor, panel member and evaluator for UK EPSRC (Engineering and Physical Sciences Research Council, member of the Peer Review College), ESRC (Economic and Social Science Research Council), European Commission Horizon 2020 Research Program, Danish Agency for Science and Higher Education, Denmark, Canada Foundation for Innovation (CFI), Canada, Chilean National Science and Technology Commission (CONICYT), Chile, and NWO (The Netherlands Organisation for Scientific Research), Netherlands.
\end{IEEEbiography}

\vskip 0pt plus -1fil

\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{Figures/bio/lakas.jpg}}]{Abderrahmane Lakas}
is a Professor at the Computer and Network Engineering department in the College of IT at UAE University. He holds an MS, and PhD in Computer Systems from the University of Pierre et Marie Curie (Paris VI, France). He has several years of both academic and industrial experience. He spent two years as a postdoc researcher at School of Computing and Communication at the University of Lancaster in UK. He is the head of CAST (Connected Intelligent Autonomous Systems) research group and the Connected Autonomous Intelligent Systems Lab (ASIL). Prior to joining UAE University, he held several industrial positions in several companies in Canada and the US including at Netrake (Plano, TX, USA), Nortel Networks (Ottawa, Canada), and Newbridge (Ottawa, Canada). His current research interests include intelligent transportation systems, vehicular ad hoc networks, unmanned ground and aerial vehicles, autonomous systems, smart cities, Internet of Things, and QoS. Dr. Lakas has published several research papers in scholarly journals. He is member of the TPC and reviewer of several renown conferences and serves in the editorial board of few journals.
\end{IEEEbiography}



% You can push biographies down or up by placing
% a \vfill before or after them. The appropriate
% use of \vfill depends on what kind of text is
% on the last page and whether or not the columns
% are being equalized.

%\vfill

% Can be used to pull up biographies so that the bottom of the last one
% is flush with the other column.
%\enlargethispage{-5in}



% that's all folks
\end{document}



% Generated by IEEEtran.bst, version: 1.14 (2015/08/26)
\begin{thebibliography}{10}
\providecommand{\url}[1]{#1}
\csname url@samestyle\endcsname
\providecommand{\newblock}{\relax}
\providecommand{\bibinfo}[2]{#2}
\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}
\providecommand{\BIBentryALTinterwordstretchfactor}{4}
\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus
\BIBentryALTinterwordstretchfactor\fontdimen3\font minus
  \fontdimen4\font\relax}
\providecommand{\BIBforeignlanguage}[2]{{%
\expandafter\ifx\csname l@#1\endcsname\relax
\typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}%
\typeout{** loaded for the language `#1'. Using the pattern for}%
\typeout{** the default language instead.}%
\else
\language=\csname l@#1\endcsname
\fi
#2}}
\providecommand{\BIBdecl}{\relax}
\BIBdecl

\bibitem{dhelim2021iot}
S.~Dhelim, H.~Ning, F.~Farha, L.~Chen, L.~Atzori, and M.~Daneshmand,
  ``Iot-enabled social relationships meet artificial social intelligence,''
  \emph{IEEE Internet of Things Journal}, vol.~8, no.~24, pp. 17\,817--17\,828,
  2021.

\bibitem{kumar2021leveraging}
R.~Kumar and R.~Sharma, ``Leveraging blockchain for ensuring trust in iot: A
  survey,'' \emph{Journal of King Saud University-Computer and Information
  Sciences}, 2021.

\bibitem{yan2014survey}
Z.~Yan, P.~Zhang, and A.~V. Vasilakos, ``A survey on trust management for
  internet of things,'' \emph{Journal of network and computer applications},
  vol.~42, pp. 120--134, 2014.

\bibitem{kandhoul2019t_cafe}
N.~Kandhoul, S.~K. Dhurandher, and I.~Woungang, ``T\_cafe: a trust based
  security approach for opportunistic iot,'' \emph{IET Communications},
  vol.~13, no.~20, pp. 3463--3471, 2019.

\bibitem{kalkan2020trusd}
K.~Kalkan and K.~Rasmussen, ``Trusd: Trust framework for service discovery
  among iot devices,'' \emph{Computer Networks}, vol. 178, p. 107318, 2020.

\bibitem{cui2018survey}
P.~Cui, X.~Wang, J.~Pei, and W.~Zhu, ``A survey on network embedding,''
  \emph{IEEE transactions on knowledge and data engineering}, vol.~31, no.~5,
  pp. 833--852, 2018.

\bibitem{guo2021itcn}
J.~Guo, A.~Liu, K.~Ota, M.~Dong, X.~Deng, and N.~Xiong, ``{ITCN: an intelligent
  trust collaboration network system in IoT},'' \emph{IEEE Transactions on
  Network Science and Engineering}, 2021.

\bibitem{liang2021intelligent}
J.~Liang, W.~Liu, N.~N. Xiong, A.~Liu, and S.~Zhang, ``{An intelligent and
  trust UAV-assisted code dissemination 5G system for industrial
  Internet-of-Things},'' \emph{IEEE Transactions on Industrial Informatics},
  vol.~18, no.~4, pp. 2877--2889, 2021.

\bibitem{kumar2021tp2sf}
P.~Kumar, G.~P. Gupta, and R.~Tripathi, ``{TP2SF: A Trustworthy
  Privacy-Preserving Secured Framework for sustainable smart cities by
  leveraging blockchain and machine learning},'' \emph{Journal of Systems
  Architecture}, vol. 115, p. 101954, 2021.

\bibitem{fang2019ddtms}
W.~Fang, W.~Zhang, L.~Shan, X.~Ji, and G.~Jia, ``{DDTMS:
  Dirichlet-distribution-based trust management scheme in Internet of
  Things},'' \emph{Electronics}, vol.~8, no.~7, p. 744, 2019.

\bibitem{chen2018trust}
R.~Chen, J.~Guo, D.-C. Wang, J.~J.~P. Tsai, H.~Al-Hamadi, and I.~You,
  ``{Trust-based service management for mobile cloud IoT systems},'' \emph{IEEE
  transactions on network and service management}, vol.~16, no.~1, pp.
  246--263, 2018.

\bibitem{ba2021multi}
M.~N. Ba-hutair, A.~Bouguettaya, and A.~G. Neiat, ``{Multi-perspective trust
  management framework for crowdsourced IoT services},'' \emph{IEEE
  Transactions on Services Computing}, 2021.

\bibitem{marche2020trust}
C.~Marche and M.~Nitti, ``{Trust-related attacks and their detection: A trust
  management model for the social IoT},'' \emph{IEEE Transactions on Network
  and Service Management}, vol.~18, no.~3, pp. 3297--3308, 2020.

\bibitem{movahedi2019t}
Z.~Movahedi and Z.~Hosseini, ``{T-D2D: A trust model for service offloading in
  device-to-device communication},'' \emph{Transactions on Emerging
  Telecommunications Technologies}, vol.~30, no.~10, p. e3686, 2019.

\bibitem{abderrahim2016dtms}
O.~B. Abderrahim, M.~H. Elhedhili, and L.~Saidane, ``{DTMS-IoT: A
  Dirichlet-based trust management system mitigating On-Off attacks and
  dishonest recommendations for the Internet of Things},'' in \emph{2016
  IEEE/ACS 13th International Conference of Computer Systems and Applications
  (AICCSA)}.\hskip 1em plus 0.5em minus 0.4em\relax IEEE, 2016, pp. 1--8.

\bibitem{liu2022semi}
Y.~Liu, C.~Zhang, Y.~Yan, X.~Zhou, Z.~Tian, and J.~Zhang, ``A semi-centralized
  trust management model based on blockchain for data exchange in iot system,''
  \emph{IEEE Transactions on Services Computing}, 2022.

\bibitem{din2021lighttrust}
I.~U. Din, A.~Bano, K.~A. Awan, A.~Almogren, A.~Altameem, and M.~Guizani,
  ``Lighttrust: lightweight trust management for edge devices in industrial
  internet of things,'' \emph{IEEE Internet of Things Journal}, 2021.

\bibitem{okuda2019community}
M.~Okuda, S.~Satoh, Y.~Sato, and Y.~Kidawara, ``{Community detection using
  restrained random-walk similarity},'' \emph{IEEE transactions on pattern
  analysis and machine intelligence}, vol.~43, no.~1, pp. 89--103, 2019.

\bibitem{aung2020t}
N.~Aung, W.~Zhang, S.~Dhelim, and Y.~Ai, ``T-coin: Dynamic traffic congestion
  pricing system for the internet of vehicles in smart cities,''
  \emph{Information}, vol.~11, no.~3, p. 149, 2020.

\bibitem{aung2021dynamic}
N.~Aung, W.~Zhang, K.~Sultan, S.~Dhelim, and Y.~Ai, ``Dynamic traffic
  congestion pricing and electric vehicle charging management system for the
  internet of vehicles in smart cities,'' \emph{Digital Communications and
  Networks}, vol.~7, no.~4, pp. 492--504, 2021.

\bibitem{aung2021vesonet}
N.~Aung, S.~Dhelim, L.~Chen, W.~Zhang, A.~Lakas, and H.~Ning, ``Vesonet:
  Traffic-aware content caching for vehicular social networks based on path
  planning and deep reinforcement learning,'' \emph{IEEE Transactions on
  intelligent transportation systems}, 2021.

\bibitem{aung2018accident}
N.~Aung, W.~Zhang, S.~Dhelim, and Y.~Ai, ``Accident prediction system based on
  hidden markov model for vehicular ad-hoc network in urban environments,''
  \emph{Information}, vol.~9, no.~12, 2018.

\bibitem{wu2018information}
J.~Wu, S.~Guo, H.~Huang, W.~Liu, and Y.~Xiang, ``Information and communications
  technologies for sustainable development goals: state-of-the-art, needs and
  perspectives,'' \emph{IEEE Communications Surveys \& Tutorials}, vol.~20,
  no.~3, pp. 2389--2406, 2018.

\bibitem{liao2019security}
R.-F. Liao, H.~Wen, J.~Wu, F.~Pan, A.~Xu, H.~Song, F.~Xie, Y.~Jiang, and
  M.~Cao, ``Security enhancement for mobile edge computing through physical
  layer authentication,'' \emph{IEEE Access}, vol.~7, pp. 116\,390--116\,401,
  2019.

\bibitem{dhelim2021survey}
S.~Dhelim, N.~Aung, M.~A. Bouras, H.~Ning, and E.~Cambria, ``A survey on
  personality-aware recommendation systems,'' \emph{Artificial Intelligence
  Review}, vol.~55, no.~3, pp. 2409--2454, 2022.

\bibitem{wang2021survey}
W.~Wang, H.~Ning, F.~Shi, S.~Dhelim, W.~Zhang, and L.~Chen, ``A survey of
  hybrid human-artificial intelligence for social computing,'' \emph{IEEE
  Transactions on Human-Machine Systems}, vol.~52, no.~3, pp. 468--480, 2021.

\bibitem{cai2020robot}
X.~Cai, H.~Ning, S.~Dhelim, R.~Zhou, T.~Zhang, Y.~Xu, and Y.~Wan, ``Robot and
  its living space: A roadmap for robot development based on the view of living
  space,'' \emph{Digital Communications and Networks}, 2020.

\bibitem{naouri2021novel}
A.~Naouri, H.~Wu, N.~A. Nouri, S.~Dhelim, and H.~Ning, ``A novel framework for
  mobile edge computing by optimizing task offloading,'' \emph{IEEE Internet of
  Things Journal}, 2021.

\bibitem{dhelim2020personality}
S.~Dhelim, H.~Ning, N.~Aung, R.~Huang, and J.~Ma, ``Personality-aware product
  recommendation system based on user interests mining and metapath
  discovery,'' \emph{IEEE Transactions on Computational Social Systems},
  vol.~8, no.~1, pp. 86--98, 2020.

\bibitem{dhelim2020compath}
S.~Dhelim, H.~Ning, and N.~Aung, ``Compath: User interest mining in
  heterogeneous signed social networks for internet of people,'' \emph{IEEE
  Internet of Things Journal}, vol.~8, no.~8, pp. 7024--7035, 2020.

\bibitem{mikolov2013distributed}
T.~Mikolov, I.~Sutskever, K.~Chen, G.~S. Corrado, and J.~Dean, ``{Distributed
  representations of words and phrases and their compositionality},''
  \emph{Advances in neural information processing systems}, vol.~26, 2013.

\bibitem{perozzi2014deepwalk}
B.~Perozzi, R.~Al-Rfou, and S.~Skiena, ``Deepwalk: Online learning of social
  representations,'' in \emph{Proceedings of the 20th ACM SIGKDD international
  conference on Knowledge discovery and data mining}, 2014, pp. 701--710.

\bibitem{varga2010omnet}
A.~Varga, ``Omnet++,'' in \emph{Modeling and tools for network
  simulation}.\hskip 1em plus 0.5em minus 0.4em\relax Springer, 2010, pp.
  35--59.

\end{thebibliography}