Faster Data Forwarding in ContentCentric Network via Overlaid Packet Authentication Architecture
Abstract
:1. Introduction
Contribution and Organization of the Paper
2. Preliminaries
2.1. Basic Structure of CCN
2.1.1. Packet Structures
Interest Packet
Data Packet
2.1.2. CCN Forwarding Engine
2.1.3. Data Packet Authentication in (Naive) CCN
2.2. Requirements
2.2.1. Security Model
Distribute Poisoned Data
DDoS Attack
Cache Consumption Attack
2.2.2. Functional Requirements
Verification Independence
OntheFly Data Packet Generation
NonDeniability (or Traceability)
SetupFree Construction
3. Proposed Overlaid Authentication Mechanism
3.1. Basic Idea
3.2. Components
3.2.1. Signature Scheme for Content Publishers
 ${s}_{i}$ is the private signing key;
 ${v}_{i}$ is the corresponding public verification key;
 m is a message to be signed;
 $\sigma $ is a signature generated by the signature scheme.
3.2.2. Signature Scheme for Forwarding Engine
3.2.3. Public Key Verification
3.3. Authenticated Data Generation and Verification
3.3.1. Publisher Side
 cname is the content name of the file F;
 $c\text{}nam{e}_{j}=c\text{}name\left\rightj$;
 ${M}_{j}=c\text{}nam{e}_{j}\left\rightauth\text{}inf{o}_{i}\left\right{m}_{j}$;
 ${\sigma}_{i,j}={\mathsf{Sig}}_{i}({s}_{i},{M}_{j})$;
 $auth\text{}inf{o}_{i}=\{pi{d}_{i},{\mathsf{Ver}}_{i},{v}_{i}\}$.
Algorithm 1 Authenticated Content Generation at Content Publisher (DPG) 

Algorithm 2 Transmitting Authenticated Data Packets at Content Publisher $Pu{b}_{i}$ 

3.3.2. Consumer Side
 uid is the user’s ID;
 selector is a set of rules for obtaining the target file;
 nonce is a random nonce for uniquely identifying messages.
3.3.3. Forwarding Engine
Data Publisher → Forwarding Engine
Forwarding Engine → Forwarding Engine
Forwarding Engine → Data Requester
4. Security Analysis
 Type0 forgery $D{P}_{i,j}$: Original data packet generated by publisher $Pu{b}_{i}$;
 Type1 forgery $D{P}_{i,j,k}$: Data packet for higher layer, which is regenerated by forwarding engine $Ro{u}_{k}$.
 Signing Queries. In the beginning of the simulation, ${\mathcal{A}}_{\mathsf{Sig}}$ guesses a publisher $Pu{b}^{*}$ who will be attacked by the adversary $\mathcal{A}$. For a publisher $Pu{b}_{i}(\ne Pu{b}^{*})$, ${\mathcal{A}}_{\mathsf{Sig}}$ chooses a signature scheme $\{{\mathsf{Sig}}_{i}(\xb7,\xb7),{\mathsf{Ver}}_{i}(\xb7,\xb7)\}$ and sets $\{{s}_{i},{v}_{i}\}$ as the signing/verification key pair for the scheme. ${\mathcal{A}}_{\mathsf{Sig}}$ maintains ${\mathsf{List}}_{Pub}$ the list of i, $\{{\mathsf{Sig}}_{i}(\xb7,\xb7),{\mathsf{Ver}}_{i}(\xb7,\xb7)\}$, and $\{{s}_{i},{v}_{i}\})$. When $\mathcal{A}$ asks a signature of $Pu{b}_{i}(\ne Pu{b}^{*})$ on M, ${\mathcal{A}}_{\mathsf{Sig}}$ responses to the query by generating a valid signature as ${\sigma}_{i,M}={\mathsf{Sig}}_{i}({s}_{i},M).$ If the query is made for the target publisher $Pu{b}^{*}$ on M, ${\mathcal{A}}_{\mathsf{Sig}}$ uses the signing oracle to obtain ${\sigma}_{*,M}={\mathcal{O}}_{\mathsf{S}}\left(M\right)$ and gives it to $\mathcal{A}$.For each forwarding engine, ${\mathcal{A}}_{\mathsf{Sig}}$ chooses a signature scheme and the corresponding key pairs. Let $\{{\mathsf{SIG}}_{k}(\xb7,\xb7),{\mathsf{VER}}_{k}(\xb7,\xb7)\}$ and $\{{S}_{k},{V}_{k}\}$ be the signature scheme and key pairs of the forwarding engine $Ro{u}_{k}$. ${\mathcal{A}}_{\mathsf{Sig}}$ also maintains ${\mathsf{List}}_{Rou}$ the list of k, $\{{\mathsf{SIG}}_{k}(\xb7,\xb7),{\mathsf{VER}}_{k}(\xb7,\xb7)\}$, and $\{{S}_{k},{V}_{k}\})$. For a signing query on M, ${\mathcal{A}}_{\mathsf{Sig}}$ generates a valid signature as ${\sigma}_{i,M,k}={\mathsf{SIG}}_{k}({S}_{k},M)$;
 Publisher Corrupt Queries. In the adversary model, we assumed that a set of publishers can collude to break the proposed architecture, which implies that $\mathcal{A}$ can ask for the private key of a publisher $Pu{b}_{i}$. Here, we assume that the queried key exists in ${\mathsf{List}}_{Pub}$, and the assumption is reasonable since ${\mathcal{A}}_{\mathsf{Sig}}$ can generate the publisher’s key information, as in the above, before response to the corrupt query. For the corrupt query, ${\mathcal{A}}_{\mathsf{Sig}}$ retrieves i, $\{{\mathsf{Sig}}_{i}(\xb7,\xb7),{\mathsf{Ver}}_{i}(\xb7,\xb7)\}$, and $\{{s}_{i},{v}_{i}\}$ from ${\mathsf{List}}_{Pub}$ and gives ${s}_{i}$ to $\mathcal{A}$. If the queried publisher is $Pu{b}^{*}$, ${\mathcal{A}}_{\mathsf{Sig}}$ stops the simulation;
 Forwarding Engine Corrupt Queries. In this case, it is assumed that $\mathcal{A}$ can ask for the private key of a forwarding engine $Ro{u}_{i}$. For Type0 forgery, ${\mathcal{A}}_{\mathsf{Sig}}$ retrieves i, $\{{\mathsf{SIG}}_{i}(\xb7,\xb7),{\mathsf{VER}}_{i}(\xb7,\xb7)\}$, and $\{{S}_{i},{V}_{i}\}$ from ${\mathsf{List}}_{Rou}$ and gives ${S}_{i}$ to $\mathcal{A}$.
 Signing Queries. For each publisher $Pu{b}_{i}$, ${\mathcal{A}}_{\mathsf{Sig}}$ chooses a signature scheme and the corresponding key pairs. Let $\{{\mathsf{Sig}}_{i}(\xb7,\xb7),{\mathsf{Ver}}_{i}(\xb7,\xb7)\}$ and $\{{s}_{i},{v}_{i}\}$ be the signature scheme and key pairs of the publisher $Pu{b}_{i}$. ${\mathcal{A}}_{\mathsf{Sig}}$ also maintains ${\mathsf{List}}_{Pub}$ the list of i, $\{{\mathsf{Sig}}_{i}(\xb7,\xb7),{\mathsf{Ver}}_{i}(\xb7,\xb7)\}$, and $\{{s}_{i},{v}_{i}\})$. For a signing query on M, ${\mathcal{A}}_{\mathsf{Sig}}$ generates a valid signature as ${\sigma}_{i,M}={\mathsf{Sig}}_{i}({s}_{k},M)$ and gives it to $\mathcal{A}$.Differently from the simulation for type1 forgery, ${\mathcal{A}}_{\mathsf{Sig}}$ guesses a forwarding engine $Ro{u}^{*}$ who will be attacked by the adversary $\mathcal{A}$. For a forwarding engine $Ro{u}_{k}(\ne Ro{u}^{*})$, ${\mathcal{A}}_{\mathsf{Sig}}$ chooses a signature scheme $\{{\mathsf{SIG}}_{k}(\xb7,\xb7),{\mathsf{VER}}_{k}(\xb7,\xb7)\}$ and a sets $\{{S}_{k},{V}_{k}\}$ as the signing/verification key pair for the scheme. ${\mathcal{A}}_{\mathsf{Sig}}$ maintains ${\mathsf{List}}_{Rou}$ the list of k, $\{{\mathsf{SIG}}_{k}(\xb7,\xb7),{\mathsf{VER}}_{k}(\xb7,\xb7)\}$, and $\{{S}_{k},{V}_{k}\})$. When $\mathcal{A}$ asks a signature of $Ro{u}_{k}(\ne Ro{u}^{*})$ on M, ${\mathcal{A}}_{\mathsf{Sig}}$ responses to the query by generating a valid signature as ${\sigma}_{i,M,k}={\mathsf{SIG}}_{k}({S}_{k},M).$ If the query is made for the target publisher $Ro{u}^{*}$ on M, ${\mathcal{A}}_{\mathsf{Sig}}$ uses the signing oracle to obtain ${\sigma}_{*,M,k}={\mathcal{O}}_{\mathsf{S}}\left(M\right)$ and gives it to $\mathcal{A}$;
 Publisher Corrupt Queries. When $\mathcal{A}$ asks the private key of a publisher $Pu{b}_{i}$, ${\mathcal{A}}_{\mathsf{Sig}}$ retrieves i, $\{{\mathsf{Sig}}_{i}(\xb7,\xb7),{\mathsf{Ver}}_{i}(\xb7,\xb7)\}$, and $\{{s}_{i},{v}_{i}\}$ from ${\mathsf{List}}_{Pub}$ and gives ${s}_{i}$ to $\mathcal{A}$;
 Forwarding Engine Corrupt Queries. When $\mathcal{A}$ asks the private key of the forwarding engine $Ro{u}_{k}(\ne Ro{u}^{*})$, ${\mathcal{A}}_{\mathsf{Sig}}$ retrieves k, $\{{\mathsf{SIG}}_{K}(\xb7,\xb7),{\mathsf{VER}}_{k}(\xb7,\xb7)\}$, and $\{{S}_{k},{V}_{k}\}$ from ${\mathsf{List}}_{Rou}$ and gives ${S}_{k}$ to $\mathcal{A}$. If the queried forwarding engine is $Ro{u}^{*}$, ${\mathcal{A}}_{\mathsf{Sig}}$ stops the simulation.
5. Instantiation
5.1. Data Publisher
5.2. Data Consumer
5.2.1. Forwarding Engine
Data Publisher → Forwarding Engine
Forwarding Engine → Forwarding Engine
Forwarding Engine → Data Consumer
6. Comparisons
6.1. Requirement Comparison
6.2. Performance Analysis
7. Conclusions
Author Contributions
Funding
Conflicts of Interest
Appendix A
References
 Jacobson, V.; Smetters, D.; Thornton, J.; Plass, M.; Briggs, N.; Braynard, R. Networking Named Content. In Proceedings of the 5th international conference on Emerging networking experiments and technologies(CoNEXT’09), Rome, Italy, 1–4 December 2009. [Google Scholar]
 Smetters, D.; Jacobson, V. Securing Network Content; PARC Technical Report; PARC: Palo Alto, CA, USA, 2009. [Google Scholar]
 Named Data Networking (NDN) Project. Available online: https://nameddata.net (accessed on 20 October 2020).
 CCNx Project. Available online: http://github.com/ProjectCCNx/ccnx (accessed on 20 October 2020).
 Merkle, R. A Digital Signature Based on a Conventional Encryption Function. In Proceedings of the Advances in cryptology (CRYPTO’87), LNCS 293, Barbara, CA, USA, 11–15 August 1987; pp. 369–378. [Google Scholar]
 Merkle, R. A Certified Digital Signature. In Proceedings of the Advances in cryptology (CRYPTO’89), LNCS 435, Barbara, CA, USA, 23–27 August 1989; pp. 218–238. [Google Scholar]
 Baugher, M.; Davie, B.; Narayanan, A.; Oran, D. SelfVerifying Names for ReadOnly Named Data. In Proceedings of the IEEE INFOCOM 2012 Workshop on Emerging Design Choices in NamedOriented Networking, Newark, NJ, USA, 30 March 2012; pp. 274–279. [Google Scholar]
 Moiseenko, I. Fetching Content in Named Data Networking with Embedded Manifests. NDN Technical Report NDN0025. 2014. Available online: https://nameddata.net/wpcontent/uploads/2014/09/ndntr25manifestembedding.pdf (accessed on 20 October 2020).
 Burke, J.; Horn, A.; Marianantoni, A. Authenticated Lighting Control Using Named Data Networking. NDN Technical Report NDN011 Rev.1. 2012. Available online: https://nameddata.net/wpcontent/uploads/TRlighting.pdf (accessed on 20 October 2020).
 Burke, J.; Gasti, P.; Nathan, N.; Tsudik, G. Securing Instrumented Environments over ContentCentric Networking: The Case of Lighting Control and NDN. In Proceedings of the IEEE INFOCOM 2013 Workshop on Emerging Design Choices in NamedOriented Networking, Turin, Italy, 14–19 April 2013; pp. 393–398. [Google Scholar]
 Li, Q.; Zhang, X.; Zheng, Q.; Sandhu, R.; Fu, X. LIVE: Lightweight integrity verification and content access control for named data networking. IEEE Trans. Inf. Forensics Secur. 2015, 10, 308–320. [Google Scholar] [CrossRef]
 Refaei, T.; Horvath, M.; Schumaker, M.; Hager, C. Data Authentication for NDN using Hash Chains. In Proceedings of the IEEE Symposium on Computers and Communication (ISCC), Messina, Italy, 27–30 June 2016; pp. 982–987. [Google Scholar]
 Seo, S.C.; Youn, T. TIM: A Trapdoor Hash Functionbased Authentication Mechanism for Streaming Authentication. KSII Trans. Internet Inf. Syst. 2018, 12, 2922–2945. [Google Scholar] [CrossRef] [Green Version]
 Seo, S.C.; Youn, T. TLDA: An Efficient TwoLayered Data Authentication Mechanism for ContentCentric Networking. Hindawi Secur. Commun. Netw. 2018, 2018, 5429798. [Google Scholar] [CrossRef]
 Zhang, Z.; Yu, Y.; Zhang, H.; Newberry, E.; Mastorakis, S.; Li, Y.; Afanasyev, A.; Zhang, L. An Overview of Security Support in Named Data Networking. Technical Report NDN0057. Available online: http://nameddata.net/techreports.html (accessed on 20 October 2020).
 Gasti, P.; Tsudik, G.; Uzun, E.; Zhang, L. Dos and DDoS in Named Data Networking. In Proceedings of the 22nd International Conference on Computer Communications and Networks (ICCCN), Nassau, Bahamas, 30 July–2 August 2013; pp. 1–7. [Google Scholar]
 Mastorakis, S.; Afanasyev, A.; Zhang, L. On the Evolution of ndnSIM: An OpenSource Simulator for NDN Experimentation. ACM Comput. Commun. Rev. 2017, 47, 19–33. [Google Scholar] [CrossRef]
 OCSP Response Time. Available online: https://www.digicert.com/blog/ocsptimesandwhattheymeanforyou/ (accessed on 20 October 2020).
 Qamar, A.; Karim, A.; Chang, V. Mobile malware attacks: Review, taxonomy & future directions. Future Gener. Comput. Syst. 2019, 97, 887–909. [Google Scholar]
 Sun, J.; Zhang, Y.; Liao, D.; Sun, G.; Chang, V. AIbased survivable design for hybrid virtual networks for single regional failures in cloud data centers. Clust. Comput. 2019, 22, 12009–12019. [Google Scholar] [CrossRef]
Verification Independence  Onthefly Generation  Non Deniability  Setup Freeness  Used Technique  Verification Cost for Forwarding Engines  

Naive CCN  O  O  O  O  PerPacket Signing  ${n}_{R}{C}_{cert}$+${n}_{R}{C}_{ver}$ 
LIVE [11]  O  X  X  X  OTS  ${n}_{R}{C}_{cert}$+${n}_{R}{C}_{ver}$ 
[9,10]  O  O  X  X  HMAC  Cannot Support 
CCNx [1,2,3]  O  X  O  O  MHT  ${n}_{R}{C}_{cert}$+${n}_{R}{C}_{sv}$+${n}_{R}{C}_{ver}$ 
TIM [13]  O  X  O  O  THF, MHT  ${n}_{R}{C}_{cert}$+${n}_{R}{C}_{sv}$+${n}_{R}{C}_{thf}$+${n}_{R}{C}_{ver}$ 
TLDA [14]  X  X  O  O  MHT  Cannot Support 
This work  O  O  O  O  Overlaid Signing  ${C}_{cert}$+${C}_{sig}$+${n}_{R}{C}_{ver}$ 
Methods  Time (S)  Operations 

Naive CCN with RSAPSS  0.100146 s  Verify Certificate and RSAPSS 
Naive CCN with DSA  0.102420 s  Verify Certificate and DSA 
Naive CCN with ECDSA  0.100741 s  Verify Certificate and ECDSA 
$R{E}_{1}$ with RSAPSS (This work)  0.105048 s  Verify Certificate and Generate RSAPSS 
$R{E}_{1}$ with DSA (This work)  0.104390 s  Verify Certificate and Generate RSAPSS 
$R{E}_{1}$ with ECDSA (This work)  0.101094 s  Verify Certificate and Generate RSAPSS 
$R{E}_{i}$ with RSAPSS (This work)  0.000146 s  Verify RSAPSS 
$R{E}_{i}$ with DSA (This work)  0.002420 s  Verify RSAPSS 
$R{E}_{i}$ with ECDSA (This work)  0.000741 s  Verify RSAPSS 
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. 
© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Youn, T.Y.; Kim, J.; Mohaisen, D.; Seo, S.C. Faster Data Forwarding in ContentCentric Network via Overlaid Packet Authentication Architecture. Sustainability 2020, 12, 8746. https://doi.org/10.3390/su12208746
Youn TY, Kim J, Mohaisen D, Seo SC. Faster Data Forwarding in ContentCentric Network via Overlaid Packet Authentication Architecture. Sustainability. 2020; 12(20):8746. https://doi.org/10.3390/su12208746
Chicago/Turabian StyleYoun, TaekYoung, Joongheon Kim, David Mohaisen, and Seog Chung Seo. 2020. "Faster Data Forwarding in ContentCentric Network via Overlaid Packet Authentication Architecture" Sustainability 12, no. 20: 8746. https://doi.org/10.3390/su12208746