potentially malicious. NVP has also been leveraged to
ensure personal information confidentiality and pre-
vent information leaks. Most of these systems employ
techniques in which two replicas of the same soft-
ware are executed with different inputs (Yumerefendi
et al., 2007), under different restrictions (Capizzi
et al., 2008) or on different security levels (Devriese
and Piessens, 2010). To the best of our knowledge,
our work is the first to study the feasibility of NVP in
securing smart hub platforms.
9 CONCLUSIONS
In this paper, we performed an extensive study on
the use of NVP in order to enhance the security of
TF-based smart hub platforms, which deal with home
sensitive data. Our work comprises a thorough study
on both strict and loose trusted function specifica-
tions. The results provide insights on our approach’s
effectiveness, and foster discussion surrounding util-
ity, performance, and security issues associated with
naive and malicious implementation output results.
ACKNOWLEDGEMENTS
We thank the anonymous reviewers for their com-
ments and suggestions. This work was partially
supported by Fundac¸
˜
ao para a Ci
ˆ
encia e Tecnolo-
gia (FCT) via projects UID/CEC/50021/2013 and
SFRH/BSAB/135236/2017.
REFERENCES
Berger, E. D. and Zorn, B. G. (2006). Diehard: probabilis-
tic memory safety for unsafe languages. In Proc. of
PLDI.
Cadar, C. and Hosek, P. (2012). Multi-version software up-
dates. In Proc. of ICSE.
Capizzi, R., Longo, A., Venkatakrishnan, V., and Sistla,
A. P. (2008). Preventing information leaks through
shadow executions. In Proc. of ACSAC.
Chen, L. and Avizienis, A. (1978). N-version programming:
A fault-tolerance approach to reliability of software
operation. In Proc. of FTCS-8.
Computerworld (2016). Chinese Firm Admits Its Hacked
Products Were Behind Friday’s DDOS Attack.
http://www.computerworld.com/article/3134097. Ac-
cessed May 2018.
Cox, B., Evans, D., Filipi, A., Rowanhill, J., Hu, W., David-
son, J., Knight, J., Nguyen-Tuong, A., and Hiser, J.
(2006). N-variant systems: A secretless framework
for security through diversity. In Proc. of Usenix Se-
curity.
Davies, N., Taft, N., Satyanarayanan, M., Clinch, S., and
Amos, B. (2016). Privacy Mediators: Helping IoT
Cross the Chasm. In Proc. of HotMobile.
Devriese, D. and Piessens, F. (2010). Noninterference
through secure multi-execution. In Proc. of SP.
Fernandes, E., Jung, J., and Prakash, A. (2016a). Security
Analysis of Emerging Smart Home Applications. In
Proc. of SP.
Fernandes, E., Paupore, J., Rahmati, A., Simionato, D.,
Conti, M., and Prakash, A. (2016b). FlowFence: Prac-
tical Data Protection for Emerging IoT Application
Frameworks. In Proc. of USENIX Security.
Forbes (2013). When ’Smart Homes’ Get Hacked.
http://www.forbes.com/sites/kashmirhill/2013/07/26/
smart-homes-hack. Accessed May 2018.
Giuffrida, C., Iorgulescu, C., Kuijsten, A., and Tanenbaum,
A. S. (2013). Back to the future: Fault-tolerant live
update with time-traveling state transfer. In Proc. of
LISA.
Goirizelaia, I., Selker, T., Huarte, M., and Unzilla, J.
(2008). An Optical Scan E-Voting System Based on
N-Version Programming. IEEE Security & Privacy,
6(3):47–53.
Imamura, K., Heckendorn, R. B., Soule, T., and Foster, J. A.
(2002). N-Version Genetic Programming via Fault
Masking. In Proc. of EUROGP.
Kelion, L. (2012). Trendnet security flaw exposes
video feeds. http://www.bbc.com/news/technology-
16919664. Accessed May 2018.
Knight, J. C. and Leveson, N. G. (1986). An Experimen-
tal Evaluation of the Assumption of Independence in
Multiversion Programming. IEEE Transactions on
Software Engineering, pages 96–109.
Mortier, R., Zhao, J., Crowcroft, J., Wang, L., Li, Q., Had-
dadi, H., Amar, Y., Crabtree, A., Colley, J. A., Lodge,
T., Brown, T., McAuley, D., and Greenhalgh, C.
(2016). Personal Data Management with the Databox:
What’s Inside the Box? In Proc. WCAN CoNEXT.
Oberheide, J., Cooke, E., and Jahanian, F. (2008). CloudAV:
N-Version Antivirus in the Network Cloud. In Proc.
of USENIX Security.
Salamat, B., Jackson, T., Gal, A., and Franz, M. (2009).
Orchestra: intrusion detection using parallel execution
and monitoring of program variants in user-space. In
Proc. of EuroSys.
Veeraraghavan, K., Chen, P. M., Flinn, J., and
Narayanasamy, S. (2011). Detecting and surviving
data races using complementary schedules. In Proc.
of SOSP.
Yumerefendi, A. R., Mickle, B., and Cox, L. P. (2007).
Tightlip: Keeping applications from spilling the
beans. In Proc. of NSDI.
SECRYPT 2018 - International Conference on Security and Cryptography
134