Next Article in Journal
Quasi-Isometric Mesh Parameterization Using Heat-Based Geodesics and Poisson Surface Fills
Next Article in Special Issue
Complete Ensemble Empirical Mode Decomposition on FPGA for Condition Monitoring of Broken Bars in Induction Motors
Previous Article in Journal
Quantum Integral Inequalities of Simpson-Type for Strongly Preinvex Functions
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Development of Public Key Cryptographic Algorithm Using Matrix Pattern for Tele-Ultrasound Applications

1
Department of Applied Mathematics, Kumoh National Institute of Technology, Gumi 39177, Korea
2
Department of Medical IT Convergence Engineering, Kumoh National Institute of Technology, Gumi 39253, Korea
*
Author to whom correspondence should be addressed.
Submission received: 3 August 2019 / Revised: 13 August 2019 / Accepted: 13 August 2019 / Published: 17 August 2019
(This article belongs to the Special Issue Information Theory, Cryptography, Randomness and Statistical Modeling)

Abstract

:
A novel public key cryptographic algorithm using a matrix pattern is developed to improve encrypting strength. Compared to the Rivest–Sharmir–Adleman (RSA) and Elliptic Curve Cryptography (ECC) algorithms, our proposed algorithm has superior encrypting strength due to several unknown quantities and one additional sub-equation during the encrypting process. Our proposed algorithm also provides a faster encoding/decoding speed when the patient’s images for tele-ultrasound applications are transmitted/received, compared to the RSA and ECC encrypting algorithms, because it encodes/decodes the plain memory block by simple addition and multiplication operations of n terms. However, the RSA and ECC algorithms encode/decode each memory block using complex mathematical exponentiation and congruence. To implement encrypting algorithms for tele-ultrasound applications, a streaming server was constructed to transmit the images to the systems using ultrasound machines. Using the obtained ultrasound images from a breast phantom, we compared our developed algorithm, utilizing a matrix pattern, with the RSA and ECC algorithms. The elapsed average time for our proposed algorithm is much faster than that for the RSA and ECC algorithms.

1. Introduction

Ultrasound is a non-expensive, non-invasive, and non-ionizing medical imaging modality compared to positron emission tomography (PET), single photo emission tomography (SPECT), and X-ray or computer tomography (CT) [1,2,3,4]. Ultrasound machines have been widely used in a variety of diagnostic areas, such as intravascular, esophageal, and intra-cardiac applications, and therapeutic areas, such as prostate cancer, uterine fibroid treatment, and breast cancer applications [5,6,7,8,9,10]. Ultrasound imaging or therapeutic machines have also been combined with other medical imaging modalities, such as magnetic resonance imaging (MRI), PET, and CT [11,12,13]. However, examination of the ultrasound images is operator-dependent, limited to trained medical specialists only [14,15].
Tele-ultrasound is a specific type of tele-medicine using commercial ultrasound machines [16,17,18]. When ultrasound examinations are performed remotely, the patient’s images obtained from the ultrasound machine are transferred to other computers or terminal devices, including cellular phones and tablet devices, for further diagnosis and treatment [16]. Over the past 10 years, tele-ultrasound research has been widely involved with a variety of clinical applications, such as emergency diagnosis and surgery, intensive care units, and remote education or consultation [18]. For emergency diagnosis, ultrasound machines have recently been used as a diagnostic tool in ambulances for emergency diagnosis cases with non-physicians before patients arrive at the hospital or medical center [16]. In the case of an emergency situation, the patient’s image data, obtained from the ultrasound machine in the ambulance or emergency room, must be transferred though high-speed communication channels to other workstations or computers should a medical clinician need to advise further diagnosis for the immediate treatment and appropriate care of the patient [19].
Due to the development of the semiconductor industry, the manufacturing and fabrication costs of the application-specific integrated circuit (ASIC), one of the main components of the portable ultrasound scanner, have reduced [20,21,22]. Therefore, for intensive care applications, portable ultrasound scanners, particularly, have been used to check the chests and abdomens of severely-injured patients or children in emergency departments [17,23]. Remotely monitoring patients’ conditions with portable ultrasound scanners provides real-time guidance for non-physicians through the acquisition of high-quality images [24]. An example of a remote consultation application is the focused assessment sonography for trauma (FAST) exam, operated by non-physicians, which has been utilized to check the free intraperitoneal fluid in the abdomen area [25,26]. Therefore, an accurate consultation from a primary doctor must be performed remotely in hospitals. By utilizing the FAST exam remotely, clinicians can estimate the suspected abdomen area and may reduce any intra-abdominal bleeding in the liver or cardiac area for the emergent situation before patients arrive at hospitals [27].
There are security issues when transferring and accessing patients’ data for tele-ultrasound applications [28,29]. Recently, research has increased into technological approaches concerning the security issues that surround the transmission and sharing of medical imaging data, as well as into the development of tele-ultrasound applications [29]. Cryptographic algorithms for the encryption of medical images in the tele-ultrasound areas are one of the fundamental mechanisms used for patient confidentiality. A Kobayasi encrypting algorithm was introduced to extract the patients’ images and security data for tele-medicine applications [30]. However, this encryption must extract the pixel data and security data together to achieve the appropriate algorithms. Double chaotic layer encryption was proposed for electroencephalograms (EEG), tele-medicine applications, which are effective for low-frequency and low-size EEG data [31]. A cryptosystem based on the chaotic theory was proposed for large data tele-ophthalmology applications and requires the production of pseudorandom sequences and a highly-uniform histogram together [32]. The RSA algorithm, with 2-D discrete wavelet transform watermarking procedures, was utilized for MRI, CT, and ultrasound medical images [33]. However, these methods require the extraction of patients’ image data with the help of a private key in the wavelet domain and, hence, require a large database and wavelet domain conversion process. Owing to its higher security, elliptic curve cryptography (ECC) was used in wireless healthcare systems for ultrasound machines instead of the RSA algorithms [34]. There are many encrypting algorithms for tele-medicine applications, including tele-ultrasound applications. However, our developed public key cryptographic algorithm using a matrix pattern may have a strong encrypting capability with a faster transmit speed.
Digital imaging and communication in medicine (DICOM) is a standard of transmitting medical images which are protected by digital signature algorithms and watermarking, both of which are security mechanisms for medical image protection [35]. However, there are many terminal devices for tele-ultrasound applications, such as cellular phones, personal digital assistants, tablets, and readers. These terminal devices favor the use of other image formats, such as the tagged image file format (TIFF), graphics interchange format (GIF), portable network graphics (PNG), joint photographic experts group (JPEG) and JPEG-2000, independent JPEG (IJG), and Lempel–Ziv–Welch (LZW), because they have limited data spaces and memory for efficient data transmission [16,36]. In other words, it is essential that medical image transmission is compressed and encrypted. Therefore, our system structure for tele-ultrasound applications must be tested using one of these compressed image formats to demonstrate its encoding/decoding capabilities.
Figure 1 shows the flow chart of the proposed tele-ultrasound system with commercial ultrasound systems. The patients’ DICOM or BMP images, obtained from the ultrasound system, are stored in a web server, then the encoding JPEG process is performed in the transmission system. The encoded JPEG images are then transmitted through high-speed communication channels, such as Wi-Fi channels, to the receiving system to de-code the compressed images.
This paper is structured as follows. In Section II, we describe how to construct the RSA and ECC algorithms and prove the algorithms mathematically. In Section III, we describe how to construct our proposed algorithm and prove the algorithm mathematically. The proposed algorithm introduced in this section is novel and it is obtained by the improvement of public key cryptosystem and vector orthogonality. In Section IV, we show the measurement and comparison experimental results of our proposed algorithm with other algorithms to evaluate the encrypting strength and the encoding/decoding speed of each encrypting algorithm. Section V provides the concluding remarks of this study.

2. Preliminary

We used the basic theory of Euler’s totient function, Euler’s theorem, and Euclid’s theorem for constructing the cryptographic algorithms [37,38]. Euler’s totient function is defined below [39]. Euclid’s theorem can be expressed as a linear combination of the integers [40].

2.1. RSA Algorithm

The RSA algorithm is a famous cryptographic algorithm used by modern computers and communications to encrypt and decrypt messages [41]. It is a kind of asymmetric and public key cryptographic algorithm based on number theories [42]. The RSA algorithm is derived from Euler’s totient function, Euler’s theorem, and Euclid’s theorem [43]. For any natural number n, Euler’s totient function symbol is Φ(n), which refers to the number of positive integers that are less than n and coprime with n. For the RSA algorithm, factorization of composite numbers that comprise sufficiently large two prime numbers is too difficult. The key generation and the encoding and decoding steps for the RSA algorithm are described as follows [44].

2.1.1. Key Generation Step

(A)
Randomly choose two prime number integers p and q,
(p, q) = 1,
where (p, q) is the greatest common divisor of p and q.
(B)
Compute n = p × q, where n is used as modulo for both the public and private key.
(C)
Compute Euler’s function Φ(n) using the two prime numbers p and q.
Φ(n) = Φ (pq) = Φ(p) ∙ Φ(q) = (p − 1) ∙ (q − 1).
(D)
Choose an integer e such that
(Φ(n), e) = 1,
where 1 < e < Φ(n).
(E)
Since (Φ(n), (e)=1 by Equation (3), there exist integers d and t such that ed + Φ(n)t = 1. Thus, we can compute d by using Euclid’s theorem so that the product of e and d is as follows:
ed ≡ 1 (mod Φ(n)).
(F)
Select the integers n and e as the public key, then, select the integers p, q, and d as the private key.

2.1.2. Encoding Step

(A)
M is a separated memory block which is stored into the M1, M2, …, Mn such that it represents a value in the range of 1 to n.
M= (M1, M2, …, Mn).
(B)
Encode to cipher block using the public key n and e to obtain Mi:
M i e C i ( mod   n ) ,
where i = 1, 2, ….

2.1.3. Decoding Step

(A)
The cipher block Ci is decrypted into Mi.
(B)
Decode to plain block using the key p, q, and d.
C i d M i ( mod   n ) .

2.2. Elliptic Curve Cryptographic Algorithm

The elliptic curve cryptography (ECC) system is based on a discrete logarithm problem of finite fields defined on the elliptic curve group and is a public key cryptographic algorithm proposed independently by Miller and Koblitz in 1985 [45]. This algorithm has been intensively researched for number theories and algebraic geometry fields for 150 years and was also used to prove Fermat’s last theorem [46]. Recently, the ECC theory has been used for factorization, primality test, and public key cryptographic algorithms, which are the basic crypto-system [37]. The elliptic curve on a finite field is a set such that
E = { ( x , y ) F × F |   y 2 = x 3 + a x + b } ,
where E is a set of the point (x, y) that satisfies the following equation: y2 = x3 + ax + b. However, the characteristics of a finite field F are assumed as over 0 or 4. If the multiple root of the equation y2 = x3 + ax + b does not exist, then
4a3 + 27b2 ≠ 0.
In the case of Equation (9), the sum of the set is the following: E ( F ) = E O , where the set E and infinite origin O are to the commutative group, as shown in Equations (10) and (11). We also call the E(F) a group over elliptic curve. An additional theorem of a group over elliptic curve E(F) is described below.
P + O = O + P = P,
where ∃PE(F).
In Equation (10), P is a point on the E and the O is an identity element to satisfy the commutative group.
(x, y) + (x, −y) = 0, i.e., −P = (x, −y),
where P = (x, y) ∈ E(F).
P = (x, y) is a point on the symmetry curve E. In the case: PQ, QO, Q ≠ −P
(2) PQ,
Point K is an intersection point of P Q ¯ and E. The symmetry point K is defined to be P + Q.
(ii) P = Q,
Point K is an intersection point tangent to P and E. The symmetry point K is defined to be P + Q.
Figure 2 explains the elliptic curve. Let Equation (12) be the equation of the line through the points P and Q.
y = αx + β,
α = (y2y1)/(x2x1),
β = y1αx1,
(αx + β)2 = x3 + ax + b.
Using Equations (8) and (12), we can obtain Equations (13), (14), and (15). Therefore, we can obtain the three valuables, x1, x2, and x3, in Equation (16).
x3 = α2x1x2.
In addition, point (x3, y3) is on the straight line in Equation (12) such that we can obtain Equation (17).
y3 = αx3 + (y1αx1) = y1 + α(x3x1).
Therefore, from (16) and (17), the coordinates (x3, y3) of P + Q can be represented by Equations (18) and (19).
x 3 = ( y 2 y 1 x 2 x 1 ) 2 x 1 x 2 ,
y 3 = y 1 + ( y 2 y 1 x 2 x 1 ) ( x 1 x 3 ) .
The key generation and the encoding and decoding steps for the ECC algorithm are described as follows [47].

2.2.1. Key Generation Step

(A)
Select an elliptic curve group E(F) of a finite field F and select a maximum characteristic element P of E(F).
(B)
Select any integer α Z and calculate the element Q.
Q = αP.
(C)
Select (F, E(F)), elements P and Q as a public key, then select an integer α as a private key.

2.2.2. Encoding Step

(A)
Prepare a plain memory block for the encoding of E(F).
(B)
Select any integer k ∈ Z and encode the plain memory block M to cipher like a (C1, C2).
C1 = kP, C2 = M + KQ.

2.2.3. Decoding Step

(A)
Decode the cipher block.
C2αC1 = (M + KQ) − α(kP) = (M + kQ) − k Q = M.
The security of modern ECC depends on the intractability of determining α from Q = α P given known values of Q and P if α is sufficiently large (α ≥ 500). This is because the addition of two points on an elliptic curve (or the addition of one point to itself) yields a third point on the elliptic curve whose location has no obvious relationship to the locations of the first two, and repeating this many times over yields a point αP that may be essentially anywhere.

3. Proposed Algorithm

The proposed algorithm uses an n × n matrix, three pairs of private/public keys, and a salt matrix that makes it quite difficult to find the private keys [48]. The strength of the proposed algorithm is given by the cipher changing by the salt matrix every encoding step.

3.1. Key Generation Algorithm

(A)
Select a positive integer n and select the 1 × n matrix A to use as a first private key. The matrix A is a super-increasing sequence [48,49].
A = (a1, a2, …, an),
where a1, a2, …, an are positive integers, such that we can obtain
a i > j = 1 i 1 a j ,   f o r   I =   2 , , n .
(B)
Select a positive integer m such that
(a1 + a2 + …, an) < m,
where m is used as a modulus of congruence.
(C)
Select a 1 × n matrix K in Zm to use as a second private key.
K = (k1, k2, …, kn),
where Z m = { 0 , 1 , 2 , , m 1 } is the least complete residue class modulo m.
(D)
Select Si (1 ≤ in) in Zm such that
(k1S1 + k2S2 + … + knSn) ≡ O (mod m),
where ki (1 ≤ In) are the integers selected in (C).
(E)
S is described as an n × n matrix to use as a first public key.
S = [ s 1 s 1 s 1 s 2 s 2 s 2 . . . s n s n s n ] ,
where Si (1 ≤ in) are the integers selected in (D).
(F)
Select an n × n matrix B in Zm to use as a second public key such that
KB ≡ (a1, a2, …, an) (mod m),
where ai and Si (1 ≤ in) are the integers selected in (A) and (C), respectively.
(G)
Use as public keys n, m, S, and B.

3.2. Encoding Algorithm

(A)
Select an n × n random matrix P to use the element pij as a salt:
P = (Pij),
where pijZm, 1≤ i, jn.
(B)
The plain memory block M to binary memory block:
M = (m1, m2, …, mn),
where m i { 0 ,   1 } , j = 1,2, …, n.
(C)
Encoding the plain memory block M:
(SP + B) × MTCT (mod m),
where C is a cipher block, S is a matrix using Equation (27), B is a matrix using Equation (28), P is a matrix using Equation (29), and MT and CT are matrix transforms.

3.3. Decoding Algorithm

(A)
Find a positive integer α such that
KCT ≡ α (mod m),
where α ≡ (k1m1 + k2m2 + … + knmn) (mod m). Notice that α ≡ (α 1m1 + α 2m2 + … + α nmn) (mod m).
(B)
Find a plain memory block.
m n = { 0   :   α   <   a n 1   :    α     a n     a n d     m i   =   { 0   :   α     j = i + 1 n a j m j   <   a i 1   :   α     j = i + 1 n a j m j     a i ,   ( i = 1 , 2 , ,   n 1 )
According to the conditions, Deffuant models propose how to decide the threshold of the opinion in the social networks [50,51]. However, this paper describes how to decide the plain memory block value according to the conditions.
<Example of proposed algorithm>
  • Key Generation Step
    Let n = 4, the super-increasing sequence A   =   ( 1 ,   3 ,   5 ,   15 ) and let m = 30. Select
    K   =   [ 2 8 3 11 ]   , S   =   [ 1 1 1 1 1 1 1 1 2 2 2 2 4 4 4 4 ] ,   a n d   B =   [ 0 4 1 2 0 1 0 1 3 2 1 1 2 1 0 0 ] .
    Then, KSO (mod 30) and KBA (mod 30).
  • Public Keys: n, m, S, B and Private Keys: A, K
  • Encoding Step
    Let the plain text.
    M ≡ [m1 m2 m3 m4] = [1 0 1 1].
    Choose any 4 × 4 matrix
    P   =   [ 5 1 3 1 1 0 1 4 3 1 0 3 4 1 2 7 ] .
    The plain text M is encrypted by computing.
    ( S P + B ) [ 1 0 1 1 ] [ 7 5 13 18 ] ( mod   30 )
    The cipher text is C = [7 5 13 18].
  • Decoding Step
    Compute
    K C T = [ 2 8 3 11 ]   [ 7 5 13 8 ] = 291 21   ( mod   30 )
    This yields m1 + 3m2 + 5m3 + 15m4 = 21. Therefore, the cipher text C is decrypted as
    [ m 1   m 2   m 3   m 4 ]   =   [ 1   0   1   1 ] .
Table 1 shows the decoding procedure for the proposed public key cryptographic algorithm process using matrix patterns. Using Equation (31) and private key A, the cipher memory is decoded into matrix R. The initial α value is generated from Equation (32). After determination of sumA, which satisfies α value from the elements of the matrix K, we store 1 or 0 as a result of matrix R using Equation (33). If the row and column size of the matrix R reach zero, the decoding process is complete. The value “α” is the same valuable in Equation (32). “Alpha-sumk” means that alpha minus sumK. “row and column” are a row and a column of the matrix A or R, respectively.
We prove the proposed algorithm mathematically as shown below from Equation (34) to Equation (38).
Figure 3 explains the sequence diagram regarding the key management of this study. To send the coded message, Alice (sender) and Bob (receiver) are selected. Alice generates the super-increasing subsequence matrix A and modulo m using Equations (23) and (24), then, the S and B public key using Equations (26), (27), and (28) to pass them to Bob. Bob generates matrix S’ and B’, respectively, based on the size of n and modulo m, and exchanges the public keys between Alice and Bob. Alice generates a random matrix P to send a message M, encoding the message using Equation (31), then, sends that to Bob. Bob decodes the received encrypted message using Equation (32).

3.4. Proof of the Algorithm

(A)
We already know private key K when using Equation (25), cipher CT, and Equation (31).
α ≡ KCT (mod m).
(B)
We can transfer CT to Equation (37) when using Equation (31).
C T {   ( S P + B ) × M T   } ( mod   m ) .
(C)
We can calculate Equation (36).
K {   ( S P + B ) × M T   }   { ( K S ) × P M T + ( K B ) × M T } ( mod   m ) .
(D)
(KS) equals to the matrix O when using Equation (26). Therefore, we obtain the following equation:
{ O + ( K B ) × M T } ( K B ) × M T ( mod   m ) .
(E)
(KB) represents Equation (38) when using Equation (28).
( K B ) × M T ( a 1 , a 2 , , a n ) ( m 1 m 2 . . . m n ) ( mod   m ) .
(F)
In Equation (39), we re-write Equation (32) to Equation (38).
α K C T K {   ( S P + B ) × M T   } ( K S ) × P M T + ( K B ) × M T O + ( K B ) × M T ( K B ) × M T ( a 1 , a 2 , , a n ) ( m 1 m 2 . . . m n ) ( a 1 m 1 + a 2 m 2 + a n m n )   ( mod   m )
As most of the public key cryptographic algorithm uses the same key in its encryption process, it is vulnerable to attacks when analysis of character frequency is used [52]. However, the public key cryptographic algorithm proposed in this paper is much safer from these attack types because users select the matrix at random aside from the public key when they encrypt plain memory. Figure 4 explains the differences between the RSA, ECC, and the proposed algorithms. Compared to the RSA and ECC algorithms, our proposed algorithm used an additional matrix pattern, which could increase the strength of the cryptographic capability as different codes can be created for every round compared to the RSA and ECC algorithms, which make the same codes.

4. Results and Discussion

For the case of the RSA algorithm, there is a disadvantage that the same cipher text can be generated in all rounds if the plain text is encoded with the same pattern. However, for the case of our proposed algorithms, the matrix P, defined in Equation (28), can be generated randomly in all rounds of encoding time when using Equation (31). Therefore, there is an advantage that different cipher texts can be generated each time when the plain text of the same pattern is encoded with same public key.
Tele-medical transmission applications have been used to verify capability of the encrypting algorithms using the time to find the private keys [53,54]. The probability P of finding the private keys A and K from the proposed algorithm can be calculated by Equation (40). The probability of finding each element in private key A in Equation (23) is used in Equation (40).
P = 1 i = 0 n 1 m 2 i ,
where any integer n > 1 and m > 1.
For example, the calculated probability to find matrix A if integers n = 8 and m = 1024 are 1/17,592,186,044,416. It will take 557,844 years to find one matrix per second. For the larger integer m, the probability is further reduced.
The private key K can be calculated as a matrix multiplication with the public key S using Equation (26). However, it is impossible to find private keys for calculation because there are eight unknown quantities and one additional subequation. For the RSA algorithm, it takes a long time to factorize the prime numbers for a composite number over 100 digits [44]. Recent research has shown that the RSA cryptosystem is rapidly breaking down when using quantum computers [55]. However, our proposed algorithm increases encryption strength using private key A, which is less likely to be found, and private key K, which cannot be computed mathematically, at the same time. Equation (41) describes the public key and private key generation algorithm of the ECC:
y = gx (mod p),
where any integer x > 1, g > 1, and p are prime.
We will describe how to perform the experimental results to estimate the encrypting strength.
RSA: We measured the elapsed fractional decomposition of the composite number 10,967,909 against the prime number 4,613,169.
ECC: The p and x prime numbers in Equation (31) are fixed to 3461, 3169, and 1024. Then, the x prime number that satisfies a private key y is sequentially retrieved to measure the elapsed time.
Proposed: After we set the matrix A for the private key (16,644; 34,543; 205,415; 307,306; 702,750; 1,388,246; 2,794,512; and 5,504,370) and set modulo m to 10,955,976 by Equation (24), we measured the time to find the matrix elements searched for each element by Equation (33). The time complexity of encoding is O (N × log m) in Equation (31) and the space complexity of encoding is 4 × N2 from the N × N matrix S, P, B, and A.
In Table 2, the average elapsed time for searching the private key when using our proposed algorithm (42.41753 ms) is much longer than those using the RSA and ECC encrypting algorithms, respectively (2.80888 and 0.72106 ms). As a result, we observed that the search speed of the proposed algorithm using a small value is much longer than that of the RSA and ECC algorithms, such that the stability of the key is experimentally confirmed.
Figure 5 shows the elapsed time to search the private key versus the number of experiments to compare the encrypting strength for the RSA, ECC, and proposed algorithms. To show the encrypting strength consistency for the algorithms, we repeated the test 10 times.
The RSA algorithm searches the private key based on mathematical theory, therefore, it takes a long time to decompose smaller numbers [44]. The ECC and proposed algorithms are the method of probability to find each key element [47]. For the case of the ECC and proposed algorithms, we consider the characteristics of this cryptographic algorithm, which assumes that the private key was known in advance. Therefore, we performed experiments with similar values in a range smaller than the composite number used for the RSA.
To apply the encrypting algorithms for tele-ultrasound applications, the ultrasound images of the multimodal breast phantom (Model 073, CIRS Inc., Norfolk, VA, USA) were obtained using a commercial ultrasound machine (E-cube 12R, Alpinion Technology Inc., Seoul, South Korea). Figure 6 shows the setup of the commercial ultrasound machine with the breast phantom and its image.
In the experiment, libjpeg 9b version is used [56]. Using the libjpeg process, DICOM images were obtained from the commercial ultrasound machine with the breast phantom and were converted to JPEG images to reduce the image data size, because the tele-ultrasound applications have limited bandwidths when using wireless channels, such as Wi-Fi [29]. Afterwards, the images were tested using the RSA, ECC, and the proposed algorithms to check the encoding/decoding speeds, as communication speed is an important merit for tele-ultrasound applications [16]. In this paper, we used an RSA and ECC algorithm in the OpenSSL cryptographic library, which is an open license [56]. A Linux stand-alone system composed of an Intel core i5 3.20 GHz, 6144 KB cache size, and 8 GB memory was used to test the encrypting strength capability of the RSA, ECC, and our proposed algorithms. Figure 7 shows the encoding/decoding procedure of the RSA, ECC, and the proposed algorithms. The procedure details are described as below.
  • The DICOM image is converted to a JPEG image that is then reduced in size.
  • The JPEG image splits pixel data into plain memory by the encoder.
  • The encoding procedure performs the encoding process from the pixel data to the encoded data.
  • The decoding procedure performs the decoding process from the encoded data to the decoded data.
  • A JPEG image is produced by the decoder.
Table 3 shows the measured elapsed time to check the encoding speed when using the RSA, ECC, and our proposed algorithms. To demonstrate the consistency in the algorithms, we repeated the test 10 times. The average elapsed time (0.0195 ms) when using our proposed algorithm is much faster than those when using the RSA and ECC encrypting algorithms (4.4311 ms and 7.3931 ms, respectively). Table 3 shows the measured elapsed time to check the encoding speed when using the RSA, ECC, and our proposed algorithms. To demonstrate the consistency in the algorithms, we repeated the test 10 times. The average elapsed time (0.0195 ms) when using our proposed algorithm is much faster than those when using the RSA and ECC encrypting algorithms (4.4311 ms and 7.3931 ms, respectively).
Figure 8 shows the elapsed time to the check encoding speeds when using the RSA, ECC, and our proposed algorithms. To show consistency in the encrypting algorithms, we repeated the test 10 times.
Table 4 shows the measured elapsed time to check the decoding speed when using the RSA, ECC, and our proposed algorithms. The average elapsed time for the decoding speed when using our proposed algorithm (0.0184 ms) is much faster than those when using the RSA and ECC encrypting algorithms (4.4316 ms and 7.3891 ms, respectively). Therefore, we can conclude that our proposed public key cryptographic algorithm using a matrix pattern could outperform, regarding the encoding and decoding speeds, compared to the RSA and ECC algorithms.
Figure 9 shows the elapsed time to check the decoding speeds of the RSA, ECC, and our proposed algorithms.
In this paper, we did not address the entire information security system for the ultrasound machines. Distributed multi-agent is a technique for securing the information integrity held by each agent. A security system mechanism using distributed multi-agent was recently proposed [57,58]. A strong security system can be constructed with an encryption algorithm with distributed multi-agent security system technology.

5. Conclusions

In addition to the hardware development for ultrasound machines, wireless internet technology development will boost the usage of tele-ultrasound applications because tele-ultrasound requires a fast internet access speed for immediate diagnosis and remote treatment. For our proposed algorithm, it is impossible to find the private keys for the calculation because there are 8 unknown quantities and one additional subequation. The average elapsed time to search the private key when using our proposed algorithm (42.41753 ms) is much longer than those when using RSA and ECC encrypting algorithms, respectively (2.80888 ms and 0.72106 ms). Therefore, our proposed algorithm shows more difficulty in the search of private keys such that it has a superior performance for the encrypting strength of the image data compared to the RSA and ECC algorithms, which are widely used for tele-ultrasound applications. In addition, our proposed algorithm encodes/decodes the plain memory block by the addition and multiplication of n terms. However, the RSA and ECC encode/decode each memory block with complex mathematical exponentiation and congruence. The average elapsed encoding time (0.0195 ms) for our proposed algorithm is much faster than the RSA and ECC algorithms (4.4311 ms and 7.3931 ms, respectively). The average elapsed decoding time (0.0184 ms) for our proposed algorithm is also much faster than the RSA and ECC algorithms (4.4316 ms and 7.3891 ms, respectively). As a result, our proposed algorithm encoding/decoding speed is faster than the RSA and ECC encoding/decoding speeds. Therefore, our proposed public key cryptographic algorithm using a matrix pattern could be an alternative solution for tele-ultrasound applications due to its superior encrypting strength and faster encoding/decoding time. The overall security system for medical information systems, such as PACS, is considered to be a stable system if a cryptographic algorithm is applied.

Author Contributions

Conceptualization, S.-H.S., W.-S.Y., and H.C.; methodology, S.-H.S., W.-S.Y., and H.C.; software, S.-H.S.; validation, S.-H.S., W.-S.Y.; data curation, S.-H.S., W.-S.Y., and H.C.; writing—original draft preparation, S.-H.S., W.-S.Y., and H.C.

Funding

This research was financially supported by the Ministry of Small and Medium-sized Enterprises(SMEs) and Startups(MSS), Korea, under the “Regional Enterprise linked with National-Innovation-Cluster Development Program(R&D, P0009964)” supervised by the Korea Institute for Advancement of Technology(KIAT).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Postema, M. Fundamentals of Medical Ultrasound; Taylor and Francis: New York, NJ, USA, 2011. [Google Scholar]
  2. Choi, H.; Yeom, J.-Y.; Ryu, J.-M. Development of a Multiwavelength Visible-Range-Supported Opto–Ultrasound Instrument Using a Light-Emitting Diode and Ultrasound Transducer. Sensors 2018, 18, 3324. [Google Scholar] [CrossRef] [PubMed]
  3. Choi, H.; Ryu, J.; Kim, J. A Novel Fisheye-Lens-Based Photoacoustic System. Sensors 2016, 16, 2185. [Google Scholar] [CrossRef] [PubMed]
  4. Choi, H.; Ryu, J.-M.; Yeom, J.-Y. Development of a Double-Gauss Lens Based Setup for Optoacoustic Applications. Sensors 2017, 17, 496. [Google Scholar] [CrossRef] [PubMed]
  5. Choe, S.-W.; Choi, H. Suppression Technique of HeLa Cell Proliferation Using Ultrasonic Power Amplifiers Integrated with a Series-Diode Linearizer. Sensors 2018, 18, 4248. [Google Scholar] [CrossRef] [PubMed]
  6. Choi, H.; Woo, P.C.; Yeom, J.-Y.; Yoon, C. Power MOSFET Linearizer of a High-Voltage Power Amplifier for High-Frequency Pulse-Echo Instrumentation. Sensors 2017, 17, 764. [Google Scholar] [CrossRef] [PubMed]
  7. Jeong, J.J.; Choi, H. An impedance measurement system for piezoelectric array element transducers. Measurement 2017, 97, 138–144. [Google Scholar] [CrossRef]
  8. Choi, H. Prelinearized Class-B Power Amplifier for Piezoelectric Transducers and Portable Ultrasound Systems. Sensors 2019, 19, 287. [Google Scholar] [CrossRef]
  9. Choi, H.; Choe, S.-W. Acoustic Stimulation by Shunt-Diode Pre-Linearizer Using Very High Frequency Piezoelectric Transducer for Cancer Therapeutics. Sensors 2019, 19, 357. [Google Scholar] [CrossRef]
  10. Choi, H.; Park, C.; Kim, J.; Jung, H. Bias-Voltage Stabilizer for HVHF Amplifiers in VHF Pulse-Echo Measurement Systems. Sensors 2017, 17, 2425. [Google Scholar] [CrossRef]
  11. Grüll, H.; Langereis, S. Hyperthermia-triggered drug delivery from temperature-sensitive liposomes using MRI-guided high intensity focused ultrasound. J. Control. Release 2012, 161, 317–327. [Google Scholar] [CrossRef]
  12. Jolesz, F.A. MRI-guided focused ultrasound surgery. Annu. Rev. Med. 2009, 60, 417–430. [Google Scholar] [CrossRef] [PubMed]
  13. Szabo, T.L. Diagnostic Ultrasound Imaging: Inside Out; Elsevier Academic Press: London, UK, 2013. [Google Scholar]
  14. Choi, H.; Choe, S.-W. Therapeutic Effect Enhancement by Dual-Bias High-Voltage Circuit of Transmit Amplifier for Immersion Ultrasound Transducer Applications. Sensors 2018, 18, 4210. [Google Scholar] [CrossRef] [PubMed]
  15. Hoskins, P.R.; Martin, K.; Thrush, A. Diagnostic Ultrasound: Physics and Equipment; Cambridge University Press: Cambridge, UK, 2010. [Google Scholar]
  16. Daniels, J.M.; Hoppmann, R.A. Practical Point-of-Care Medical Ultrasound; Springer: New York, NJ, USA, 2016. [Google Scholar]
  17. Su, M.-J.; Ma, H.-M.; Ko, C.-I.; Chiang, W.-C.; Yang, C.-W.; Chen, S.-J.; Chen, R.; Chen, H.-S. Application of tele-ultrasound in emergency medical services. Telemed. E Health 2008, 14, 816–824. [Google Scholar] [CrossRef] [PubMed]
  18. Moore, C.L.; Copel, J.A. Point-of-care Ultrasonography. N. Engl. J. Med. 2011, 364, 749–757. [Google Scholar] [CrossRef] [PubMed]
  19. David Cone, J.H.B.; Theodore, R.; Delbridge, J.; Brent, M. Emergency Medical Services: Clinical Practice and Systems Oversight; Wiley Online Library: Hoboken, NJ, USA, 2015. [Google Scholar]
  20. Lee, T.H. The Design of CMOS Radio-Frequency Integrated Circuits; Cambridge University Press: Cambridge, UK, 2006. [Google Scholar]
  21. Choi, H. Class-C Linearized Amplifier for Portable Ultrasound Instruments. Sensors 2019, 19, 898. [Google Scholar] [CrossRef]
  22. Choi, H.; Yoon, C.; Yeom, J.-Y. A Wideband High-Voltage Power Amplifier Post-Linearizer for Medical Ultrasound Transducers. Appl. Sci. 2017, 7, 354. [Google Scholar] [CrossRef]
  23. Zennaro, F.; Neri, E.; Nappi, F.; Grosso, D.; Triunfo, R.; Cabras, F.; Frexia, F.; Norbedo, S.; Guastalla, P.; Gregori, M. Real-Time Tele-Mentored Low Cost “Point-of-Care US” in the Hands of Paediatricians in the Emergency Department: Diagnostic Accuracy Compared to Expert Radiologists. PLoS ONE 2016, 11, e0164539. [Google Scholar] [CrossRef]
  24. Levine, A.R.; McCurdy, M.T.; Zubrow, M.T.; Papali, A.; Mallemat, H.A.; Verceles, A.C. Tele-intensivists can instruct non-physicians to acquire high-quality ultrasound images. J. Crit. Care 2015, 30, 871–875. [Google Scholar] [CrossRef]
  25. Brooks, A.; Price, V.; Simms, M. FAST on operational military deployment. Emerg. Med. J. 2005, 22, 263–265. [Google Scholar] [CrossRef]
  26. Wagner, M.S.; Garcia, K.; Martin, D.S. Point-of-care Ultrasound in Aerospace Medicine: Known and Potential Applications. Aviat. Space Environ. Med. 2014, 85, 730–739. [Google Scholar] [CrossRef]
  27. Emery, M.; Flannigan, M. How useful are clinical findings in patients with blunt abdominal trauma? Ann. Emerg. Med. 2014, 63, 463–464. [Google Scholar] [CrossRef]
  28. Kim, C.; Cha, H.; Kang, B.S.; Choi, H.J.; Lim, T.H.; Oh, J. A feasibility study of smartphone-based telesonography for evaluating cardiac dynamic function and diagnosing acute appendicitis with control of the image quality of the transmitted videos. J. Digit. Imaging 2016, 29, 347–356. [Google Scholar] [CrossRef]
  29. Eren, H.; Webster, J.G. Telemedicine and Electronic Medicine; CRC Press: Boca Ration, FL, USA, 2015. [Google Scholar]
  30. Kobayashi, L.O.M.; Furuie, S.S.; Barreto, P.S.L.M. Providing integrity and authenticity in DICOM images: A novel approach. IEEE Trans. Inf. Technol. Biomed. 2009, 13, 582–589. [Google Scholar] [CrossRef]
  31. Murillo-Escobar, M.; Cardoza-Avendaño, L.; López-Gutiérrez, R.; Cruz-Hernández, C. A Double Chaotic Layer Encryption Algorithm for Clinical Signals in Telemedicine. J. Med. Syst. 2017, 41, 59. [Google Scholar] [CrossRef]
  32. Mehta, G.; Dutta, M.K.; Kim, P.S. An Efficient and Lossless Cryptosystem for Security in Tele-Ophthalmology Applications Using Chaotic Theory. Ophthalmology: Breakthroughs in Research and Practice: Breakthroughs in Research and Practice; Information Resources Management Association: Hershey, PA, USA, 2018; Volume 189. [Google Scholar]
  33. Kishore, P.; Venkatram, N.; Sarvya, C.; Reddy, L. Medical Image Watermarking Using RSA Encryption in Wavelet Domain. In Proceedings of the 2014 First International Conference on Networks & Soft Computing (ICNSC2014), Guntur, India, 19–20 August 2014; pp. 258–262. [Google Scholar]
  34. Kanakis, A. Implementations of Wireless and Wired Intelligent Systems for Healthcare with Focus on Diabetes and Ultrasound Applications. Ph.D. Thesis, University of Sheffield, Sheffield, UK, 2013. [Google Scholar]
  35. Huang, H. PACS and Imaging Informatics: Basic Principles and Applications; John Wiley & Sons: Hoboken, NJ, USA, 2011. [Google Scholar]
  36. Slone, R.M.; Muka, E.; Pilgram, T.K. Irreversible JPEG compression of digital chest radiographs for primary interpretation: Assessment of visually lossless threshold. Radiology 2003, 228, 425–429. [Google Scholar] [CrossRef] [PubMed]
  37. Paar, C.; Pelzl, J. Understanding Cryptography: A Textbook for Students and Practitioners; Springer Science & Business Media: New York, NJ, USA, 2009. [Google Scholar]
  38. Strang, G. Differential Equations and Linear Algebra; Wellesley-Cambridge Press: Welleslely, MA, USA, 2014. [Google Scholar]
  39. Lehmer, D. On Euler’s totient function. Bull. Am. Math. Soc. 1932, 38, 745–751. [Google Scholar] [CrossRef]
  40. Hendy, M. Euclid and the fundamental theorem of arithmetic. Hist. Math. 1975, 2, 189–191. [Google Scholar] [CrossRef] [Green Version]
  41. Menezes, A.J.; Katz, J.; Van Oorschot, P.C.; Vanstone, S.A. Handbook of Applied Cryptography; CRC Press: Boca Raton, FL, USA, 1996. [Google Scholar]
  42. Stallings, W. Cryptography and Network Security: Principles and Practice; Pearson Education: London, UK, 2003. [Google Scholar]
  43. Bach, E.; Shallit, J.O. Algorithmic Number Theory: Efficient Algorithms; MIT Press: Cambridge, MA, USA, 1996; Volume 1. [Google Scholar]
  44. Rivest, R.L.; Shamir, A.; Adleman, L. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef]
  45. Hankerson, D.; Menezes, A.J.; Vanstone, S. Guide to Elliptic Curve Cryptography; Springer Science & Business Media: New York, NJ, USA, 2006. [Google Scholar]
  46. Stallings, W. Network Security Essentials: Applications and Standards; Pearson Education: London, UK, 2000. [Google Scholar]
  47. Koblitz, N. Elliptic curve cryptosystems. Math. Comput. 1987, 48, 203–209. [Google Scholar] [CrossRef]
  48. Lenstra, H. Integer programming and cryptography. Math. Intell. 1984, 6, 14–21. [Google Scholar] [CrossRef] [Green Version]
  49. Chor, B.; Rivest, R.L. A knapsack-type public key cryptosystem based on arithmetic in finite fields. IEEE Trans. Inf. Theory 1988, 34, 901–909. [Google Scholar] [CrossRef]
  50. Shang, Y. Deffuant model with general opinion distributions: First impression and critical confidence bound. Complexity 2013, 19, 38–49. [Google Scholar] [CrossRef]
  51. Shang, Y. Deffuant model of opinion formation in one-dimensional multiplex networks. J. Phys. A Math. Theor. 2015, 48, 395101. [Google Scholar] [CrossRef]
  52. Forouzan, B.A.; Mukhopadhyay, D. Cryptography and Network Security (Sie); McGraw-Hill Education: New York, NJ, USA, 2011. [Google Scholar]
  53. Boniface, K.S.; Shokoohi, H.; Smith, E.R.; Scantlebury, K. Tele-ultrasound and paramedics: real-time remote physician guidance of the Focused Assessment with Sonography for Trauma examination. Am. J. Emerg. Med. 2011, 29, 477–481. [Google Scholar] [CrossRef]
  54. Al-Haj, A.; Abandah, G.; Hussein, N. Crypto-based algorithms for secured medical image transmission. IET Inf. Secur. 2015, 9, 365–373. [Google Scholar] [CrossRef]
  55. Bernstein, D.J. Introduction to Post-Quantum Cryptography; Springer: Berlin/Heidelberg, Germany, 2009. [Google Scholar]
  56. OpenSSL Cryptography and SSL/TLS Tookit. Available online: https://www.openssl.org/ (accessed on 16 April 2018).
  57. Shang, Y. Resilient multiscale coordination control against adversarial nodes. Energies 2018, 11, 1844. [Google Scholar] [CrossRef]
  58. Shang, Y. Resilient consensus of switched multi-agent systems. Syst. Control Lett. 2018, 122, 12–18. [Google Scholar] [CrossRef]
Figure 1. Flow chart of proposed tele-ultrasound system methodology.
Figure 1. Flow chart of proposed tele-ultrasound system methodology.
Mathematics 07 00752 g001
Figure 2. Addition of a group over elliptic curve.
Figure 2. Addition of a group over elliptic curve.
Mathematics 07 00752 g002
Figure 3. Key generation, exchange, and message encoding/decoding sequence.
Figure 3. Key generation, exchange, and message encoding/decoding sequence.
Mathematics 07 00752 g003
Figure 4. Encoding processes of (a) RSA and (b) proposed algorithms.
Figure 4. Encoding processes of (a) RSA and (b) proposed algorithms.
Mathematics 07 00752 g004aMathematics 07 00752 g004b
Figure 5. Elapsed time to find out private key vs. number of experiments to compare encrypting strength when using RSA (yellow color), ECC (light blue color), and proposed algorithms (purple color).
Figure 5. Elapsed time to find out private key vs. number of experiments to compare encrypting strength when using RSA (yellow color), ECC (light blue color), and proposed algorithms (purple color).
Mathematics 07 00752 g005
Figure 6. (a) Commercial ultrasound machine with breast phantom and (b) breast phantom image.
Figure 6. (a) Commercial ultrasound machine with breast phantom and (b) breast phantom image.
Mathematics 07 00752 g006
Figure 7. Block diagram for encoding/decoding procedures of the RSA/ECC/proposed algorithms.
Figure 7. Block diagram for encoding/decoding procedures of the RSA/ECC/proposed algorithms.
Mathematics 07 00752 g007
Figure 8. Elapsed time vs. number of experiments to compare encoding speeds when using RSA (green color), ECC (yellow color), and proposed algorithms (red color).
Figure 8. Elapsed time vs. number of experiments to compare encoding speeds when using RSA (green color), ECC (yellow color), and proposed algorithms (red color).
Mathematics 07 00752 g008
Figure 9. Elapsed time vs. number of experiments to compare decoding speeds when using RSA (green color), ECC (yellow color), and proposed algorithms (red color).
Figure 9. Elapsed time vs. number of experiments to compare decoding speeds when using RSA (green color), ECC (yellow color), and proposed algorithms (red color).
Mathematics 07 00752 g009
Table 1. Decoding procedure of proposed algorithm.
Table 1. Decoding procedure of proposed algorithm.
Algorithm. Find a plain memory
INPUT: matrix A, α
OUTPUT: matrix R
alpha = α
procedure Decoding()
WHILE row > 0 DO
  WHILE column > 0 DO
   Set sumA to sum from A(1,1) to A(row, column)
   IF alpha >= sumK THEN
    Compute alpha as alpha - sumK
    Set R(row,column) to 1
   ELSE
    Set R(row,column) to 0
   ENDIF
   Compute column as column - 1
  ENDWHILE
  Compute row as row - 1
ENDWHILE
RETURN with error code
Table 2. Elapsed time (ms) to find private keys when using RSA, ECC, and the proposed algorithms.
Table 2. Elapsed time (ms) to find private keys when using RSA, ECC, and the proposed algorithms.
Number of ExperimentsRSAECCProposed
12.81010.720942.4272
22.80920.721142.4146
32.81010.721442.4151
42.80780.721942.4147
52.81060.716642.4159
62.80890.721842.4216
72.80360.721242.4183
82.80920.722242.4131
92.80950.721842.4194
102.80980.721742.4154
Table 3. Elapsed time (ms) to check the encoding speed when using the RSA, ECC, and proposed algorithms.
Table 3. Elapsed time (ms) to check the encoding speed when using the RSA, ECC, and proposed algorithms.
Number of ExperimentsRSAECCProposed
14.43047.36060.0185
24.43157.38620.0184
34.43207.39590.0185
44.43157.37790.0185
54.43147.41650.0185
64.43177.42200.0184
74.43167.40050.0184
84.43067.41540.0299
94.43017.37900.0183
104.43097.37730.0183
Table 4. Elapsed time (ms) to check decoding speed when using RSA, ECC, and proposed algorithms.
Table 4. Elapsed time (ms) to check decoding speed when using RSA, ECC, and proposed algorithms.
Number of ExperimentsRSAECCProposed
14.43167.37360.0185
24.43207.38360.0185
34.43097.38500.0184
44.43127.39000.0184
54.43297.42200.0185
64.43157.37900.0185
74.43187.38860.0184
84.43207.38300.0183
94.43187.40700.0187
104.43127.37980.0184

Share and Cite

MDPI and ACS Style

Shin, S.-H.; Yoo, W.-S.; Choi, H. Development of Public Key Cryptographic Algorithm Using Matrix Pattern for Tele-Ultrasound Applications. Mathematics 2019, 7, 752. https://0-doi-org.brum.beds.ac.uk/10.3390/math7080752

AMA Style

Shin S-H, Yoo W-S, Choi H. Development of Public Key Cryptographic Algorithm Using Matrix Pattern for Tele-Ultrasound Applications. Mathematics. 2019; 7(8):752. https://0-doi-org.brum.beds.ac.uk/10.3390/math7080752

Chicago/Turabian Style

Shin, Seung-Hyeok, Won-Sok Yoo, and Hojong Choi. 2019. "Development of Public Key Cryptographic Algorithm Using Matrix Pattern for Tele-Ultrasound Applications" Mathematics 7, no. 8: 752. https://0-doi-org.brum.beds.ac.uk/10.3390/math7080752

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop