Digital Content Management Using Non-Fungible Tokens and the Interplanetary File System
Abstract
:1. Introduction
2. Related Work
2.1. Limitations of DC
2.2. NFTs
- ○
- Issues with copyright and ownership: NFTs are used to prove ownership of digital content but do not fundamentally alter the ownership of the actual content [9]. For instance, purchasing an NFT of digital art does not transfer the copyright or intellectual property rights of the art itself. Additionally, the link between the original artwork and its associated NFT can be unclear, leading to potential ownership disputes. Therefore, the new ownership model brought by NFTs raises debates regarding how it aligns with existing copyright laws [14].
- ○
- Security and privacy: Certain NFT platforms may possess security vulnerabilities, potentially allowing hackers to expose user information or attempt fraudulent activities, like forging transactions [15]. Moreover, due to the immutable nature of blockchain, there are concerns about user data privacy since transaction records are publicly available, risking the exposure of personal information on the blockchain [16].
- ○
- Technical complexity: For users unfamiliar with blockchain and cryptocurrency technology, purchasing and trading NFTs can be complex and challenging. Technical aspects such as wallet creation, transaction fees, gas costs, etc., can pose difficulties, making entry into the NFT market challenging for the general public [17].
2.3. Use Cases
2.3.1. Case 1
2.3.2. Case 2
2.3.3. Case 3
3. Digital Content Platform
3.1. System Structure and Procedure
3.2. ERC-721
Algorithm 1. //Hash Function |
func hashItem(item: String) -> Int { var hasher = Hasher() item.hash(into: &hasher) return hasher.finalize() } Let hashValue = hashItem(item: “the quick brown fox”) |
3.3. IPFS
4. Digital Content Management (DCM) System
Algorithm 2. //Procedure of DCM |
DC: Digital Contents b: block = {b1, b2, b3} p{p1, p2, p3} = H(b1, b2, b3) generate = (p1,b1)(p2,b2)(p3,b2) IPFS = {u, S1, S2, S3, Sn}DC S1 = {p1, p2, p3} S2 = {p1, p2, p3} S3 = {p1, p2, p3} S4 = {} |
4.1. Distributed Hash Table (DHT)
Algorithm 3. //DHT API Algorithm |
define contents1 (DC.p1): S1 define contents2 (DC.p2): S2 define contents3 (DC.p3): S3 n = the total number of servers DHT <- pair(key, value); key <- content name value <- IP address query <-peers(DATABASE) if database == key returns (database) insert (key, value) by peers into database messages == O(log(N)) state == O(log(N)) |
4.2. Bit Torrent (File Exchange)
Algorithm 4. //File Share & Exchange |
p = {p1, p2, p3} S1 = {p3} S2 = {p2} S3 = {p1} S4 = {} (S2, S3, S4)_share(p3) <- S1 (S2, S3, S4).request(p1, p2) <- S1 session_establishment (S1-S2, S1-S3, S1-S4) (S1, S3, S4)_share(p2) <- S2 (S1, S3, S4).request(p1, p3) <- S2 session_establishment (S2-S1, S2-S3, S2-S4) (S1, S2, S4)_share(p1) <- S3 (S1, S2, S4).request(p1, p3) <- S3 session_establishment (S3-S1, S3-S2, S3-S4) (S1, S2, S3)_share() <- S4 (S1, S2, S3).request(p1, p2, p3) <- S4 session_establishment (S4-S1, S4-S2, S4-S2) |
4.3. Merkle Directed Acyclic Graphs (DAGs)
- -
- Content addressing: All content has self-organizing links, and their integrity is verified through their multihash checksums.
- -
- Tamper resistance: The self-integrity of the content is checked using a checksum. In cases of forgery, the hash value of the Merkle root is changed; thus, the integrity is automatically checked.
- -
- Deduplication: Content cannot be duplicated in a Merkle DAG because identical content will have the same hash value, which is not allowed.
4.4. Self-Certifying File System (SFS)
- -
- Location: server address
- -
- HostID: hash_value(public _key(from Server), location)
5. Experiment
- Step 1: Unique identification via content addressing.
- -
- Locates a file using the CID, which is the hash of the file, and connects directly to the nodes where the content is stored to obtain the file.
- Step 2: Content linking via DAGs.
- -
- The IPFS splits the DC into multiple blocks and stores them as DAGs.
- -
- When DC is uploaded using the DAG builder, it is separated into three blocks: DC1, DC2, and DC3.
- -
- Each DC is created as a single file using the BitTorrent method, and each DC block generates its own CID using a hash value.
- Step 3: Content discovery via DHTs.
- -
- To find a file, each node uses the DHT to determine the node containing the desired file.
- -
- A query is sent to the DHT using the library peer-to-peer (libp2p) framework. Once the file is located, it connects to the nodes through the Bitswap module.
- -
- The blocks are acquired using the want list (list of desired blocks).
- Step 4: Verification.
- -
- The arriving blocks are hashed to obtain their CIDs, which are verified as the requested CIDs.
- -
- The content delivery process is verified by checking whether the CID values match.
5.1. IPFS
5.2. Grouping in a Private Network
skoh21@skoh21-VirtualBox:~/.ipfs$ ipfs bootstrap list
/dnsaddr/bootstrap.libp2p.io/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
/dnsaddr/bootstrap.libp2p.io/p2p/QmQCU2EcMqAqQPR2i9bChDtGNJchTbq5TbXJJ16u19uLTa
/ip4/104.131.131.82/tcp/4001/p2p/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ
/ip4/104.131.131.82/udp/4001/quic/p2p/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ
skoh21@skoh21-VirtualBox:~/.ipfs$ ipfs config Address.API /ip4/10.0.2.15/tcp/5001 skoh21@skoh21-VirtualBox:~/.ipfs$ ipfs config Address.Gateway /ip4/10.0.2.15/tcp/8080
skoh21@skoh21-VirtualBox:~$ ipfs id
{
“ID”: “QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw”,
“PublicKey”:
“CAASpgIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD6bIaT8/t13lCkJFZsQNoaCWyTOfqrFBImzSTRGDiaivhBhXwAOMKakUr8q+HvQlI39nxuB/s/qaZjrniZJvPqNdEzRs4zjVcjXBkfmWBdYL8FCU5ZhWv9RDThn44ThjI1/xv2pkw0JCAeUEaF14z44Dk5XlCKBIKb+TFdVMIYs0axFhsLt5bm1wTmBUrQw/sYocHdfEy49GZVD9B6EezBVu7shbePrN2csROnxTOQK3TAA+GLsINRoVCH93YkosxhmhbfxlkppFThc1LwDuqj50GpDAYem8oBCQRKmiFj4AYHT0Asz3FIAb0Pyuus8Kla/FiHTQgZZ1eBbvqIUqsVAgMBAAE=”,
“Addresses”: [
“/ip4/127.0.0.1/tcp/4001/p2p/QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw”,
“/ip4/10.0.2.15/tcp/4001/p2p/QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw”,
“/ip6/::1/tcp/4001/p2p/QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw”
],
“AgentVersion”: “go-ipfs/0.5.0/”,
“ProtocolVersion”: “ipfs/0.1.0”
}
skoh21@skoh21-VirtualBox:~/.ipfs$ ipfs bootstrap
add/ip4/10.0.2.15/tcp/4001/ipfs/QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw
added /ip4/10.0.2.15/tcp/4001/ipfs/QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw
skoh21@skoh21-VirtualBox:~$ ipfs bootstrap list /ip4/10.0.2.15/tcp/4001/p2p/QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw skoh21@skoh21-VirtualBox:~$ ipfs add dc1 added QmWFSjvfttNUbzuW1MmhTfuS3nB74zZucdnkrSJv4EDgsw dc1
5.3. Discussion
5.4. Future Works
5.4.1. Future Research Prospect
5.4.2. Potential Future Improvements
5.4.3. Algorithm Optimization Approaches
5.4.4. Response Time, Scalability, Time Complexity Analysis
- -
- Response time: Response time measures the duration taken by the system to receive a request, process it, and return a response. Through experiments, requests are sent to the system, and the response times for these requests are measured to determine the average, maximum, and minimum response times. This allows us to understand the distribution of response times for each type of request.
- -
- Scalability: Scalability refers to the system’s ability to maintain performance while handling increasing loads. Through experiments, the system’s response times are measured under various load conditions, analyzing performance changes with increasing load. By comparing response times across scenarios like low, moderate, and high loads, the system’s scalability is assessed.
- -
- Time complexity: Time complexity represents the time taken by a specific algorithm based on the input size. By implementing the algorithm and varying the input size, one can measure the execution time. These data are presented in graphs or tables to display the algorithm’s execution time over time, allowing us to understand the relationship between input size and the algorithm’s time-based performance.
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Hwang, H.J.; Park, Y.J. Blockchain-Metaverse-NFT using Web 3.0 platform should be paid attention to virtual assets. Donga Ilbo, 28 June 2022. [Google Scholar]
- Hwang, Y.A.; Han, H.Y. Metaverse Trends and Educational Suggestions: Focusing on Keyword Network Analysis. Future Educ. Res. 2022, 12, 51–69. [Google Scholar] [CrossRef]
- Go, D.W. An efficient regulatory system that reflects the characteristics of cryptographic assets is needed. Newspaper, 2 November 2022. [Google Scholar]
- Lee, I.B. The Future of Metaverse That Has Already Begun-Another World Created by NFTs and Virtual Reality; Thousand Trees Forest: Seoul, Republic of Korea, 2021. [Google Scholar]
- Hong, K.H. NFT Future Class-New Opportunity to be Created by the Digital Economy Ecosystem; Korea Economic Daily: Seoul, Republic of Korea, 2022. [Google Scholar]
- Hyun, S.J. Issuance of NFTs and discussion of copyright issues. Bus. Law 2022, 32, 433–463. [Google Scholar]
- Taherdoost, H. Non-Fungible Tokens (NFT): A Systematic Review. Information 2022, 14, 26. [Google Scholar] [CrossRef]
- Wang, Q.; Li, R.; Wang, Q.; Chen, S. Non-fungible token (NFT): Overview, evaluation, opportunities and challenges. arXiv 2021, arXiv:2105.07447. [Google Scholar]
- Wilson, K.B.; Karg, A.; Ghaderi, H. Prospecting non-fungible tokens in the digital economy: Stakeholders and ecosystem, risk and opportunity. Bus. Horiz. 2022, 65, 657–670. [Google Scholar] [CrossRef]
- Rehman, W.; e Zainab, H.; Imran, J.; Bawany, N.Z. NFTs: Applications and challenges. In Proceedings of the 2021 22nd International Arab Conference on Information Technology (ACIT), Muscat, Oman, 21–23 December 2021; pp. 1–7. [Google Scholar]
- Maouchi, Y.; Charfeddine, L.; El Montasser, G. Understanding digital bubbles amidst the COVID-19 pandemic: Evidence from DeFi and NFTs. Finance Res. Lett. 2022, 47, 102584. [Google Scholar] [CrossRef] [PubMed]
- Sung, S.R.; Hoeffer, R.; McLaughlin, S. NFT Revolution—The Birth of a New Economic Ecosystem that Crosses Reality and the Metaverse; The Quest: Seoul, Republic of Korea, 2021. [Google Scholar]
- Yoon, H.J. Hot NFT-how much do you know? Magazine Hankyung, 21 March 2022. [Google Scholar]
- Çağlayan Aksoy, P.; Özkan Üner, Z. NFTs and copyright: Challenges and opportunities. J. Intellect. Prop. Law Pract. 2021, 16, 1115–1126. [Google Scholar] [CrossRef]
- Mukhopadhyay, M. Golden brush and evolving canvas—Navigating the digital art and Non-fungible tokens. J. Inf. Technol. Teach. Cases 2023. [Google Scholar] [CrossRef]
- Bhujel, S.; Rahulamathavan, Y. A survey: Security, transparency, and scalability issues of nft’s and its marketplaces. Sensors 2022, 22, 8833. [Google Scholar] [CrossRef] [PubMed]
- Gupta, Y.; Kumar, J.; Reifers, D.A. Identifying security risks in NFT platforms. arXiv 2022, arXiv:2204.01487. [Google Scholar]
- Kugler, L. Non-fungible tokens and the future of art. Commun. ACM 2021, 64, 19–20. [Google Scholar] [CrossRef]
- Casale-Brunet, S.; Ribeca, P.; Doyle, P.; Mattavelli, M. Networks of Ethereum Non-Fungible Tokens: A graph-based analysis of the ERC-721 ecosystem. In Proceedings of the 2021 IEEE International Conference on Blockchain (Blockchain), Melbourne, Australia, 6–8 December 2021; pp. 188–195. [Google Scholar]
- Bao, H.; Roubaud, D. Recent Development in Fintech: Non-Fungible Token. FinTech 2021, 1, 44–46. [Google Scholar] [CrossRef]
- Daniel, E.; Tschorsch, F. IPFS and Friends: A Qualitative Comparison of Next Generation Peer-to-Peer Data Networks. IEEE Commun. Surv. Tutor. 2022, 24, 31–52. [Google Scholar] [CrossRef]
- Dwivedi, S.K.; Amin, R.; Vollala, S. Smart contract and ipfs-based trustworthy secure data storage and device authentication scheme in fog computing environment. Peer Peer Netw. Appl. 2023, 16, 1–21. [Google Scholar] [CrossRef]
- Yue, Y.; Li, X.; Zhang, D.; Wang, S. How cryptocurrency affects economy? A network analysis using bibliometric methods. Int. Rev. Financ. Anal. 2021, 77, 101869. [Google Scholar] [CrossRef]
- Kodeco. Introducing CryptoKit. Available online: https://www.kodeco.com/10846296-introducing-cryptokit (accessed on 27 July 2020).
- Jonáš, J. Economic Consequences of Cryptocurrencies and Associated Decentralized Systems. Bachelor’s Thesis, Masaryk University, Brno, Czech Republic, 2015. [Google Scholar]
- Sarkodie, S.A.; Ahmed, M.Y.; Owusu, P.A. COVID-19 pandemic improves market signals of cryptocurrencies–evidence from Bitcoin, Bitcoin Cash, Ethereum, and Litecoin. Finance Res. Lett. 2022, 44, 102049. [Google Scholar] [CrossRef] [PubMed]
- Kumar, S.; Bharti, A.K.; Amin, R. Decentralized secure storage of medical records using Blockchain and IPFS: A comparative analysis with future directions. Secur. Priv. 2021, 4, e162. [Google Scholar] [CrossRef]
- Athanere, S.; Thakur, R. Blockchain based hierarchical semi-decentralized approach using IPFS for secure and efficient data sharing. J. King Saud Univ. Comput. Inf. Sci. 2022, 34, 1523–1534. [Google Scholar] [CrossRef]
- Kang, P.; Yang, W.; Zheng, J. Blockchain private file storage-sharing method based on IPFS. Sensors 2022, 22, 5100. [Google Scholar] [CrossRef] [PubMed]
API Name | Function |
---|---|
dht.findPeer | Find multi-addresses using the PeerID |
dht.findProvs | Find peers to provide a specific value (CID) |
dht.get | Query the routing system for a given key |
dht.provide | Alarm the network with the given values |
dht.put | Write a key or value pair to the routing system |
dht.query | Find the closest PeerID to the given PeerID or CID |
Type | Potential Security Threat | Solution |
---|---|---|
Spoofing | Abuse authentication vulnerabilities/steal private keys | Employ NFT-enabled smart contracts/cold wallets |
Tampering | Manipulate data outside the blockchain | Share both original and hashed data with buyers |
Repudiation | Combining the hash data with the attacker’s address | Use multiple signatures |
Information Disclosure | Attackers exploit hashes and transactions | Apply privacy-protecting smart contracts |
Evaluation of Privilege | NFT property errors caused by design issues | Validation of smart contracts |
Issue | Contents |
---|---|
IPFS Nodes and Network Infrastructure |
|
Smart Contracts and Blockchain Platforms |
|
Data Security and Encryption |
|
Scalable Databases and Storage |
|
Distributed Computing Resources |
|
Issue | Contents |
---|---|
Integration of Digital Assets and Blockchain Technology |
|
Utilization of Decentralized Technologies |
|
Integration with Artificial Intelligence (AI) |
|
Integration with Global Networks |
|
Issue | Contents |
---|---|
Efficient Distributed Storage and Access |
|
Algorithm Optimization |
|
Enhancement of Smart Contract Functionality |
|
Improvements in Security and Privacy |
|
Improving Network Scalability |
|
Avg. Response Time (ms) | Max. Response Time (ms) | Min. Response Time (ms) |
---|---|---|
30 | 70 | 20 |
Load Condition | Avg. Response Time (ms) | Max. Throughput (Requests/min) |
---|---|---|
Low load | 20 | 800 |
Moderate Load | 40 | 600 |
High Load | 80 | 400 |
Input Message Size (N) | Execution Time (ms) |
---|---|
100 | 5 |
500 | 15 |
1000 | 30 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 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 (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Ko, H.; Oh, J.; Kim, S.U. Digital Content Management Using Non-Fungible Tokens and the Interplanetary File System. Appl. Sci. 2024, 14, 315. https://doi.org/10.3390/app14010315
Ko H, Oh J, Kim SU. Digital Content Management Using Non-Fungible Tokens and the Interplanetary File System. Applied Sciences. 2024; 14(1):315. https://doi.org/10.3390/app14010315
Chicago/Turabian StyleKo, Hoon, Juhee Oh, and Sung Uk Kim. 2024. "Digital Content Management Using Non-Fungible Tokens and the Interplanetary File System" Applied Sciences 14, no. 1: 315. https://doi.org/10.3390/app14010315
APA StyleKo, H., Oh, J., & Kim, S. U. (2024). Digital Content Management Using Non-Fungible Tokens and the Interplanetary File System. Applied Sciences, 14(1), 315. https://doi.org/10.3390/app14010315