{"title":"Run-Time Application Migration Using Checkpoint/Restore In Userspace","authors":"Aleksandar Tošić","doi":"10.13052/jwe1540-9589.2357","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2357","url":null,"abstract":"This paper presents an empirical study on the feasibility of using Checkpoint/Restore In Userspace (CRIU) for run-time application migration between hosts, with a particular focus on edge computing and cloud infrastructures. The paper provides experimental support for CRIU in Docker and offers insights into the impact of application memory usage on checkpoint size, time, and resources. Through a series of tests, we establish that the time to checkpoint is linearly proportional to the size of the memory allocation of the container, while the restore is significantly lower. Our findings contribute to the understanding of CRIU's performance and its potential use in edge computing scenarios. To obtain accurate and meaningful findings, we monitored system telemetry while using CRIU to observe its impact on the host machine's CPU and RAM utilization. Although our results may not be groundbreaking, they offer a good overview and a technical report on the feasibility of using CRIU on edge devices, which are typically resource constrained. This study's findings and experimental support for CRIU in Docker could serve as a useful reference for future research on performance optimization and application migration using CRIU.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"735-748"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654692","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142091058","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Ethereum Smart Contract Account Classification and Transaction Prediction Using the Graph Attention Network","authors":"Hankyeong Ko;Sangji Lee;Jungwon Seo","doi":"10.13052/jwe1540-9589.2353","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2353","url":null,"abstract":"This study explores the application of a Graph Attention Networks version 2 (GATv2) model in analyzing the Ethereum blockchain network, addressing the challenge posed by its inherent anonymity. We constructed a heterogeneous graph representation of the network to categorize contract accounts (CAs) into different decentralized application (DApp) categories, such as DeFi, gaming, and NFT markets, using transaction history data. Additionally, we developed a link prediction model to forecast transactions between externally owned accounts (EOAs) and CAs. Our results demonstrated the effectiveness of the heterogeneous graph model in improving node embedding expressiveness and enhancing transaction prediction accuracy. The study offers practical tools for analyzing DApp flows within the Web3 ecosystem, facilitating the automatic prediction of CA service categories and identifying active DApp usage. While currently focused on the Ethereum network, future research could expand to include layer 2 networks like Arbitrum One, Optimism, and Polygon, thereby broadening the scope of analysis in the evolving blockchain landscape.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"657-680"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654715","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142090825","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"User Authentication Techniques Using a Dynamic SoulBound Token","authors":"Yunjae Joo;Jungwon Seo","doi":"10.13052/jwe1540-9589.2356","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2356","url":null,"abstract":"This paper introduces a user authentication technique that utilizes a dynamic SoulBound Token (SBT) to tackle challenges associated with the oracle problem in decentralized environments. The approach uses dual smart contracts - local and global - along with blockchain tokens, removing the need for intermediary verification processes. The proposed method improves security by allowing users direct control over their authentication data, thus mitigating risks associated with centralized authorities and man-in-the-middle attacks. The feasibility and efficacy of this approach are demonstrated through a location-based prototype, indicating significant potential for application in Web 3.0 ecosystems. This paper also provides a comprehensive security analysis, underscoring the robustness of the proposed system against cyber threats.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"717-733"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654716","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142091056","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The Future of Digital Authentication: Blockchain-Driven Decentralized Authentication in Web 3.0","authors":"Jungwon Seo","doi":"10.13052/jwe1540-9589.2351","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2351","url":null,"abstract":"This paper presents an innovative Web 3.0 authentication technique, designed for a user-centric internet environment. Addressing the rising demand for authentication techniques suitable for Web 3.0, it defines the essential features of such systems and introduces a new approach using smart contracts. This approach utilizes mother and child tokens in conjunction with the lock smart contract to ensure secure authentication. The approach is thoroughly tested against various security threats, including man-in-the-middle, replay, and brute-force attacks, and its practicality is evaluated on Ethereum-based networks.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"611-636"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654714","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142090888","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Collaborative Task Offloading in Edge Computing Enabled Web 3.0","authors":"Mohammed Alkhathami","doi":"10.13052/jwe1540-9589.2354","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2354","url":null,"abstract":"Web 3.0 is an evolved version of the Web that enables the integration of applications such as the Internet of Things (IoT) with the Web. It involves the storage of large data generated by different users and efficient computation of application and web-related tasks. With the help of edge nodes installed near the users, the computation load of Web 3.0 will be efficiently managed. Thus, efficient task offloading and computation become a key concern in edge computing-enabled Web 3.0. In this paper, a novel algorithm is proposed that solves the challenges of load imbalance at the edge nodes resulting in large queue sizes and increased task delays. The proposed technique identifies the edge nodes with a large network load and pairs them with a lightly loaded edge node that can handle some of their network load. The edge node pairing is based on the Gale-Shapley stable matching algorithm. The preference profile of edge nodes is developed based on factors such as task computation delay and task transmission delay. Once the pairing is done, the number of tasks is offloaded as per the computing capacity of the lightly loaded edge nodes. A detailed simulation-based performance evaluation of the proposed technique is presented showing a reduction in task delay by 20% and task deadline miss ratio by 68%.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"681-697"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654717","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142090746","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Web 3.0 Chord DHT Resource Clustering","authors":"KaiHsiang Chan;Young Yoon","doi":"10.13052/jwe1540-9589.2355","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2355","url":null,"abstract":"This study explores the impact and challenges of new user behaviors in the Web 3.0 environment on distributed networks. The traditional Chord algorithm allows nodes to freely join and leave the network by hashing their IP addresses, and publishing and storing resources through the same hash function. When the keys of the resources are unique, the resources will be evenly distributed across each node, thereby achieving load balancing. However, in cases where many identical resources are published, this method leads to specific nodes bearing too much load, causing performance bottlenecks and resource concentration issues. In Web 3.0, when the nodes use the resource's topic as the key to publish resources, as the topic's popularity increases, the number of nodes using the same key as the publishing node and the nodes with demand for the topic resources will also increase. In the traditional Chord algorithm, the same key will be managed by the same node. The node responsible for the key needs to save the routing information of all related nodes and cope with a large number of resource requests for it. To address these issues, this paper proposes a new variant of the Chord algorithm, which uses two different Chord rings for resource clustering: one based on the hash of resource names and the other based on the hash of IP addresses. This method allows us to allocate resources more effectively, ensuring each node bears a reasonable load share according to capacity. This paper will present the design principles of this method and validate its effectiveness in improving resource distribution and reducing the problem of single-point overload through experiments.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"699-716"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654691","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142091047","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Web 3.0 Applications Supported by Artificial Intelligence and Blockchain Technologies","authors":"Vijayan Sugumaran;Sooyong Park","doi":"","DOIUrl":"https://doi.org/","url":null,"abstract":"Web 3.0 is a term used to describe the next generation of the internet that is being built on blockchain technology. It is expected to have a significant impact on society by decentralizing power and control over social media platforms and other mediums of cultural interaction. Web 3.0 gives power to the actual participants in the cultural economy - the creators and the community. With Web 3.0, communities can be more than just consumers of culture - they become active participants in the creator economy. They can become owners and decision-makers in that role instead of just being fans. While research on various aspects of Web 3.0 applications is progressing at a very fast pace, this is only the beginning. There are still a number of issues that have to be explored in terms of the design, implementation and deployment Web 3.0 applications and the enabling technologies. For example, various issues that need to be addressed include extendibility and interoperability of blockchain, NFT based authentication technology based on digital wallet, reward method-based consumer's efforts, Web 3.0 business model etc. This special issue focuses on these issues and present the state of the art in Web 3.0 with AI and its applications.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"v-vii"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654700","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142091057","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Self-Sovereign and Secure Data Sharing Through Docker Containers for Machine Learning on Remote Node","authors":"Jungchul Seo;Younggyo Lee;Young Yoon","doi":"10.13052/jwe1540-9589.2352","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2352","url":null,"abstract":"Collecting personal data from various sources and using it for machine learning (ML) is prevalent. However, there are increasing concerns about the monopolization and potential breach of private data by greedy and malicious organizations. Interest in Web 3.0 systems is on the rise as an alternative. These systems aim to guarantee the self-sovereignty of personal data in a decentralized setting. Users can share data with others directly for fair compensation. Nevertheless, malicious remote users can still violate the integrity and confidentiality of personal data. Therefore, this paper proposes a novel method of preventing unwanted leakage and counterfeiting of the private data lent on the premise of remote users. This paper focuses on the decentralized nature of Web 3.0 to leverage existing personal storage so that the burden of collecting secure data is relieved. Data owners create a lightweight Docker container to encapsulate their private data sources. The data owners generate another container to be deployed on a remote premise for taking and executing any ML algorithms remote users create. Between the containers forming a distributed trusted execution environment (TEE), data are read through a secure channel. Since the TEE is strictly controlled by the data owner, no malicious ML application can leak or breach the private information. This paper explains the engineering details of how this new method is realized.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 5","pages":"637-655"},"PeriodicalIF":0.7,"publicationDate":"2024-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10654693","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142090745","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"How Are Web APIs Versioned in Practice? A Large-Scale Empirical Study","authors":"Souhaila Serbout;Cesare Pautasso","doi":"10.13052/jwe1540-9589.2341","DOIUrl":"https://doi.org/10.13052/jwe1540-9589.2341","url":null,"abstract":"Web APIs form the cornerstone of modern software ecosystems, facilitating seamless data exchange and service integration. Ensuring the compatibility and longevity of these APIs is paramount. This study delves into the intricate realm of API versioning practices, a crucial mechanism for managing API evolution. Exploring an expanded and diverse dataset of 603 293 APIs specifications created during the 2015–2023 timeframe and gathered from four different sources, we examined the adoption of the following versioning practices: Metadata-based, URL-based, Header-based and Dynamic versioning, with one or more versions in production. API developers use more than 50 different version identifier formats to encode information about the changes introduced with respect to the previous version (i.e., semantic versioning), about when the version was released (i.e., age versioning) and about which phase of the API development lifecycle the version belongs (i.e., stable vs. preview releases).","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 4","pages":"465-506"},"PeriodicalIF":0.7,"publicationDate":"2024-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10634592","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141980029","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Client-Server Code Mobility at Runtime","authors":"Sebastian Heil;Lucas Schröder;Martin Gaedke","doi":"10.13052/jwe1540-9589.2342","DOIUrl":"10.13052/jwe1540-9589.2342","url":null,"abstract":"Application logic is inherently distributed between client and server due to the fundamental Client/Server architecture of the Web. The individual distribution is specified at design time and remains unchanged stable, preventing individual load distribution between clients and server at runtime. Dynamic code mobility at runtime, in contrast, allows to balance the needs of users, through increased responsiveness, and software providers, through better resource usage and cost reductions. Enabled by WebAssembly, the Web ecosystem recently provides the technological foundation for relocating code units during runtime. However, leveraging these capabilities to enhance web applications with dynamic code migration presents challenges for web engineers. In response, we propose an innovative distributed Client/Server software architecture for web applications. This architecture facilitates the dynamic migration of code at runtime, and addresses the technical challenges like dependency management, control and data flow distribution, communication, and interfaces. This novel software architecture serves as a reference for web engineers aiming to enrich their web applications with dynamic code mobility. Additionally, it contributes to the ongoing reevaluation of the Web ecosystem in light of the widespread adoption and standardization of WebAssembly across major browsers. Through experimentation in four scenarios, we demonstrate the feasibility of implementing this architecture, its negligible impact on performance and the optimization potential for individual code distributions across client and server.","PeriodicalId":49952,"journal":{"name":"Journal of Web Engineering","volume":"23 4","pages":"507-534"},"PeriodicalIF":0.7,"publicationDate":"2024-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10634594","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141927448","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}