| Literature DB >> 31623113 |
Iago Sestrem Ochôa1,2, Luis Augusto Silva3, Gabriel de Mello4, Bruno Alves da Silva5, Juan Francisco de Paz6, Gabriel Villarrubia González7, Nuno M Garcia8,9, Valderi Reis Quietinho Leithardt10,11,12.
Abstract
With the popularization of the Internet-of-Things, various applications have emerged to make life easier. These applications generate a large amount of user data. Analyzing the data obtained from these applications, one can infer personal information about each user. Considering this, it is clear that ensuring privacy in this type of application is essential. To guarantee privacy various solutions exist, one of them is UbiPri middleware. This paper presents a decentralized implementation of UbiPri middleware using the Ethereum blockchain. Smart contracts were used in conjunction with a communication gateway and a distributed storage service to ensure users privacy. The results obtained show that the implementation of this work ensures privacy at different levels, data storage security, and performance regarding scalability in the Internet of Things environments.Entities:
Keywords: blockchain; ethereum; privacy
Year: 2019 PMID: 31623113 PMCID: PMC6833058 DOI: 10.3390/s19204483
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1(a) Original blockchain and (b) Changed blockchain.
Figure 2Ethereum state machine.
Figure 3UbiPri Middleware [28].
Figure 4UbiPri Architecture [29].
Related Work.
| Work | Year | User Privacy | Device Privacy | Environment Privacy | Blockchain Type | Blockchain Used | Gateway | Storage |
|---|---|---|---|---|---|---|---|---|
| [ | 2017 | No | Yes | No | Consortium | Ethereum | No | Offchain |
| [ | 2017 | Yes | Yes | No | Private | Ethereum | Yes | NE |
| [ | 2018 | No | Yes | No | Private/Public | Ethereum | Yes | Offchain |
| [ | 2018 | No | Yes | No | Private | Ethereum | Yes | Offchain |
| [ | 2019 | No | Yes | No | NE | Ethereum | No | Offchain |
| [ | 2019 | Yes | No | No | Public | IOTA | No | NE |
| [ | 2019 | Yes | No | No | Private/Public | NE | No | NE |
| [ | 2019 | Yes | Yes | No | Public | NE | No | Offchain |
| This Work | 2019 | Yes | Yes | Yes | Private | Ethereum | Yes | Offchain |
Figure 5PRICHAIN Architecture.
Figure A1Environment Smart Contract.
Figure A2User Smart Contract.
Figure A3Device Smart Contract.
Figure 6User-Environment communication.
Figure 7User-Device communication.
Figure 8PriChain DApp.
Implementation cost of each contract.
| Contract | Transaction Fee (ETH) | Gas Used |
|---|---|---|
| User | 0.06779326 | 3,389,663 |
| Device | 0.0277857 | 1,389,285 |
| Environment | 0.02598354 | 1,299,177 |
User contract cost.
| Function | Transaction Fee (ETH) | Gas Used |
|---|---|---|
| applyBackupPrefs | 0.0004098 | 102,450 |
| applyPendingPrefs | 0.00040932 | 102,330 |
| setPref | 0.000341036 | 85 259 |
| connectToDevice | 0.000249916 | 62,479 |
| connectToEnvironment | 0.000193336 | 48,334 |
Device contract cost.
| Function | Transaction Fee (ETH) | Gas Used |
|---|---|---|
| setMAC | 0.000192317 | 39,532 |
Environment contract cost.
| Function | Transaction Fee (ETH) | Gas Used |
|---|---|---|
| setRule | 0.000370504 | 92,626 |
| setDevice | 0.000256304 | 64,076 |
| setDataAccess | 0.000170144 | 42,536 |
| setPermLevel | 0.000168932 | 42,233 |
PUT Results.
| Samples | Processing Time (ms) | User Request (ms) | Device Request (ms) | IPFS Insertion (ms) |
|---|---|---|---|---|
| 1 | 8.945 | 24.615 | 1.497 | 0.121 |
| 10 | 78.592 | 236.142 | 14.96 | 1.39 |
| 100 | 1071.41 | 2669.34 | 149.6 | 26.14 |
GET Results.
| Samples | Processing Time (ms) | User Request (ms) | Device Request (ms) |
|---|---|---|---|
| 1 | Negligible | 13.045 | 1.440 |
| 10 | 0.004 | 130.79 | 14.37 |
| 100 | 0.055 | 1293.0 | 160.0 |
Figure 9User communication with a device authorized by blockchain.
Figure 10IPFS storage process.
Figure 11Blockchain denying the connection.