Internet of Things (IoT) is an emerging technology that moves the world in the direction of smart things. But, IoT security is the complex problem due to its centralized architecture, and limited capacity. So, blockchain technology has great attention due to its features of decentralized architecture, transparency, immutable records and cryptography hash functions when combining with IoT. Cryptography hash algorithms are very important in blockchain technology for secure transmission. It converts the variable size inputs to a fixed size hash output which is unchangeable. Existing cryptography hash algorithms with digital signature have issues of single node accessibility and accessed up to 128 bytes of key size only. As well as, if the attacker tries to hack the key, it cancels the transaction. This paper presents the Modified Elliptic Curve Cryptography Multi Signature Scheme (MECC-MSS) for multiple node accessibility by finding nearest path for secure transaction. In this work, the input key size can be extended up to 512 bytes to enhance the security. The performance of the proposed algorithm is analyzed with other cryptography hash algorithms like Secure Hashing Algorithms (SHAs) such as SHA224, SHA256, SHA384, SHA512, SHA3-224, SHA3-256, SHA3-384, SHA3-512 and Message Digest5 by one-way analysis of variance test in terms of accuracy and time complexity. Results show that the MECC-MSS achieves 90.85% of accuracy and time complexity of 1.4 nano seconds with significance less than 0.05. From the statistical analysis, it is observed that the proposed algorithm is significantly better than other cryptography hash algorithms and also having less time complexity.

Internet of Things (IoT) with blockchain technology is an emerging technology in the concerns of security and privacy issues. In IoT, the message transformation is done through central server. But it leads to the security and privacy issues including spoofing the wireless devices, less trustworthiness, false identification, and difficult to prevent the system from vulnerabilities. As well as protecting large amount of data is difficult [

In blockchain, the blocks are linked together to form chain by the process of mining. Each block has header and body with validated and authenticated transaction details. The first block of chain is known as genesis block. Each block in blockchain consists of version, timestamp, nonce, previous block hash, root hash, and target hash [

In supply chain management, it is used to enhance the transparency, traceability to prevent the transaction from attacks. In healthcare, blockchain technology is used to secure the clinical and unified patient information. It is used to trace the drugs and patient’s information without intermediaries. In financial industries, it offers the authentication and economic benefits. In retail services, it reduces the paperwork to rapid settlement procedure. In smart grid, it can be used to secure transactions of energy retailing and purchasing by increasing the resiliency. The blockchain based voting system provides distributed ledger with fast counting. In insurance field, it provides fast transaction between clients, policyholders and companies. In identity management, it eliminates the identity and password theft without central authority [

The cryptography algorithm is the important reason to increase the security in cryptocurrency and it can be divided into symmetric, asymmetric, and hash algorithms. The prime numbers have been chosen to generate the private and public key. In cryptocurrency, hash functions and asymmetric cryptography algorithms are mainly used to validate and secure the transaction [

The digital information can be signed with private key by sender. Then the signed message is validated by the receiver with the help of public key. But it allows only one transaction at a time and less transaction speed. So, the proposed method uses the elliptic curve cryptography digital signature algorithm for multiple node transaction with multi signature. When the node gets attacked by hackers, the proposed algorithm finds the nearest path to transfer the information to prevent the data from corruption. The multi signature function can be divided into three process including generation of key pair, signing phase, and verification phase. In generation phase, the private key and public key can be generated by choosing the prime numbers, and elliptic curve parameters. In signing phase, the data are encoded and signed many times by authority to avoid the data outflow. In verification phase, the signed message with private key can be validated with the help of public key. It uses all hash functions (Secure Hashing Algorithms (SHA) such as SHA1, SHA2, and SHA3 generations) to generate the message digest and it can be extended key size of 512 bits. It is not easily tracked by attackers.

The main objectives of this work are as follows:

To provide the overview of blockchain technology and its IoT applications,

To analyze different cryptography hash algorithms, signature schemes and its drawbacks in cryptocurrency,

To propose the Modified Elliptic Curve Cryptography Multi Signature Scheme (MECC-MSS) which can be extended up to 512 bytes of input key size for multiple transactions,

To investigate the performances of our proposed algorithm with other cryptography hash algorithms in terms of input key size, accuracy, time complexity and hash output with multi signature,

To analyze the statistical performances of mean accuracy and mean time for the MECC-MSS with other cryptography hash algorithms by one-way ANalysis Of VAriance (ANOVA) test.

This paper is organized as follows. Section 2 is discussed the existing signature schemes in blockchain technology. Section 3 explains the different cryptography hash algorithms with digital signature. The proposed MECC-MSS system is explained in Section 4. In Section 5, the results and the statistical analysis of the MECC-MSS with different hash algorithms are discussed. Finally, Section 6 concludes the paper.

Blockchain technology uses the hash functions and asymmetric key algorithm with digital signature to enhance the security, integrity and reliability [

A blockchain technology for controlling and managing IoT devices is discussed in [

A multi-signature scheme for mining in consortium blockchain technology is discussed in [

S. No | Application criteria | Author | Year | Major inclusion | Processing efficiency | Time consumption | Security attacks |
---|---|---|---|---|---|---|---|

1. | Single node accessibility of blockchain technology for IoT applications | Huh et al. | 2017 | Uses of blockchain technology in controlling IoT devices | ✓ | ✓ | ✗ |

2. | Wan et al. | 2018 | Peer to peer network protects transaction histories | ✓ | ✗ | ✗ | |

3. | Yang et al. | 2018 | Blockchain technology in vehicular networks | ✓ | ✗ | ✗ | |

4. | Alam et al. | 2019 | Blockchain Technology to improve secure transaction in IoT applications. | ✗ | ✗ | ✓ | |

5. | Wu et al. | 2020 | Software defined blockchain technology for dynamic IoT systems | ✗ | ✗ | ✓ | |

6. | Lin et al. | 2018 | Identity based homomorphic signature scheme for data authentication | ✗ | ✗ | ✓ | |

7. | Sun et al. | 2018 | Attribute based signature for decentralized healthcare system | ✓ | ✗ | ✗ | |

8. | Multiple node accessibility of blockchain technology for IoT applications | Li et al. | 2020 | Security vulnerabilities in blockchain technology | ✗ | ✗ | ✓ |

9. | Aitzhan et al. | 2016 | Decentralized energy trading system to avoid double compensation | ✗ | ✗ | ✓ | |

10. | Meng et al. | 2021 | Consortium blockchain technology to enhance transparency | ✓ | ✗ | ✓ | |

11. | Guo et al. | 2020 | Certificate less signature scheme to increase block generation | ✗ | ✓ | ✗ | |

12. | Yu et al. | 2018 | RSA signature scheme to distinct active and inactive nodes. | ✓ | ✗ | ✗ | |

13. | Yuan et al. | 2017 | Aggregate signature scheme for big data transaction | ✗ | ✗ | ✓ | |

14. | Li et al. | 2020 | Ring signature for peer-to-peer network | ✗ | ✗ | ✓ | |

15. | Zhang et al. | 2019 | Group signature scheme for validation of blocks | ✓ | ✗ | ✓ |

In AES and RSA cryptography algorithm, only one key can be generated at a time for the transaction and prime numbers are used to create the secret key. But it has drawbacks like loss of prime number and easily tracked by user. In existing blockchain technology, digital signature algorithm provides only one transaction at a time and it is not secured. So, it leads to less speed transaction. Existing solutions in cryptocurrency has issues like single node accessibility and accessed up to 128 bytes of key size only. If attacker tries to hack the key, it leads to cancel the transaction. As well as, it is easily attacked by brute force attack and sybil attack. To overcome these issues, multiple node accessibility using the proposed MECC-MSS is proposed to find the nearest path for transferring the information in this work. It generates the hash value by multiplying the private key, the public key, the message key and the address bytes. It can be extended up to 512 bytes of key size to increase security. The MECC-MSS scheme has the following advantages. Firstly, the key size can be extended up to 512 input bytes. Secondly, it avoids single node accessibility by finding another path to transfer the data. Thirdly, the transaction cannot be modified by anyone due to digital signature in the signing phase. Finally, it removes the security attacks like brute force attack and sybil attack.

Message digest is a reduced representation of large input keys. It gives maximum of 32 bytes hash output. Mainly it can be used for single digital signature. But it does not give efficient results in multi signature purposes. It is vulnerable to collisions of bits and analytical attack. So, it is not giving proper results in signature verification [

Each part contains 4 bytes of input. It can be written by, A_{1} = 0x67452301, A_{2} = 0xefcdab89, A_{3} = 0x98badcfe, and A_{4} = 0x10325376. Message digest 5 can be achieved by four rounds of functions by the operations of addition, left rotation etc., these four rounds can be obtained as, Hash_{1}(A_{1}, A_{3}, A_{4}) = (A_{2}&A_{4}) ǁ (! A_{2}&A_{4}), Hash_{2}(A_{2}, A_{3}, A_{4}) = (A_{2}&A_{4}) ǁ (A_{3}&! A_{4}), Hash_{3}(A_{2}, A_{3}, A_{4}) = A_{2} ^ A_{3} ^ A_{4} and Hash_{4}(A_{2}, A_{3}, A_{4}) = A_{3} ^ (A_{2}ǁ! A_{4}).

Multi signature with MD5 generates 32 bytes of hash value. It is easily identified by hacker due to less byte. It does not give efficient result for security attacks. SHA has the family members of SHA-0, SHA-1, SHA-2, and SHA-3. Cryptography hash algorithms have the features including pre-image resistance, second pre image resistance and collision resistance. Pre image resistance represents the irreversible of hash functions. This feature enhances the security by reducing the opportunity to guess the hash value. Second pre image resistance represents the different hash values for same input. It is very hard to find different input with same hash output. Collision resistance can be representing the quality of hash value to avoid hacking of keys from security vulnerabilities. From this feature, it can be decided that hash of one input is not equal to hash of another input. SHA-224 is similar to MD5 by producing 32 bytes of hash value [

All group _{i}(1 ≤

Select the number of integers (

Select the number of integers (

Select the number of integers (

Select the number of integers (

Select the brute force attack keys and specify as

Select the sybil attack keys and specify as

To generate the multi signature, each signature in the groups _{i}(1 ≤

Compute the encryption bytes of public keys with message

Compute the encryption bytes of private keys with message

Compute the different hash function of message with private keys

Calculate the accuracy measurement of different hash function with private keys

Compute the time measurement of different hash function with private keys

Combine the attacks of private keys with message bytes

Compute the recovery of attacks in private keys with message measurement

Compute the address with different hash function values of public keys

Compute the different hash function values of public keys with message measurements

Compute the different hash function with public keys and message

Compute the accuracy and time complexity of public keys.

Compute the different hash function values with address data

In this section, the MECC-MSS scheme that can be extended up to 512 input bytes for improving security is discussed. Blockchain technology performance depends on the selection of hash functions. It is divided into multiple keys generation, private key validation, recovering keys from attacks, public key verification. In this work, three levels of comparisons are being carried out based on hash output, accuracy, and time complexity. These results can be analyzed with various hash algorithms MD5, SHA 224, SHA 256, SHA 384, SHA 512, SHA3-224, SHA3–256, SHA3-384, and SHA3-512.

Digital signature scheme has private key for signature generation, and public key for signature verification. The transaction can be divided into two phases. These are signer phase and verifier phase. In signer phase, the multi digital signature is generated to initiate the transaction. In verifier phase, the multi signature is validated with usage of signer’s public key. Before signature generation, the private keys can be multiplied with message bytes to produce hash bytes. Then it will generate multi signature (r, s) by utilizing private keys with message hash bytes. In verification phase, the generated hash bytes can be multiplied with public key for validating the key. If it is validated, then the message bytes are transferred into different address based on its requirement. Sometimes, the changes in length of hash bytes denote that hacker is trying to guess the private keys. The person who does not know private key, they cannot able to generate correct digital signature. It increases the difficulty of attacker. If the attacker node is continuously trying to identify the private key, the hash bytes can be changed. The MECC-MSS scheme signature generation and verification steps are shown in

Multi signature scheme can be performed for multiple transactions at a time. It generates multiple keys to sign the transactions and not tracked by attackers. It removes single point failure. Every signature scheme has key pairs (private key, public key), address, and message. MECC-MS scheme is proposed by changing the curve parameters to choose the number of elliptic curves over finite field F_{p}. It can be proposed by avoiding backdoors in curve secp521r1. This elliptic curve accepts the input strength up to 512 bytes and specified by T = (_{j}, B_{j}, G, n, H_{p}_{j}

The elliptic curve domain parameters can be specified by T = (_{j}, B_{j}, G, n, H_{2}^{m}

The elliptic curve EC_{j} is given by,

This work is divided into 5 steps. These are

Multiple keys generation: Multiple numbers of private keys, public keys, message keys and address keys are generated for multiple transactions. Private keys can be multiplied with message key to produce hash output.

Validation of private keys and signature generation: The hash output of private key with message is encrypted for initiating the transaction. Digital signature can be added using modified ECC multi signature scheme after validation of private keys.

Discovering Attacks: If any hackers tried to attack the key, the hash output changes abnormally. From these abnormal changes, we can find the vulnerabilities. In multi signature algorithm, following two attacks are possible.

Brute force attack: An attacker tries to guess the key or crack the password continuously. Our proposed algorithm reduces the possibility of vulnerabilities by increasing input key bytes up to 512 bytes.

Sybil attack: An attacker tries to create vulnerable identity for hacking the transaction. The attackers try to identify the password through these vulnerable identities.

Recovering keys from attacks: From the changes in hash output, this work discovers the attack present in keys. The vulnerable password can be removed from original keys by filtering.

Verification of multi signature with public key: The destination node verifies the public key with multi signature and address. If the keys are validated, messages are transmitted to multiple nodes.

The below steps are implemented to achieve the MECC-MSS for multiple node transactions.

General form of elliptic curve digital signature equation gives a curve with finite numbers of valid point on its N.

Compute the valid points of elliptic curve in private keys with message

Calculate the point of reference of elliptic curve in public keys with message

Send the individual private keys to other signers in the group of points Gi to the equation

Compute the hash functions of the MECC-MSS

Calculate the accuracy measurement of MECC with private keys

Calculate the time measurement of MECC with private keys

Combine the attacks of private keys with message bytes

Compute the recovery of attacks in private keys with message measurement

Compute the address with the MECC-MSS values of public keys

Calculate the reference points of the MECC-MS scheme values of public keys with message measurements

Compute the accuracy measurement of MECC function public key and message

Calculate the time measurement of MECC function with public key and address

Compute the different hash function values with address data

The MECC-MSS can be used to create multiple numbers of private keys for multiple transactions. Multiple keys can be used to secure information or funds on multiple nodes. It improves the security and safeguards the funds from security attacks. It is not possible to identify all keys. If hacker tries to identify the key, it increases the output hash.

Hash algorithm | Hash output |
---|---|

SHA224 | d0a33e3a5787f0cb0b62474463d56babd3b9ede6cd56fc272b80b0e8 |

SHA256 | 80bd5cb5a9ca35dcdea1d59b5f1778f4114f6215af38004a02a99a1d37383648 |

SHA384 | 059fb9a5bb7d90988188e1a3d9034d6ae4449d97b056c536c1e5b41259ff4f46a9ee5d16ae14ea815dc1749754114f52 |

SHA512 | 32aa05aca47a17b6afdbadabe83e929e5a55777c5f5ddb0c854ae78ef403a2baeda46e7f1f1fd7de5237749f43d5f8ce0c95e260ef25e27e20cbdffde41bcaf6 |

MD5 | 6df9012b2b7cb3c55963499a26309bba |

SHA3-224 | 55cca763b441696cc6762cf06819fe5e52f71ee3b149b67ecbd010a0 |

SHA3-256 | a5bfab305ac4e3f7b46df197e00dba7362d4c807c681b70bc63e52541ed69ba6 |

SHA3-384 | 4a10f9aa4419d1da4bec1a5562da7404b574b28444116539552aa5f84b781fd933b3d66d6c6f59f9486de2cfbb6fccdb |

SHA3-512 | 5994aeff4641e06292cf606e09685cfa2e5c6c12ec58cfa42296774ee3a95aa8c691f4a6f3b77f5b88a98159a57ae6eeec130b120c215d3cc53c74fa4591959b |

Modified ECC | bd6c29f8ed997ebafc8f5751b44f32dfc02e9613319c1c4de77f7eaaad8042ea4ad5069bd52beab0cca61a81b595b3b58e7e7518d61b9bb8e62bf13c54350f9e |

After brute force attack | After sybil attack | |||||||||
---|---|---|---|---|---|---|---|---|---|---|

Input 1 | Input 2 | Input 3 | Input 4 | Input 5 | Input 1 | Input 2 | Input 3 | Input 4 | Input 5 | |

SHA 224 | 80 | 56 | 196 | 140 | 68 | 84 | 128 | 132 | 164 | 100 |

SHA 256 | 80 | 56 | 196 | 140 | 68 | 84 | 128 | 132 | 164 | 100 |

SHA 384 | 104 | 80 | 220 | 164 | 92 | 108 | 152 | 156 | 188 | 124 |

SHA 512 | 104 | 80 | 220 | 164 | 92 | 108 | 152 | 156 | 188 | 124 |

MD5 | 112 | 88 | 228 | 172 | 100 | 116 | 160 | 164 | 196 | 132 |

SHA3-224 | 112 | 88 | 228 | 172 | 100 | 116 | 160 | 164 | 196 | 132 |

SHA3-256 | 144 | 120 | 260 | 204 | 132 | 148 | 192 | 196 | 228 | 164 |

SHA3-384 | 144 | 120 | 260 | 204 | 132 | 148 | 192 | 196 | 228 | 164 |

SHA3-512 | 176 | 152 | 292 | 236 | 164 | 180 | 224 | 228 | 260 | 196 |

MECC | 176 | 152 | 292 | 236 | 164 | 180 | 224 | 228 | 260 | 196 |

The input key size can be extended up to 512 bytes in our proposed algorithm.

Inputs | Input bytes | Attack bytes | ||||
---|---|---|---|---|---|---|

Private key | Public key | Message key | Address key | Brute force attack | Sybil attack | |

Input 1 | 52 | 48 | 36 | 56 | 48 | 52 |

Input 2 | 164 | 172 | 160 | 148 | 24 | 96 |

Input 3 | 296 | 160 | 120 | 84 | 164 | 100 |

Input 4 | 368 | 348 | 196 | 164 | 108 | 132 |

Input 5 | 436 | 388 | 116 | 76 | 36 | 68 |

The hash bytes in

These cryptography hash functions produce hash output up to 128 bytes of input key. The MECC-MSS algorithm generates hash output up to 512 bytes of input key.

Multi signature of private key with attacks | Multi signature with decoding address (After recovering keys from attacks) | |||
---|---|---|---|---|

Accuracy (%) | Time complexity (ns) | Accuracy |
Time complexity (ns) | |

SHA 224 | 90.11 | 17.54 | 3.6 | 9 |

SHA 256 | 89.98 | 17.49 | 6.7 | 9 |

SHA 384 | 89.97 | 14.56 | 12.3 | 6.32 |

SHA 512 | 90.06 | 14.61 | 18.6 | 6.34 |

MD5 | 90.01 | 11.72 | 26.5 | 3.86 |

SHA3-224 | 90.12 | 11.69 | 34.6 | 3.83 |

SHA3-256 | 90.04 | 11.04 | 46.7 | 3.28 |

SHA3-384 | 90.08 | 11 | 58.6 | 3.25 |

SHA3-512 | 89.9 | 9.05 | 74.5 | 1.61 |

MECC-MSS | 89.94 | 8.95 | 90.6 | 1.57 |

If the attacker tries to guess the password or creating the vulnerable identity to hack the transaction all cryptography hash algorithms gives an accuracy 89%∼90%. An accuracy represents the quality of the hash output that can be calculated by number of predicted values divided by total number of values. Number of predicted values denotes true positive and negative values and total number of values denotes true and false, positive and negative values. The hash algorithm is not secure when the hash bytes of key is easily identified by attacker. If hacker can not be able to guess the hash bytes, it enhances the security and accuracy.

In this work, statistical analysis can be done by SPSS software [

One-way ANOVA test | Accuracy | Time complexity | ||||||
---|---|---|---|---|---|---|---|---|

Sum of squares | df | Mean square | Sum of squares | df | Mean square | Sig. | ||

With attacks | Between groups | 5.213 | 9 | .579 | 492.973 | 9 | 54.7 | .000 |

Within groups | 2.676 | 40 | .067 | 2.821 | 40 | .071 | ||

Total | 7.890 | 49 | - | 495.794 | 49 | - | ||

Without attacks | Between groups | 39644.3 | 9 | 4404.9 | 346.215 | 9 | 38.4 | .000 |

Within groups | 1.588 | 40 | .040 | .665 | 40 | .017 | ||

Total | 39645.8 | 49 | - | 346.880 | 49 | - |

Accuracy 1 represents the changed accuracy value, when the keys are hacked by attackers. The sum of squares obtained for accuracy 1 is 7.89 and accuracy 2 is 39645.89. Obtained significance value is 0.00 (

The HA224 has a mean time of 18.43 ns in the presence of attack and 9.05 ns after recovering keys from attacks. SHA256 and SHA384 have a mean time of 8.97 and 6.29 ns respectively. SHA512 and MD5 produce a mean time of 6.23 and 3.73 ns respectively. Similarly, SHA3-224 and SHA3-256 has a mean time of 3.58 and 3.36 ns in an ANOVA test. SHA3-384, SHA3-512 and proposed algorithm have mean time of 3.23, 1.52 and 1.4 ns respectively. From this analysis, the proposed MECC-MSS completes the transaction with less time when compared to other cryptography algorithms.

Blockchain technology is a growing technology to enhance the security in many IoT applications with the help of cryptography hash algorithms. The proposed MECC-MSS finds the shortest path between nodes for multiple node accessibility. It allows multiple transactions using multiple keys and input key size can be extended up to 512 bytes. The performance of the proposed algorithm is analyzed with different SHAs like SHA224, SHA256, SHA384, SHA512, MD5, SHA3-224, SHA3-256, SHA3-384, and SHA3-512. The statistical performance can be done by one-way ANOVA test for analyzing the accuracy and time complexity. MECC-MS scheme achieves an accuracy of 90.85% and time complexity of 1.4 nano-seconds with significance less than 0.05. From the statistical analysis, the proposed algorithm achieves significantly better accuracy with less time complexity when compared with other cryptography hash algorithms. In future, this work can be focused on the usage of images as keys instead of string bytes to enhance the secure transaction in the health care applications.