Explore chapters and articles related to this topic
Introduction to Blockchain and Smart Contract – Principles, Applications, and Security
Published in Bharat Bhushan, Nitin Rakesh, Yousef Farhaoui, Parma Nand Astya, Bhuvan Unhelkar, Blockchain Technology in Healthcare Applications, 2022
Adarsh Singh, Ananya Smirti, Raghav Gupta, Chamitha de Alwis, Anshuman Kalla
Similar to Ethereum, Hyperledger Fabric is also a distributed ledger platform capable of running smart contracts and dApps [59]. Hyperledger Fabric is designed to support enterprise applications using a permissioned blockchain environment. Smart contracts, also known as Chaincode in Hyperledger, operate in a permissioned environment and do not require any transaction fee. Unlike Ethereum (which uses virtual machines to run smart contracts), Fabric uses a Docker container. Docker is an open-source platform using OS-level virtualization to facilitate the operation of applications independently [60]. This results in lower overhead, resulting in enabling the platform and applications to function in a faster and energy-efficient manner. Furthermore, Fabric supports high-level programming languages such as Java and Golang [37].
RLaaS-Frame
Published in J. P. Mohsen, Mohamed Y. Ismail, Hamid R. Parsaei, Waldemar Karwowski, Global Advances in Engineering Education, 2019
Xuemin Chen, Qianlong Lan, Ning Wang, Gangbing Song, Hamid R. Parsaei
VM and Docker represent two different ways to create virtual resources for an application running. VM shares only hardware with Operating System (OS). With a container, virtualization takes place at the OS level, so the OS and some middleware are possibly shared. From the functional point of view, VM is more flexible, because the guest environment where the applications run is similar to a bare-metal server. The users’ special OS and middleware are independent from the VM on the same server. With a container, a common OS and middleware elements need to be accommodated, because each container uses the core server platform and shares it with other containers. Docker is usually deployed through management platforms [39,40]. It is also generally easier to operationalize container-based clouds than VM-based clouds, where management tools are more varied. Docker is an open source engine, and it primarily focuses on automating the deployment of applications inside software containers and OS-level virtualization on Linux. Table 7.1 shows the main differences between VM and Docker. Figure 7.4 shows the result from the Google Trend Chart [41]. Comparing with VM, the number of searches for Docker has steadily risen since its initial release in early 2013.
Big Data, Cloud, Semantic Web, and Social Network Technologies
Published in Bhavani Thuraisngham, Murat Kantarcioglu, Latifur Khan, Secure Data Science, 2022
Bhavani Thuraisngham, Murat Kantarcioglu, Latifur Khan
Other types of virtualization include operating system (OS) level virtualization, storage virtualization, data virtualization, and database virtualization. In OS level virtualization, multiple virtual environments are created within a single operating system. In storage virtualization, the logical storage is abstracted from the physical storage. In data virtualization, the data is abstracted from the underlying databases. In network virtualization, a virtual network is created. Figure 4.5 illustrates the various types of virtualizations.
Off-chain management and state-tracking of smart programs on blockchain for secure and efficient decentralized computation
Published in International Journal of Computers and Applications, 2022
Mahdi Mallaki, Babak Majidi, Amirhossein Peyvandi, Ali Movaghar
For creating a regulated environment and creating a standard for all parties, we define the standard input file and the state file as the inputs of the system, and the output logs and the changed state file as the execution output. In this approach, a program can be written in any language, but in our example, we used Python for its simplicity and ease of use. This program is going to be executed by some deferent parties and therefore it should not raise any security issues for its host. The program should be executed easily and without any dependency on different libraries as a program with its dependencies can make a conflict with other programs that are running on the same host. Therefore, in order to prevent these problems, we use OS-Level Virtualization technology for encapsulating program dependencies and reducing its security problems for the execution host. One of the most reliable OS-Level virtualization technologies is Docker [20]. As presented in Figure 2, the execution of a program can be performed in a Docker environment and the input file and current state file will be mounted. We cannot assign a standard format for the input file and the state file because a program may want to save its state as JSON or XLS or any other formats. In Figure 2 we used JSON format for input file and current state file.