A PEKS-Based NDN Strategy for Name Privacy
Abstract
:1. Introduction
- It is ensured in our design that there exists unlinkability between encrypted names even though plaintext names are identical because random values chosen by content requesters are used in every encrypted names.
- There is no master secret key in our work and key generation of private key does not depend on any master secret key.
- Network nodes are able to check whether the data content is stored in the cache even though names are encrypted because the PEKS scheme provides searching encrypted name without revealing the plaintext information. Therefore, our work maintains cache ability on all routers in NDN network.
2. Background and Related Work
2.1. NDN Architecture
2.1.1. Name
2.1.2. Packets in NDN
- SignatureNonce: This number is added to assure the uniqueness of the signature,
- SignatureTime: This number is the timestamp of the signature represented in milliseconds since 1970-01-01T00:00:00Z (Unix epoch),
- SignatureSeqNum: This element is also used to provide the assurance of the signatures’ uniqueness. The number is used to protect against replay attacks [17].
2.1.3. Routing and Forwarding
- Pending Interest Table (PIT): This table is used to store incoming interest packets which arrive at a router. The router reads the interest packet’s parameters such as incoming interface, interest lifetime, and Nonce number. Then it stores them in the PIT. It also checks the name and the Nonce field of the incoming packets with PIT. If there is the same Nonce Number, the router assumes that this is an interest loop and simply discards it [2,4,18]. The router will then discuss the interest name with FIB and forward the packet to the nexthop.
- Forwarding Information Base (FIB): As traditional routers do, NDN router needs to have the information that shows where the incoming interest packets should be forwarded. Therefore, the role of FIB is to record the information for the name to reach the destination. The FIB can be updated by routing protocol such as OSPF based Routing Protocol for NDN (OSPFN) [2,4,18].
2.2. Public Key Encryption with Keyword Search
- Computable: Given ∈ there is a polynomial time algorithm to compute ∈.
- Bilinear: For any integers we have = .
- Non-degenerate: If g is a generator of then is a generator of .
- The input security parameter determines the size of p and the groups , . The algorithm picks a random ∈ and a generator g of . It outputs = [g, ] and = .
- PEKS(, W): First compute t = e((W), ) for r∈. Output PEKS (, W) = [, (t)]
- Trapdoor (, W): Output = ∈
- Test (, C, ): Let [, (t)]. Test if (e(, )) = (t). If so, output “yes”. Otherwise, output “no”.
2.3. Related Solutions on Name Privacy
3. Fundamentals of PEKS-Based NDN
3.1. Threat Model
3.2. Framework of PEKS-Based NDN
3.3. Public Key Dissemination
- Dissemination to the network: After the producer generates a pair of public and private keys for the PEKS scheme, it starts a dissemination process of public key to the network. It encodes public key and parameters to the string format. The result strings are concatenated by using a separator “/”. An interest packet is then created by the producer with use of the concatenated string, which serves as a name, such as /peks_strategy/KEY/public-key-string/PARAM/parameter-string, where “KEY” indicates that public key string is appended after it, and “PARAM” indicates that parameter string is appended. The producer also owns an RSA key pair, which is signed by administrators’ keys or a root key, for signing both interest and data packets. It then signs the interest packet as shown in Figure 2. Therefore, the name in the interest packet becomes /peks_strategy/KEY/public-key-string/PARAM/parameter-string/<InterestSignatureInfo>/<InterestSignatureValue>. SignatureSha256WithRsa algorithm, which is provided by ndn-cxx library [27], is used to sign the packets. Key locator, which contains the name of RSA public key, is set to InterestSignatureInfo. To make sure the uniqueness of the signature, SignatureTime and SignatureSeqNum are also used. The type of signature algorithm, SignatureTime and SignatureSeqNum are added to InterestSignatureInfo. The generated signature is set to InterestSignatureValue. The producer then sends the interest packet to the network. Routers that receive the interest packet verify the sender of the interest packet by using the information which are contained in InterestSignatureInfo and InterestSignatureValue. The dissemination processes of the trapdoor of the producer prefix’s name, which is known as producer’s prefix, and public key can be combined by using a single interest packet.
- Dissemination to consumers: When a consumer wants to use PEKS_based NDN, it sends an interest packet to request public key of the producer. The producer creates a data packet consisting of public key and parameters as data content. The producer also signs the data packet according to NDN protocol. The signature algorithm that is used to sign interest packets is also used in signing the data packet. When the consumer receives the data packet, it verifies the data packet with the signature contained in the data packet. In this way, public key for the PEKS scheme can be verified.
4. Details of Implementation
4.1. Choosing Parameters for PEKS
4.2. Producer Operations
4.3. Router’s State
4.4. Interest Packet Creation
4.5. NFD Operations
Algorithm 1: Test Operation |
4.6. Strategy
- After Receive Interest Trigger: When an interest packet arrives at a router, NFD checks whether the packet violates “/localhost” scope, whether it is looped, etc,. After all of those necessary checks are done, the incoming interest packet is needed to be forwarded. Then this trigger is invoked by the Incoming Interest pipeline, which is a module of NFD. If the interest packet is using PEKS_Stratey, testing with Trapdoor data structure done at this moment and forwards to PEKS_Strategy module to match InterestName with Trapdoor as described above subsection.
- After Receive Data Trigger: This trigger is invoked by the Incoming Data pipeline. In PEKS_Strategy, storing data packet to CS is done after this trigger is invoked.
5. Experiments and Results
5.1. Experimental Setup
5.2. Finding the Length of Input for the PEKS Scheme
- Each component of a content name without including the producer’s prefix is used to generate PEKS ciphertexts and trapdoors.
- The outputs, PEKS(, ) or Trapdoor(, ), of the PEKS scheme are concatenated to create interest packet.
- Consumers send interest packets to retrieve data from the producer.
- The producer disseminates trapdoors.
5.3. Measuring Cache Hit Rate and Download Time
6. Discussion
- (a)
- Unlinkability between ciphertexts (Un-L): PrivICN uses proxy re-encryption which is done only at edge nodes and does not need to be done multiple times. The generation process of ciphertexts for the same name results in the same ciphertext because they are using a pseudorandom function, which is common to all consumers and producers instead of using a random value in the ElGamal encryption scheme. Because of this kind of pseudorandom function, their scheme does not guarantee the unlinkability between ciphertexts and consumers in the intermediate nodes, which are located between proxies. As a result, there remains a room for an attacker to link the packets’ names with the consumers even though the names are encrypted. On the other hand, we use a random value r, which makes the PEKS ciphertext more secure to protect the name in the packet. Assume that an attacker has public key of the producer, , which is [g, ], and the PEKS ciphertext as shown in Equation (5).Because both and r are unknown to the attacker, it becomes difficult for him to get . It is proven in [22] that computing is difficult under Bilinear Diffie–Hellman Assumption. Because of this property, PEKS_based NDN does not allow the attacker to link between ciphertexts.
- (b)
- Non-Usage of Master Secret Key (MK) and Derivation of Secret Keys (DS): PrivICN also uses a Key Management Server, which holds a master secret key for the whole domain. After proxy re-encryption, ciphertexts become as they are encrypted by using . The usage of a single master secret key is not necessary in PEKS_based NDN. In PrivICN, each proxy key is generated as = −. One can figure out to get to know and , e.g., collusion of a proxy and a client to derive , which means that one can decrypt the ciphertexts of re-encryption. In PEKS_based NDN, there is no such kind of key generation and one cannot derive secret key.
- (c)
- Assumption of Secure Secret-value Delivery and Management (SD): However, it is necessary to disseminate trapdoors to the network. It is assumed that the dissemination of trapdoors is done securely and trapdoors are securely stored at routers. The assumption of secret value delivery is on-demand while PrivICN needs to deliver secret value periodically and ANDNA only disseminates during the setup.
- (a)
- Name Lookup (NL): One of the advantages of same ciphertexts in PrivICN is that string matching can be executed for encrypted names to lookup tables. By virtue of that, their work has a faster name lookup property. On the other hand, the application of the PEKS scheme to encrypt NDN name has slower name lookup as presented in Section 5. It is obvious that PEKS-based NDN strategy becomes slower when there are several nodes between producers and consumers.
- (b)
- Fully supported cache ability on all routers in NDN network (C): As shown in Figure 12, when the cache hit ratio increases, the download time decreases which means that PEKS-based NDN also provides one of the good features of NDN, i.e., in-network caching. However, ANDNA uses encrypted encapsulation of original content, using two symmetric keys generated by the consumer for two Anatomizing Routers (AR). The ARs encrypt whole packets with the use of these keys. This fact causes the caching mechanism cannot be fully used.
- (a)
- Signature: Whenever a consumer generates PEKS ciphertexts , they become different. The producer needs to sign the data packet before sending out, which is composed of name and data content. If a consumer generates PEKS ciphertext of the same plaintext name again and creates another interest packets, it differs from the previously created interest packet. Moreover, when there is a cache hit in CS of a router, it needs to reply the data packet which is stored in the CS. The router should reply the data packet with the new name which means the router needs to change the data packet by replacing the name into the new name and to generate a new signature. Therefore, adding such kind of feature to PEKS_based NDN is also one of our future work.
- (b)
- Packet overhead and table size: To reduce the downside of applying PEKS scheme to NDN, we input multiple name components to PEKS scheme to reduce packet overhead and table size. It seems that inputting the whole name to the PEKS scheme is better, but we showed that this is always not an optimal choice. There are several number of name component inputs to PEKS scheme which have lower average download time comparing to inputting the whole name as shown in Section 5. Note that the simulation result is valid only under the same situation we simulate and we are not claiming any concrete method to reduce the packet overhead and table size. It still shows that there is a room to reduce these values by appropriately selecting the number of name components fed into the PEKS scheme. To determine the optimal number of component inputs to the PEKS scheme without affecting the other operation such test process executions are not yet decided. Therefore, reducing the packet overhead and table size without affecting other operations in PEKS-based NDN is also one of our future works.
7. Conclusions
Author Contributions
Funding
Acknowledgments
Conflicts of Interest
References
- Saxena, D.; Raychoudhury, V.; Suri, N.; Becker, C.; Cao, J. Named Data Networking: A survey. Comput. Sci. Rev. 2016, 19, 15–55. [Google Scholar] [CrossRef] [Green Version]
- Zhang, L.; Afanasyev, A.; Burke, J.; Jacobson, V.; Claffy, K.C.; Crowley, P.; Papadopoulos, C.; Wang, L.; Zhang, B. Named data networking. ACM SIGCOMM Comput. Commun. Rev. 2014, 44, 66–73. [Google Scholar] [CrossRef]
- Named Data Networking: Executive Summary. Available online: https://nameddata.net/project/execsummary/ (accessed on 4 April 2020).
- Afanasyev, A.; Burke, J.; Refaei, T.; Wang, L.; Zhang, B.; Zhang, L. A Brief Introduction to Named Data Networking. In Proceedings of the MILCOM 2018—2018 IEEE Military Communications Conference (MILCOM), Los Angeles, CA, USA, 29–31 October 2018; pp. 1–6. [Google Scholar] [CrossRef]
- Majed, A.-Q.; Wang, X.Y.B. Name Lookup in Named Data Networking: A Review. Information 2019, 10, 85. [Google Scholar] [CrossRef] [Green Version]
- Fotiou, N.; Polyzos, G. Name-Based Security for Information-Centric Networking Architectures. Future Internet 2019, 11, 232. [Google Scholar] [CrossRef] [Green Version]
- Bernardini, C.; Marchal, S.; Asghar, M.R.; Crispo, B. PrivICN: Privacy-preserving content retrieval in information-centric networking. Comput. Netw. 2019, 149, 13–28. [Google Scholar] [CrossRef]
- Edith, N.; Börje, O.; Gene, T.; Ersin, U. Information-centric Networking and Security (Dagstuhl Seminar 16251). Dagstuhl Rep. 2016, 6, 49–61. [Google Scholar] [CrossRef]
- DiBenedetto, S.; Gasti, P.; Tsudik, G.; Uzun, E. ANDaNA: Anonymous Named Data Networking Application. arXiv 2011, arXiv:1112.2205. Available online: https://arxiv.org/pdf/1112.2205.pdf (accessed on 30 July 2020).
- Afanasyev, A.; Shi, J.; Zhang, B.; Zhang, L.; Moiseenko, I.; Yu, Y.; Shang, W.; Li, Y.; Mastorakis, S.; Huang, Y.; et al. NFD Developer’s Guide, 10th ed.; Available online: https://named-data.net/wp-content/uploads/2016/03/ndn-0021-diff-5..6-nfd-developer-guide.pdf (accessed on 30 July 2020).
- 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. IEEE Commun. Mag. 2018, 56, 62–68. [Google Scholar] [CrossRef]
- Hamdane, B.; Serhrouchni, A.; Fadlallah, A.; Fatmi, S.G.E. Named-Data security scheme for Named Data Networking. In Proceedings of the 2012 Third International Conference on The Network of the Future (NOF), Gammarth, Tunisia, 21–23 November 2012; pp. 1–6. [Google Scholar] [CrossRef]
- Bouk, S.H.; Ahmed, S.H.; Kim, D. Hierarchical and Hash Based Naming with Compact Trie Name Management Scheme for Vehicular Content Centric Networks. Comput. Commun. 2015, 71, 73–83. [Google Scholar] [CrossRef]
- Bertino, E.; Nabeel, M. Securing named data networks: Challenges and theway forward. In Proceedings of the ACM Symposium on Access Control Models and Technologies, SACMAT, Indianapolis, IN, USA, 13–15 June 2018; pp. 51–59. [Google Scholar] [CrossRef]
- Yu, Y. Public Key Management in Named Data Networking. Available online: https://pdfs.semanticscholar.org/2cd3/2e33b4683e30d945c4e87bb546d8d93c8807.pdf (accessed on 30 July 2020).
- Yu, Y.; Afanasyev, A.; Clark, D.; claffy, k.; Jacobson, V.; Zhang, L. Schematizing Trust in Named Data Networking. In Proceedings of the 2nd ACM Conference on Information-Centric Networking, San Francisco, CA, USA, 30 September–2 October 2015. [Google Scholar] [CrossRef]
- Signature in NDN. Available online: https://named-data.net/doc/NDN-packet-spec/0.3/signed-interest.html (accessed on 30 July 2020).
- Named Data Networking: Motivation and Details. Available online: http://nameddata.net/project/archoverview/ (accessed on 26 March 2020).
- Song, D.X.; Wagner, D.; Perrig, A. Practical techniques for searches on encrypted data. In Proceedings of the 2000 IEEE Symposium on Security and Privacy, Berkeley, CA, USA, 14–17 May 2000; pp. 44–55. [Google Scholar] [CrossRef] [Green Version]
- Curtmola, R.; Garay, J.; Kamara, S.; Ostrovsky, R. Searchable Symmetric Encryption: Improved Definitions and Efficient Constructions. In Proceedings of the 13th ACM Conference on Computer and Communications Security, Alexandria, VA, USA, 30 October–3 November 2006; pp. 79–88. [Google Scholar] [CrossRef]
- Li, S.; Li, M.; Xu, H.; Zhou, X. Searchable Encryption Scheme for PersonalizedPrivacy in IoT-Based Big Data. Sensors 2019, 19, 2327. [Google Scholar] [CrossRef] [Green Version]
- Boneh, D.; Di Crescenzo, G.; Ostrovsky, R.; Persiano, G. Public Key Encryption with Keyword Search. In Advances in Cryptology–EUROCRYPT 2004; Cachin, C., Camenisch, J.L., Eds.; Springer: Berlin/Heidelberg, Germany, 2004; pp. 506–522. [Google Scholar]
- Huang, Q.; Li, H. An efficient public-key searchable encryption scheme secure against inside keyword guessing attacks. Inf. Sci. 2017, 403, 1–14. [Google Scholar] [CrossRef]
- Guo, X.; Chen, C.; Zhang, M.J.; Ngaboyindekwe, A.; Cao, L.C. Privacy-aware transmission scheme based on homomorphic proxy re-encryption for NDN. Int. J. Sec. Netw. 2018, 13, 58–70. [Google Scholar] [CrossRef]
- Martinez-Julia, P.; Gomez-Skarmeta, A.F. Using identities to achieve enhanced privacy in future content delivery networks. Comput. Electr. Eng. 2012, 38, 346–355. [Google Scholar] [CrossRef]
- Chaabane, A.; De Cristofaro, E.; Kaafar, M.A.; Uzun, E. Privacy in Content-Oriented Networking: Threats and Countermeasures. ACM SIGCOMM Comput. Commun. Rev. 2013, 43, 25–33. [Google Scholar] [CrossRef]
- ndn-cxx: NDN C++ Library with eXperimental eXtensions. Available online: https://github.com/named-data/ndn-cxx (accessed on 21 July 2020).
- Named Forwarding Daemon. Available online: https://github.com/named-data/NFD. (accessed on 21 July 2020).
- The Pairing-Based Cryptography Library. Available online: https://crypto.stanford.edu/pbc/ (accessed on 3 March 2020).
- Freeman, D.; Scott, M.; Teske, E. A Taxonomy of Pairing-Friendly Elliptic Curves. J. Cryptol. 2010, 23, 224–280. [Google Scholar] [CrossRef] [Green Version]
- Named Data Networking: NDN Interest Packet Format Specification. Available online: https://named-data.net/doc/NDN-packet-spec/current/interest.html (accessed on 30 July 2020).
- Akinwande, O. Interest Forwarding in Named Data Networking Using Reinforcement Learning. Sensors 2018, 18, 3354. [Google Scholar] [CrossRef] [PubMed] [Green Version]
Security Level | Subgroup Size r | Extension Field Size | Extension Field Size k | |
---|---|---|---|---|
(in bits) | (in bits) | (in bits) | ≈ 1 | ≈ 2 |
80 | 160 | 960–1280 | 6–8 | , 3–4 |
112 | 224 | 2200–3600 | 10–16 | 5–8 |
128 | 224 | 3000–5000 | 12–20 | 6–10 |
192 | 384 | 8000–10,000 | 20–26 | 10–13 |
256 | 512 | 14,000–18,000 | 28–36 | 14–18 |
Scheme | Un-L | MK | DS | SD | TP | NL | C |
---|---|---|---|---|---|---|---|
ANDNA | – | ✓ | – | Setup | Exit-routers (fully) | fast | ✗ |
PrivICN | ✗ | ✗ | ✗ | Period | KMS(fully), Proxy(semi) | fast | – |
PEKS-based | ✓ | ✓ | ✓ | On-demand | Routers(semi) | slow | ✓ |
- Un-L - Unlinkability between ciphertexts
- MK - Non-Usage of Master Secret Key
- DS - Derivation of Secret Keys
- SD - Assumption of Secure Secret-value Delivery and Management
- TP - Trusted Party
- NL - Name Lookup
- C - Fully supported cache ability on all routers in NDN network
- ✓- True
- ✗- False
- “–” - Unknown or unable to determine
© 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
Ko, K.T.; Hlaing, H.H.; Mambo, M. A PEKS-Based NDN Strategy for Name Privacy. Future Internet 2020, 12, 130. https://doi.org/10.3390/fi12080130
Ko KT, Hlaing HH, Mambo M. A PEKS-Based NDN Strategy for Name Privacy. Future Internet. 2020; 12(8):130. https://doi.org/10.3390/fi12080130
Chicago/Turabian StyleKo, Kyi Thar, Htet Htet Hlaing, and Masahiro Mambo. 2020. "A PEKS-Based NDN Strategy for Name Privacy" Future Internet 12, no. 8: 130. https://doi.org/10.3390/fi12080130
APA StyleKo, K. T., Hlaing, H. H., & Mambo, M. (2020). A PEKS-Based NDN Strategy for Name Privacy. Future Internet, 12(8), 130. https://doi.org/10.3390/fi12080130