## 3 Parallel ARIA Implementation
### Parallel ARIA Implementation on GPU
We found that using shared memory can help improve performance when performing substitution operations with Sbox tables. Additionally, techniques using table expansion to minimize bank conflicts were found to be inefficient when tables cannot be copied by the size of the bank. The performance results suggest that a large number of blocks and threads do not represent high performance. Therefore, it provides performance results so that it can be implemented by setting the appropriate number of blocks and threads according to the implementation environment. We believe that this work will be helpful in parallel implementation of other ciphers on both ARMv8 architectures and GPU. Software, S.E., H.K. ([PERSON]), H.K. ([PERSON]) and M.S. ; Writing--original draft, S.E. ; Writing--review & editing, G.S. ; Supervision, H.S. All authors have read and agreed to the published version of the manuscript. This research was financially supported by Hansung University. The authors declare no conflict of interest. \begin{table}
\begin{tabular}{c c c c c c} \hline \hline
**Memory Type** & **Block** & **Thread** & **Duration (ms)** & **C. Throughput (\%)** & **D. Throughput (\%)** \\ \hline Shared[4][256] & 1024 \(\times\) 32 & 32 & 1.57 & 59.57 & 74.37 \\ Shared[4][256] & 1024 \(\times\) 32 & 64 & 2.24 & 66.16 & 95.84 \\ Shared[4][256] & 1024 \(\times\) 32 & 128 & 4.14 & 62.09 & 98.77 \\ Shared[4][256] & 1024 \(\times\) 32 & 256 & 8.15 & 58.43 & 98.52 \\ Shared[4][256] & 1024 \(\times\) 32 & 512 & 17.09 & 53.38 & 92.14 \\ Shared[4][256] & 1024 \(\times\) 32 & 1024 & 33.25 & 53.74 & 93.82 \\ Shared[8][256] & 1024 \(\times\) 32 & 32 & 2.65 & 47.01 & 50.10 \\ Shared[8][256] & 1024 \(\times\) 32 & 64 & 2.83 & 63.25 & 81.70 \\ Shared[8][256] & 1024 \(\times\) 32 & 128 & 4.48 & 64.33 & 95.72 \\ Shared[8][256] & 1024 \(\times\) 32 & 256 & 8.57 & 59.21 & 96.70 \\ Shared[8][256] & 1024 \(\times\) 32 & 512 & 17.77 & 53.13 & 90.94 \\ Shared[8][256] & 1024 \(\times\) 32 & 1024 & 33.92 & 53.59 & 93.56 \\ Shared[12][256] & 1024 \(\times\) 32 & 32 & 3.96 & 39.31 & 39.31 \\ Shared[12][256] & 1024 \(\times\) 32 & 64 & 3.89 & 54.02 & 63.20 \\ Shared[12][256] & 1024 \(\times\) 32 & 128 & 4.85 & 65.82 & 91.44 \\ Shared[12][256] & 1024 \(\times\) 32 & 256 & 9.16 & 58.77 & 91.87 \\ Shared[12][256] & 1024 \(\times\) 32 & 512 & 18.68 & 52.10 & 86.87 \\ Shared[12][256] & 1024 \(\times\) 32 & 1024 & 34.26 & 53.97 & 93.10 \\ Shared[256][4] & 1024 \(\times\) 32 & 32 & 1.75 & 53.34 & 90.09 \\ Shared[256][4] & 1024 \(\times\) 32 & 64 & 2.54 & 58.25 & 98.45 \\ Shared[256][4] & 1024 \(\times\) 32 & 128 & 4.38 & 58.71 & 99.17 \\ Shared[256][4] & 1024 \(\times\) 32 & 256 & 8.14 & 58.42 & 98.94 \\ Shared[256][4] & 1024 \(\times\) 32 & 512 & 16.57 & 55.14 & 92.80 \\ Shared[256][4] & 1024 \(\times\) 32 & 1024 & 31.81 & 56.15 & 94.11 \\ Shared[256][8] & 1024 \(\times\) 32 & 32 & 4.14 & 30.11 & 81.52 \\ Shared[256][8] & 1024 \(\times\) 32 & 64 & 4.37 & 41.03 & 96.72 \\ Shared[256][8] & 1024 \(\times\) 32 & 128 & 6.06 & 47.62 & 98.51 \\ Shared[256][8] & 1024 \(\times\) 32 & 256 & 9.50 & 53.32 & 98.73 \\ Shared[256][8] & 1024 \(\times\) 32 & 512 & 17.30 & 54.40 & 93.56 \\ Shared[256][8] & 1024 \(\times\) 32 & 1024 & 31.47 & 57.78 & 94.46 \\ Shared[256][12] & 1024 \(\times\) 32 & 32 & 4.46 & 34.90 & 63.39 \\ Shared[256][12] & 1024 \(\times\) 32 & 64 & 4.37 & 48.15 & 85.91 \\ Shared[256][12] & 1024 \(\times\) 32 & 128 & 5.89 & 54.27 & 95.44 \\ Shared[256][12] & 1024 \(\times\) 32 & 256 & 9.93 & 54.18 & 94.59 \\ Shared[256][12] & 1024 \(\times\) 32 & 512 & 18.43 & 52.69 & 90.88 \\ Shared[256][12] & 1024 \(\times\) 32 & 1024 & 33.22 & 55.64 & 94.99 \\ \hline \hline \end{tabular}
\end{table} 
Table 9: Performance of the extended Sbox using shared memory implementation (C.: compute, M.: memory). ## References

* [PERSON] and [PERSON] (2019) [PERSON]; [PERSON]; [PERSON] Fast AES implementation using ARMv8 ASIMD without cryptography extension.