Blockchain-based decentralized cryptocurrency platforms are currently one of the hottest topics in technology. Although most of the interest is generated by cryptocurrency related activities, it is becoming apparent that a much wider spectrum of applications can leverage the blockchain technology. The primary concepts enabling such general use of the blockchain are the so-called smart contracts, which are special programs that run on the blockchain. One of the most popular blockchain platforms that supports smart contracts is Ethereum. As smart contracts typically handle money, ensuring their low number of faults and vulnerabilities are essential. To aid smart contract developers and help to mature the technology, we need analysis tools and studies for smart contracts. As an initiative for this, we propose the adoption of some well-known OO metrics for Solidity smart contracts. Furthermore, we analyze more than 40 thousand Solidity source files with our prototype tool. The results suggest that smart contract programs are short, neither overly complex nor coupled too much, do not rely heavily on inheritance, and either quite well-commented or not commented at all. Moreover, smart contracts could benefit from an external library and dependency management mechanism, as more than 85% of the defined libraries in Solidity files code the same functionalities.
Antonio Fernández Anta, Chryssis Georgiou, Kishori M. Konwar, Nicolas Nicolaou
Despite the hype about blockchains and distributed ledgers, no formal abstraction of these objects has been proposed. To face this issue, in this paper we provide a proper formulation of a distributed ledger object. In brief, we define a ledger object as a sequence of records, and we provide the operations and the properties that such an object should support. Implementation of a ledger object on top of multiple (possibly geographically dispersed) computing devices gives rise to the distributed ledger object. In contrast to the centralized object, distribution allows operations to be applied concurrently on the ledger, introducing challenges on the consistency of the ledger in each participant. We provide the definitions of three well known consistency guarantees in terms of the operations supported by the ledger object: (1) atomic consistency (linearizability), (2) sequential consistency, and (3) eventual consistency. We then provide implementations of distributed ledgers on asynchronous message passing crash-prone systems using an Atomic Broadcast service, and show that they provide eventual, sequential or atomic consistency semantics. We conclude with a variation of the ledger - the validated ledger - which requires that each record in the ledger satisfies a particular validation rule.
Blockchain technology and the application of smart contracts allow for automation of verifiable digital processes between any number of parties. The Internet of Things (IoT) has seen great potential in the past decade to revolutionise our day-to-day lives with the aim of automating physical processes by incorporating Internet-connected devices into commodities. By integrating the IoT with blockchain systems and smart contracts it is possible to provide verifiable automation of physical processes involving different parties. The challenge lies in that due to resource constraints, many of the computational devices used within the IoT are not capable of directly interacting with blockchain implementations. In this paper, we describe and give a reference design and implementation of a split-virtual machine, AlkylVM, which allows for resource constrained IoT devices to interact with blockchain systems.
Blockchain technology rapidly gained popularity based on its open and decentralized operation. Consensus protocol is the core mechanism of a blockchain network that securely maintains the distributed ledger from possible attacks from adversaries. Proof-of-work (PoW) is a commonly used consensus protocol that requires a significant amount of computation to find a new valid block. As the application-specific integrated circuits (ASICs) that are specially designed for PoW computation begin to dominate blockchain consensus operation, the decentralized nature of blockchain networks is being threatened. Many PoW mechanisms are being proposed to disincentivize the use of ASICs in the consensus operation. Employing multiple hash functions in the PoW computation (i.e., multi-hash PoW) is one of the commonly adopted approaches to achieve such ASIC-resistance. In this paper, we experimentally evaluate the level of ASIC-resistance of the multi-hash PoW mechanisms. We assess the level of ASIC-resistance based on the performance gap between ASICs and general-purpose computing platforms. Contrary to the expectation of the multi-hash PoW mechanisms, our results reveal that ASIC-resistance of these PoW mechanisms is not strong enough to prevent ASIC-based mining. Most of them show similar levels of ASIC-resistance as those of PoW mechanisms that are already defeated by ASIC-based systems.
Qi Zhang, Petr Novotny, Salman Baset, Donna N. Dillenberger · 6 authors
The rise of crypto-currencies has spawned great interest in their underlying technology, namely, Blockchain. The central component in a Blockchain is a shared distributed ledger. A ledger comprises series of blocks, which in turns contains a series of transactions. An identical copy of the ledger is stored on all nodes in a blockchain network. Maintaining ledger integrity and security is one of the crucial design aspects of any blockchain platform. Thus, there are typically built-in validation mechanisms leveraging cryptography to ensure the validity of incoming blocks before committing them into the ledger. However, a blockchain node may run over an extended period of time, during which the blocks on the disk can may become corrupted due to software or hardware failures, or due to malicious activity. This paper proposes LedgerGuard, a tool to maintain ledger integrity by detecting corrupted blocks and recovering these blocks by synchronizing with rest of the network. The experimental implementation of LedgerGuard is based on Hyperledger Fabric, which is a popular open source permissioned blockchain platform.
Scaling the transaction throughput of decentralized blockchain ledgers such as Bitcoin and Ethereum has been an ongoing challenge. Two-party duplex payment channels have been designed and used as building blocks to construct linked payment networks, which allow atomic and trust-free payments between parties without exhausting the resources of the blockchain.
Blockchains such as Bitcoin and Ethereum execute payment transactions securely, but their performance is limited by the need for global consensus. Payment networks overcome this limitation through off-chain transactions. Instead of writing to the blockchain for each transaction, they only settle the final payment balances with the underlying blockchain. When executing off-chain transactions in current payment networks, parties must access the blockchain within bounded time to detect misbehaving parties that deviate from the protocol. This opens a window for attacks in which a malicious party can steal funds by deliberately delaying other parties' blockchain access and prevents parties from using payment networks when disconnected from the blockchain. We present Teechain, the first layer-two payment network that executes off-chain transactions asynchronously with respect to the underlying blockchain. To prevent parties from misbehaving, Teechain uses treasuries, protected by hardware trusted execution environments (TEEs), to establish off-chain payment channels between parties. Treasuries maintain collateral funds and can exchange transactions efficiently and securely, without interacting with the underlying blockchain. To mitigate against treasury failures and to avoid having to trust all TEEs, Teechain replicates the state of treasuries using committee chains, a new variant of chain replication with threshold secret sharing. Teechain achieves at least a 33x higher transaction throughput than the state-of-the-art Lightning payment network. A 30-machine Teechain deployment can handle over 1 million Bitcoin transactions per second.
Zachary C. Kennedy, David Stephenson, Josef F. Christ, Timothy R. Pope · 7 authors
An anti-counterfeiting method is introduced by doping optically-active nanomaterials into printed parts, non-destructively measuring the part's chemical signatures arising from the taggants, and linking the resulting signature data to a blockchain.
Recycling and Waste Management Techniques
Additive Manufacturing and 3D Printing Technologies
Ikuo Magaki, Moein Khazraee, Luis Vega Gutierrez, Michael Taylor
GPU and FPGA-based clouds have already demonstrated the promise of accelerating computing-intensive workloads with greatly improved power and performance. In this paper, we examine the design of ASIC Clouds, which are purpose-built datacenters comprised of large arrays of ASIC accelerators, whose purpose is to optimize the total cost of ownership (TCO) of large, high-volume chronic computations, which are becoming increasingly common as more and more services are built around the Cloud model. On the surface, the creation of ASIC clouds may seem highlyimprobable due to high NREs and the inflexibility of ASICs. Surprisingly, however, large-scale ASIC Clouds have already been deployed by a large number of commercial entities, to implement the distributed Bitcoin cryptocurrency system. We begin with a case study of Bitcoin mining ASIC Clouds, which are perhaps the largest ASIC Clouds to date. From there, we design three more ASIC Clouds, including a YouTube-style video transcoding ASIC Cloud, a Litecoin ASIC Cloud, and a Convolutional Neural Network ASIC Cloud and show 2-3 orders of magnitude better TCO versus CPU and GPU. Among our contributions, we present a methodology that given an accelerator design, derives Pareto-optimal ASIC Cloud Servers, by extracting data from place-and-routed circuits and computational fluid dynamic simulations, and then employing clever but brute-force search to find the best jointly-optimized ASIC, DRAM subsystem, motherboard, power delivery system, cooling system, operating voltage, and case design. Moreover, we show how data center parameters determine which of the many Pareto-optimal points is TCO-optimal. Finally we examine when it makes sense to build an ASIC Cloud, and examine the impact of ASIC NRE.
Recently, the Bitcoin cryptocurrency has been an international sensation. This paper tells the story of Bitcoin hard-ware: how a group of early-adopters self-organized and financed the creation of an entire new industry, leading to the development of machines, including ASICs, that had orders of magnitude better performance than what Dell, Intel, NVidia, AMD or Xilinx could provide. We examine this story for clues as to how we can foster greater innovation in the semiconductor industry and enable this phenomenon to occur more broadly for more application areas, spawning a new age of hardware innovation tailored to emerging application domains-an Age of Bespoke Silicon.
2 source records
Advancements in Semiconductor Devices and Circuit Design
Advanced Memory and Neural Computing
Physical Unclonable Functions (PUFs) and Hardware Security
Tomassino Ferrauto, Domenico Parisi, Gabriele Di Stefano, Gianluca Baldassarre
Organisms that live in groups, from microbial symbionts to social insects and schooling fish, exhibit a number of highly efficient cooperative behaviors, often based on role taking and specialization. These behaviors are relevant not only for the biologist but also for the engineer interested in decentralized collective robotics. We address these phenomena by carrying out experiments with groups of two simulated robots controlled by neural networks whose connection weights are evolved by using genetic algorithms. These algorithms and controllers are well suited to autonomously find solutions for decentralized collective robotic tasks based on principles of self-organization. The article first presents a taxonomy of role-taking and specialization mechanisms related to evolved neural network controllers. Then it introduces two cooperation tasks, which can be accomplished by either role taking or specialization, and uses these tasks to compare four different genetic algorithms to evaluate their capacity to evolve a suitable behavioral strategy, which depends on the task demands. Interestingly, only one of the four algorithms, which appears to have more biological plausibility, is capable of evolving role taking or specialization when they are needed. The results are relevant for both collective robotics and biology, as they can provide useful hints on the different processes that can lead to the emergence of specialization in robots and organisms.
The security of electronic devices is of crucial importance to companies as well as to users.Moreover, companies that develop Intellectual Property also want to protect them from counterfeiting and overbuilding.Company profits, brand reputations and personal information of the users are at stake if there is a breach in the security of these electronic devices.In the classical approach, a system is secured by storing the cryptographic keys permanently in the non-volatile memories that are present in the security devices.However, this permanent storage of the key makes them easy targets for physical attacks; hence compromising the security of the system.A more secure, cost-effective and elegant solution to this permanent key storage is the use of Physical Unclonable Functions (PUFs).PUF is a method of producing a signature from a physical object, such as an Integrated Circuit, by relying on the non-reproducible physical attributes of a device.These signatures are unique because fabricated circuits exhibit slightly different electrical behavior from one another even if their design, mask and manufacturing process are identical.Various kinds of PUFs exist; examples are Optical PUF, Butterfly PUF and SRAM PUF.However, the start-up value based SRAM PUFs appear to be the most promising ones for usage in ICs.Although the SRAM PUFs are becoming very popular, only a little has been published in the field of modeling and analysis of their start-up behavior.Reproducing the same start-up behavior, every time the chip is powered-on, is very crucial in order to produce the same cryptographic key.This thesis proposes an analytical model for the start-up value based SRAM PUFs; it helps in understanding the impact of both non-technological parameters (such as supply voltage and temperature) as well as technological parameters (such as the geometry of the transistors and threshold voltage) on the behavior of the start-up values of an SRAM.Various experiments have been performed to analyze and quantify their impact.The results obtained indicate a major impact of the non-technology parameters.The reproducibility of start-up values becomes more likely with slower ramp-ups and lower temperatures.For example, the percentage of reproducible bits increase from 93.5% at 1s ramp-up to 96% at 10ms ramp-up.Amongst the technology parameters, it is observed that a small mismatch of 1.6% in the threshold voltage is enough to flip the start-up value of the cell for 65nm technology.These results have been validated by comparing them with actual silicon data measured at Intrinsic ID.The validation of the results proves the correctness of the analytical model proposed and gives a proof of robustness of the start-up values. Modeling SRAM Start-up Characteristics ForPhysical Unclonable Functions
Open access
Physical Unclonable Functions (PUFs) and Hardware Security
Integrated Circuits and Semiconductor Failure Analysis
Self configuring VLSI technology architectures offer a new environment for creating novel security functions. Two such functions for physical security architectures are proposed to be generated autonomously as unknown/secret internal functions. A cell-based FPGA technology architecture is deployed for generating two classes of self-constructed one-way physical secret functions, one representing a hash function and the other a ciphering function. The Hash function is a non-invertible mapping, where the cipher function should be invertible. The two sample architectures of the functions are inspired from the programmable cell structure of the selected FPGA technology. As the functions are internally created, their mapping structures can be kept completely secret and even unknown to anybody. Such units could be efficiently deployed for a novel physical security even when nothing is known about their exact architecture and mapping functions. Several new attractive application scenarios are demonstrated including a type of zero-knowledge proof of identity and clone-resistant physical units as well as secured dependency functions. It is also shown that such security mechanisms can be kept operational for some useful applications even if the secret-unknown functions are allowed to evolve and develop additional time-dependent and individual properties. Such security functions became recently possible after self-configuring VLSI architectures are available as a part of real microelectronic systems. Keywords-Identification; secret unknown hardware functions; clone-resitant units; secret-unknown physicalcipher, secret unknown hash-functions. 1.
2 source records
Physical Unclonable Functions (PUFs) and Hardware Security