Original Title: A Lightweight Image Cryptosystem for Cloud-Assisted Internet of Things
Source: doi.org/10.3390/app14072808
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ប្រព័ន្ធគ្រីបតូកូដរូបភាពធុនស្រាលសម្រាប់អ៊ីនធឺណិតនៃវត្ថុដែលគាំទ្រដោយក្លោដ

ចំណងជើងដើម៖ A Lightweight Image Cryptosystem for Cloud-Assisted Internet of Things

អ្នកនិពន្ធ៖ Esau Taiwo Oladipupo (The Federal Polytechnic Bida, Nigeria), Oluwakemi Christiana Abikoye (University of Ilorin, Nigeria), Joseph Bamidele Awotunde (University of Ilorin, Nigeria)

ឆ្នាំបោះពុម្ព៖ 2024 Applied Sciences

វិស័យសិក្សា៖ Computer Science

១. សេចក្តីសង្ខេបប្រតិបត្តិ (Executive Summary)

បញ្ហា (The Problem)៖ ការរក្សាទុករូបភាពនៅលើក្លោដ (Cloud) សម្រាប់ឧបករណ៍អ៊ីនធឺណិតនៃវត្ថុ (IoT) ដែលមានធនធានមានកម្រិត ប្រឈមនឹងហានិភ័យផ្នែកសន្តិសុខ និងឯកជនភាព ខណៈពេលដែលប្រព័ន្ធគ្រីបតូកូដ (Cryptosystems) ដែលមានស្រាប់ត្រូវការអង្គចងចាំច្រើនដោយសារការប្រើប្រាស់ Substitution boxes (S-boxes)។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះបានស្នើឡើងនូវក្បួនដោះស្រាយការអ៊ិនគ្រីបរូបភាពធុនស្រាលថ្មីមួយហៅថា Hash XOR Permutation (HXP) ដែលលុបបំបាត់ការប្រើប្រាស់ S-box ដើម្បីសន្សំសំចៃធនធានក្នុងការអនុវត្តលើឧបករណ៍ IoT។

លទ្ធផលសំខាន់ៗ (The Verdict)៖

២. ការវិភាគលើប្រសិទ្ធភាព និងដែនកំណត់ (Performance & Constraints)

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Hash XOR Permutation (HXP)
វិធីសាស្ត្រអ៊ិនគ្រីបរូបភាព Hash XOR Permutation
មិនប្រើតារាង S-box ដែលជួយសន្សំសំចៃអង្គចងចាំបានច្រើន និងមានសុវត្ថិភាពខ្ពស់ក្នុងការទប់ទល់ការវាយប្រហារបែបឌីផេរ៉ង់ស្យែល (Differential attacks)។ ភាពរសើបនៃរូបភាពកូដសម្ងាត់ (Cipher image sensitivity) នៅមានកម្រិតទាប ដែលអាចជាចំណុចខ្សោយតូចមួយក្នុងការរកឃើញការផ្លាស់ប្តូរតូចតាច។ ទទួលបានតម្លៃ Entropy ជិត ៨ (៧.៩៩៩) និងភាពធន់នឹងការវាយប្រហារ (NPCR/UACI) ខ្ពស់បំផុតធៀបនឹងច្បាប់ដើម។
Existing Block Ciphers with S-boxes (e.g., Norouzi et al.)
វិធីសាស្ត្រអ៊ិនគ្រីបប្រើតារាង S-boxes ដែលមានស្រាប់
មានភាពពេញនិយម និងមានការសិក្សាស្រាវជ្រាវច្រើននាពេលកន្លងមក ដែលងាយស្រួលក្នុងការស្វែងរកឯកសារយោង និងកូដគំរូ។ ត្រូវការទំហំអង្គចងចាំ (Memory) ច្រើនសម្រាប់ផ្ទុក S-boxes ដែលមិនស័ក្តិសមសម្រាប់ឧបករណ៍ IoT ខ្សោយៗ (Resource-constrained devices)។ មានតម្លៃ MSE (Mean Square Error) និងការការពារការវាយប្រហារប្រភេទ Chi-square ទាបជាង HXP បន្តិចបន្តួចនៅក្នុងការធ្វើតេស្តភាគច្រើន។

ការចំណាយលើធនធាន (Resource Cost)៖ ឯកសារនេះបានបញ្ជាក់យ៉ាងច្បាស់ពីការប្រើប្រាស់ធនធានកម្រិតទាប (Lightweight) ដោយសារការលុបបំបាត់តារាង S-box ដែលធ្វើឱ្យវាស៊ីអង្គចងចាំ (RAM) និងថាមពលកុំព្យូទ័រតិចបំផុត។

៣. ការពិនិត្យសម្រាប់បរិបទកម្ពុជា/អាស៊ីអាគ្នេយ៍

ភាពលំអៀងនៃទិន្នន័យ (Data Bias)៖

ការធ្វើតេស្តត្រូវបានអនុវត្តលើទិន្នន័យរូបភាពស្តង់ដារអន្តរជាតិ (USC-SIPI database) ដែលគ្មានភាពលម្អៀងផ្នែកប្រជាសាស្ត្រនោះទេ។ ទោះយ៉ាងណាក្តី ការសិក្សានេះមិនទាន់បានសាកល្បងលើរូបភាពជាក់ស្តែងនៅប្រទេសកម្ពុជា ដូចជារូបភាពកាមេរ៉ាសុវត្ថិភាពចរាចរណ៍នៅពេលយប់ ឬរូបភាពពីដ្រូនកសិកម្ម ដែលអាចមានកម្រិតពន្លឺ (Noise/Luminance) និងទម្រង់ខុសប្លែកពីនេះនៅឡើយទេ។

លទ្ធភាពនៃការអនុវត្ត (Applicability)៖

វិធីសាស្ត្រគ្រីបតូកូដធុនស្រាលនេះមានសារៈសំខាន់ខ្លាំងសម្រាប់ការអភិវឌ្ឍហេដ្ឋារចនាសម្ព័ន្ធបច្ចេកវិទ្យា IoT នៅប្រទេសកម្ពុជា ជាពិសេសក្នុងគម្រោងដែលខ្វះខាតថវិកាសម្រាប់ទិញឧបករណ៍ទំនើបៗ។

សរុបមក ក្បួនដោះស្រាយ HXP នេះផ្តល់នូវដំណោះស្រាយដ៏មានប្រសិទ្ធភាព និងចំណាយតិច ក្នុងការធានាសុវត្ថិភាពទិន្នន័យរូបភាពសម្រាប់គម្រោងរដ្ឋាភិបាល និងឯកជននៅកម្ពុជា។

៤. ផែនការសកម្មភាពសម្រាប់និស្សិត (Actionable Roadmap)

ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖

  1. ១. សិក្សាមូលដ្ឋានគ្រឹះនៃ Cryptography: ស្វែងយល់ពីគោលការណ៍កូដនីយកម្ម ជាពិសេស Symmetric Algorithms ដូចជាគំរូ AES ព្រមទាំងមុខងារហាស ដូចជា SHA-256 ដើម្បីយល់ពីរបៀបដែលឯកសារនេះប្រើវាជំនួស S-box។
  2. ២. សិក្សាការបំប្លែងរូបភាពជាមួយ Python: រៀនសរសេរកូដដោយប្រើប្រាស់ភាសា Python រួមជាមួយបណ្ណាល័យ OpenCVPillow ដើម្បីអាន ទាញយកភីកសែល (Pixels) និងបំប្លែងរូបភាពទៅជាទិន្នន័យប្រភេទប៊ីត (Bits)។
  3. ៣. អនុវត្តការអ៊ិនគ្រីបក្បួន HXP ដំបូង: សាកល្បងសរសេរកូដបង្កើតក្បួនដោះស្រាយ HXP ដោយផ្ទាល់ ដោយធ្វើតាមជំហាន XOR Operation និង Bit Permutation ដូចដែលមានបង្ហាញក្នុងឯកសារស្រាវជ្រាវ (Algorithms 1, 2, 3)។
  4. ៤. ធ្វើតេស្តផ្ទុកលើឧបករណ៍ IoT ពិតប្រាកដ: បញ្ជូន (Deploy) កូដរបស់អ្នកទៅកាន់ឧបករណ៍ Raspberry PiESP32 ដើម្បីវាស់ស្ទង់ការប្រើប្រាស់មេម៉ូរី (Memory Profile) និងល្បឿនអ៊ិនគ្រីបក្នុងស្ថានភាពឧបករណ៍ខ្សោយពិតប្រាកដ។
  5. ៥. វាស់ស្ទង់រង្វាស់សុវត្ថិភាព: ប្រើប្រាស់រូបភាពជាក់ស្តែង (ឧ. រូបភាពផ្លូវថ្នល់នៅភ្នំពេញ) ហើយវាស់ស្ទង់កម្រិតសុវត្ថិភាពដូចជា PSNR, SSIM, និង Entropy ដោយប្រើប្រាស់បណ្ណាល័យ scikit-image ដើម្បីប្រៀបធៀបលទ្ធផល។

៥. វាក្យសព្ទបច្ចេកទេស (Technical Glossary)

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Substitution boxes (S-boxes) ជាសមាសធាតុនៅក្នុងប្រព័ន្ធគ្រីបតូកូដដែលធ្វើការផ្លាស់ប្តូរទិន្នន័យ (ជំនួសប៊ីតមួយក្រុមដោយប៊ីតមួយក្រុមទៀត) ដើម្បីលាក់បាំងទំនាក់ទំនងរវាងកូដសម្ងាត់និងទិន្នន័យ ប៉ុន្តែវាមានគុណវិបត្តិត្រង់ថាវាទាមទារទំហំអង្គចងចាំ (Memory) ច្រើនក្នុងការផ្ទុកតារាងទិន្នន័យទាំងនោះ។ ដូចជាសៀវភៅបកប្រែពាក្យសម្ងាត់មួយក្បាល ដែលអ្នកត្រូវមើលតារាងដើម្បីប្តូរអក្សរ 'ក' ទៅជាអក្សរ 'គ' ធ្វើឱ្យអ្នកផ្សេងអានមិនដឹងសាច់រឿង។
Confusion and diffusion ជាលក្ខណៈសម្បត្តិគោលពីរនៃប្រព័ន្ធសុវត្ថិភាពទិន្នន័យ ដែលទីមួយ (Confusion) ធ្វើឱ្យកូដសម្ងាត់និងទិន្នន័យមានភាពស្មុគស្មាញរកប្រភពមិនឃើញ និងទីពីរ (Diffusion) ធ្វើឱ្យការផ្លាស់ប្តូរទិន្នន័យដើមតែមួយប៊ីត ជះឥទ្ធិពលធ្វើឱ្យទិន្នន័យកូដប្រែប្រួលជាច្រើនកន្លែង។ ដូចជាការយកទឹកស៊ីរ៉ូមួយតំណក់ទម្លាក់ចូលក្នុងទឹកកែវធំ (Diffusion) រួចកូរវាបញ្ចូលគ្នាឱ្យខ្លាំងរហូតដល់យើងមើលលែងដឹងថាទឹកនោះផ្សំឡើងពីអ្វីខ្លះ (Confusion)។
XOR operation ជាប្រតិបត្តិការតក្កវិទ្យា (Logic) លើប្រព័ន្ធកុំព្យូទ័រ ដែលប្រៀបធៀបប៊ីតទិន្នន័យពីរ ដោយបញ្ចេញលទ្ធផលលេខ '១' លុះត្រាតែប៊ីតទាំងពីរនោះមានតម្លៃខុសគ្នា (០ និង ១) ដែលវិធីនេះជួយបង្កើតភាពច្របូកច្របល់ក្នុងការអ៊ិនគ្រីបដោយមិនបាច់ស៊ីអង្គចងចាំ។ ដូចជាកុងតាក់ភ្លើងពីរនៅក្បាល និងចុងជណ្តើរផ្ទះ បើអ្នកចុចកុងតាក់តែមួយ ភ្លើងនឹងភ្លឺ ប៉ុន្តែបើអ្នកចុចទាំងពីរព្រមគ្នា ឬមិនចុចសោះ ភ្លើងនឹងរលត់។
Bit permutation ជាដំណើរការនៃការសាប់ ឬផ្លាស់ប្តូរទីតាំងរៀបចំនៃប៊ីតទិន្នន័យ (០ និង ១) ពីកន្លែងមួយទៅកន្លែងមួយទៀត ដើម្បីឱ្យទិន្នន័យកាន់តែរាយប៉ាយ និងបាត់បង់ទម្រង់ដើមទាំងស្រុង។ ដូចជាការសាប់សន្លឹកបៀរមុនពេលចាប់ផ្តើមលេង ដើម្បីឱ្យបៀរលាយឡំគ្នាគ្មានសណ្តាប់ធ្នាប់ ធ្វើឱ្យអ្នកលេងមិនអាចទាយដឹងថាបៀរអ្វីនៅទីតាំងណា។
Differential cryptanalysis ជាវិធីសាស្ត្រវាយប្រហាររបស់ពួកហាកឃ័រ (Hackers) ដោយពួកគេព្យាយាមផ្លាស់ប្តូរទិន្នន័យដើមបន្តិចបន្តួច រួចតាមដានមើលថាតើទិន្នន័យដែលបានអ៊ិនគ្រីបរួចផ្លាស់ប្តូរក្នុងទម្រង់បែបណា ដើម្បីទាញរកកូដសម្ងាត់ (Encryption Key) មកវិញ។ ដូចជាការសាកល្បងចាក់សោទ្វារខុសគ្នាបន្តិចបន្តួចម្តងមួយៗ ដើម្បីស្តាប់សំឡេងម៉ាស៊ីនខាងក្នុងរហូតដល់ដឹងពីគន្លឹះដែលអាចបើកសោនោះបាន។
Information entropy ជារង្វាស់ស្ថិតិដែលប្រើដើម្បីវាស់ស្ទង់កម្រិតនៃភាពគ្មានសណ្តាប់ធ្នាប់ ឬភាពចៃដន្យនៃភីកសែលរូបភាពដែលបានអ៊ិនគ្រីបរួច (តម្លៃកាន់តែជិត ៨ កាន់តែមានសុវត្ថិភាពខ្ពស់) ដើម្បីបញ្ជាក់ថារូបភាពនោះមិនអាចត្រូវគេទាយទម្រង់ដើមបានឡើយ។ ដូចជាការបោះគ្រាប់ឡុកឡាក់ ប្រសិនបើវាចេញលេខដោយចៃដន្យគ្រប់ទិសទីគ្មានទម្រង់ជាន់គ្នា នោះមានន័យថាវាមានភាពស្មុគស្មាញ (Entropy) ខ្ពស់។
Hash Algorithm (SHA-256) ជាក្បួនគណិតវិទ្យាឯកទិស (One-way function) ដែលបំប្លែងទិន្នន័យគ្រប់ទំហំទៅជាកូដប្រវែងថេរមួយ (២៥៦ ប៊ីត) ដែលការផ្លាស់ប្តូរទិន្នន័យដើមសូម្បីតែបន្តិច នឹងធ្វើឱ្យលទ្ធផលកូដផ្លាស់ប្តូរទាំងស្រុង និងមិនអាចបំប្លែងត្រឡប់ក្រោយបានទេ។ ដូចជាម៉ាស៊ីនកិនសាច់មួយដែលកិនសាច់ចេញមកមានរាងដូចៗគ្នា ហើយអ្នកមិនអាចយកសាច់ដែលកិនរួចនោះ ទៅផ្គុំជាដុំសាច់ដើមវិញបានឡើយ ទោះជាប្រើវិធីណាក៏ដោយ។

៦. ប្រធានបទពាក់ព័ន្ធ (Further Reading)

អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖

ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖