Merkle-LWE KEM, ni utaratibu wa majaribio wa kufungasha ufunguo wa baada ya quantum unaolenga kupunguza matumizi ya kumbukumbu kwa kuchanganya uundaji upya kutoka seed fupi, uwakilishi wa ufunguo wa siri haba na ahadi za kriptografia zinazotegemea Merkle badala ya kuhifadhi miundo yote mikubwa ya kriptografia ya kimiani kwenye kumbukumbu. Utafiti unaunganisha muundo wa kihisabati unaotegemea Module Learning With Errors (Module-LWE), uundaji wa matriki wa kideterministi kwa ChaCha20, kazi za hash za SHA3-256/SHA3-512, njia za uthibitishaji za Merkle na mabadiliko ya Fujisaki–Okamoto. Chaguo kuu la usanifu la waandishi si kupunguza muda wa utekelezaji hadi kiwango cha chini kabisa, bali kubadilisha mzigo wa hifadhi kwa njia inayodhibitiwa kuwa gharama ya ukokotoaji katika vifaa vilivyopachikwa vyenye RAM na kumbukumbu ya flash iliyo na kikomo.
Kwa mujibu wa jedwali kuu la vigezo la chanzo, ufunguo wa umma wa Merkle-LWE katika viwango vyote vitatu vya usalama umetolewa kuwa 96 B. Ufunguo wa siri kwa Level 1, 3 na 5 ni, mtawalia, 160 B, 192 B na 224 B; siri iliyoshirikiwa ni 32 B katika kila kiwango. Jedwali hilo hilo linaripoti ukubwa wa ciphertext kuwa, mtawalia, 128 B, 160 B na 192 B. Hata hivyo, kwa kuwa maelezo ya vielelezo vya baadaye katika makala yanatoa nambari zisizolingana na thamani hizi kuhusu muundo wa ciphertext na ukubwa wa njia ya uthibitishaji ya Merkle, ukubwa huu unapaswa kuchukuliwa kuwa thamani lengwa zilizoripotiwa katika Jedwali 1, si ukweli mmoja usiopingika wa utekelezaji katika chanzo.
Benchmarking ya majaribio inaonyesha katika utafiti kwamba kuokoa kumbukumbu kuna gharama kubwa ya ukokotoaji. Chanzo kinaripoti kuwa utengenezaji wa ufunguo wa Merkle-LWE unatumia mizunguko 2.906.456 ya CPU, ufungashaji mizunguko 809.636 na ufunguaji wa kapsuli mizunguko 814.588; jumla ya mzigo wa CPU huongezeka takribani mara mbili ikilinganishwa na msingi wa jadi wa LWE. Kwa hiyo, utafiti haudai ubora wa kasi kwa Merkle-LWE, bali unaeleza wazi kwamba unalenga nyenzo ndogo ya kudumu ya ufunguo na trafiki ndogo ya kumbukumbu kwa kubadilishana na ukokotoaji zaidi.
Kuna kikomo muhimu katika kutafsiri matokeo ya usalama. Chanzo katika Jedwali 2, kwa Level 1, kinatoa makadirio ya jumla ya usalama ya 142,8 bit, ambayo yanazidi lengo la ≥128 bit. Kinyume chake, kwa Level 3 makadirio ya chini ni 188,7 bit, yakiwa chini ya lengo la ≥192 bit kwa 3,3 bit; kwa Level 5 ni 234,5 bit, yakiwa chini ya lengo la ≥256 bit kwa 21,5 bit. Waandishi wanatafsiri usalama wa juu zaidi wa upunguzaji wa kimiani na tabaka mseto linalotegemea SHA3-512 kuwa kina cha ziada cha usalama. Hata hivyo, maelezo haya hayaondoi ukweli wa kinambari kwamba thamani za chini za usalama za Level 3 na Level 5 katika jedwali ziko chini ya malengo.
Katika vipimo vya usahihi, hakuna kosa la decapsulation lililoripotiwa katika zaidi ya utekelezaji 66.600 wa KEM. Hata hivyo, uchanganuzi wa kitakwimu wa makala yenyewe unasema kwamba takribani majaribio milioni tatu yanahitajika ili kuonyesha kwa uhakika wa %95 kwamba kiwango halisi cha makosa kiko chini ya kizingiti cha \(10^{-6}\). Kwa hiyo, kauli “hakuna kosa lililoonekana katika vipimo” inaungwa mkono, lakini hitimisho kwamba “imeonyeshwa kwa majaribio kuwa uwezekano wa kosa ni chini ya \(10^{-6}\)” haliungwi mkono na data hizi.
Tatizo la kufungasha ufunguo wa baada ya quantum ni nini?
Utaratibu wa Kufungasha Ufunguo, kwa Kiingereza Key Encapsulation Mechanism (KEM), ni muundo wa kriptografia unaowezesha pande mbili kuunda ufunguo wa siri wa pamoja kupitia njia ya wazi ya mawasiliano. Kazi ya KEM si kusimba moja kwa moja data kubwa ya mtumiaji; kwa kawaida ni kuzalisha siri ya pamoja inayoweza kutumiwa baadaye katika usimbaji fiche wa kisimetri na kuifungasha kwa namna ambayo ni mmiliki halali wa ufunguo wa siri pekee anayeweza kuipata.
Kriptografia baada ya quantum hutumia matatizo ya kriptografia yanayolengwa kubaki salama hata ikiwa kompyuta za quantum zenye nguvu ya kutosha zitakuwepo. Msingi wa kihisabati wa utafiti huu ni Module-LWE. Wazo kuu la familia ya LWE ni kuongeza vipengele vidogo vya kosa kwenye ubadilishaji wa mstari wa vekta ya siri. Upande ulioidhinishwa unaweza kufanya operesheni kwa kutumia muundo sahihi, huku mshambulizi akijaribu kutoa thamani ya siri kutoka katika mahusiano ya mstari yenye kelele yaliyoonekana.
Kwa nini Module-LWE hutumia muundo wa “module”?
Chanzo kinajenga Merkle-LWE juu ya muundo wa Module-LWE unaofanya kazi katika pete za polinomu. Katika ufafanuzi rasmi wa utafiti, pete ya operesheni imetolewa kama ifuatavyo:
Hapa \(R_q\) ni pete inayoundwa na polinomu ambazo vigawo vyake vinahesabiwa modulo \(q\). \(\mathbb{Z}_q\) inaonyesha madarasa ya mabaki ya nambari kamili modulo \(q\); \(X\) ni kigezo cha polinomu; na \(n\) ni ukubwa wa kimiani unaobainisha shahada ya polinomu. Kugawanya kwa \(X^n+1\) kunamaanisha kupunguza bidhaa za polinomu kulingana na uhusiano huu.
Katika seti zote tatu za vigezo za utafiti, \(n=256\) na \(q=3329\) hutumiwa. Kiwango cha usalama kinapoongezeka, mojawapo ya vigezo vinavyobadilika zaidi ni module rank \(k\): kwa Level 1 \(k=2\), kwa Level 3 \(k=3\), na kwa Level 5 \(k=4\).
Merkle-LWE KEM ni nini na inalengaje kupunguza matumizi ya kumbukumbu?
Merkle-LWE KEM ni usanifu wa Module-LWE KEM wa “memory-first” ambao, badala ya kuhifadhi kabisa matriki kubwa za umma na vekta za siri zenye msongamano, huzitengeneza upya kutoka seed fupi zinapohitajika, huwakilisha ufunguo wa siri katika muundo haba unaodhibitiwa na hutumia ahadi za Merkle kwa uthibitishaji; mbinu hii inakubali ukokotoaji wa ziada wa PRNG, hash na uundaji upya huku ikipunguza matumizi ya kumbukumbu.
Nguzo ya kwanza: uundaji wa matriki unaotegemea seed
Mojawapo ya maamuzi makuu ya usanifu wa utafiti ni kutohifadhi kabisa vigawo vyote vya matriki ya umma \(A\). Badala yake, kama sehemu ya ufunguo wa umma, seed ya baiti 32 huhifadhiwa. Operesheni ya kriptografia inapohitaji safu fulani ya \(A\), safu hiyo hutengenezwa upya kwa kutumia uundaji wa nambari bandia bila mpangilio unaotegemea ChaCha20.
Mantiki ya ubadilishanaji huu ni rahisi: data inayohifadhiwa hupungua, lakini muundo ambao ungeweza kuwa tayari katika kumbukumbu huhesabiwa upya kila unapohitajika. Kwa hiyo, kinyume na dhana kwamba “ukokotoaji ni ghali, kumbukumbu ni nafuu”, usanifu unachukua mtazamo kwamba katika baadhi ya mifumo iliyopachikwa “mizunguko ya ukokotoaji inapatikana, lakini RAM/flash ina kikomo”.
Seed ni nini?
Seed ni thamani ndogo ya kuanzia inayotumiwa kuzalisha kwa kideterministi mlolongo mkubwa wa data bandia bila mpangilio. Ikiwa algoriti salama ileile ya uzalishaji inaendeshwa kwa seed ileile, mlolongo uleule wa matokeo unaweza kuzalishwa tena. Kwa hiyo, badala ya kuhifadhi vigawo maelfu vya matriki \(A\) kimoja baada ya kingine, mfumo unaweza kuhifadhi taarifa ndogo ya kuanzia inayoweza kuvizalisha upya.
Jukumu la PRNG na ChaCha20
PRNG, Pseudorandom Number Generator, yaani kizalishaji cha nambari bandia bila mpangilio. Utafiti unatumia ChaCha20 katika upanuzi wa kideterministi wa safu za matriki, miundo haba ya ufunguo na baadhi ya miundo ya kosa. Chanzo kinahalalisha uteuzi wa ChaCha20 kwa uwezo wake wa kutekelezwa kwa muda usiotegemea siri na kufaa kwake kwa mifumo iliyopachikwa.
Nguzo ya pili: ufunguo wa siri haba
Katika polinomu ya siri yenye msongamano, vigawo vingi vinaweza kuwa tofauti na sifuri. Merkle-LWE hutumia muundo wa siri ambao ni haba kwa kuwa ni idadi fulani tu ya vigawo iliyo tofauti na sifuri. Idadi ya vigawo visivyo sifuri huitwa uzito wa Hamming \(w\).
| Kigezo | Level 1 | Level 3 | Level 5 |
|---|---|---|---|
| Usalama lengwa | 128 bit | 192 bit | 256 bit |
| Ukubwa wa polinomu/kimiani \(n\) | 256 | 256 | 256 |
| Moduli \(q\) | 3329 | 3329 | 3329 |
| Module rank \(k\) | 2 | 3 | 4 |
| Uzito wa uhaba \(w\) | 48 | 64 | 80 |
| Kikomo cha kigawe cha Jedwali 4 \(\beta\) | 1 | 1 | 1 |
| Seti ya wagombea wa kosa \(|E|\) | 128 | 128 | 128 |
| ChaCha20 nonce | 12 B | 12 B | 12 B |
| Tokeo la SHA3-256 / SHA3-512 | 32 / 64 B | 32 / 64 B | 32 / 64 B |
Hapa pia kuna maelezo ya ndani ya chanzo: Jedwali 4 linatoa \(\beta=1\), ilhali maelezo ya ufunguo wa siri haba yanasema kwamba kwa Level 1 vigawo huchaguliwa, kwa mfano, kutoka seti \(\{-4,-3,\ldots,3,4\}\). Aidha, baadhi ya sehemu zinaeleza seti ya wagombea wa kosa kuwa 128 au 256, wakati Jedwali 4 linatoa 128 kwa viwango vyote. Verianla haibadilishi tofauti hizi kuwa seti moja mpya ya vigezo.
Kwa nini uchanganyaji wa Fisher–Yates hutumiwa?
Chanzo kinatumia uchanganyaji wa Fisher–Yates unaoendeshwa na seed kubainisha nafasi za vigawo visivyo sifuri katika polinomu haba. Katika hatua hii, kutoka indeks kati ya \(0\) na \(n-1\), huchaguliwa nafasi \(w\) tofauti. Hivyo, kwa mfano katika Level 1, kati ya nafasi 256, nafasi 48 hubeba vigawo visivyo sifuri.
Polinomu nzima ya siri inaweza kutengenezwa upya kutoka seed badala ya kuhifadhiwa kwa muda mrefu kama ufunguo wa kudumu. Gharama ya kiusalama ya mbinu hii ni kwamba uhaba unaweza kuunda uso mpya wa shambulio la kikombinatoriki kwa mshambulizi. Kwa hiyo, uchanganuzi wa usalama halisi wa makala huhesabu si mashambulizi ya upunguzaji wa kimiani pekee bali pia mashambulizi ya kikombinatoriki yanayotumia uzito wa Hamming.
Nguzo ya tatu: tabaka la ahadi ya Merkle
Mti wa Merkle ni muundo unaounganisha kwa mpangilio wa ngazi hash za data nyingi ili kuziwakilisha kwa hash moja ya mzizi. Ili kuonyesha kwamba jani fulani ni sehemu ya mti, si lazima kutuma mti mzima; authentication path yenye idadi ndogo ya hash ndugu kutoka jani hadi mzizi inaweza kutumiwa.
Sifa hii inaruhusu Merkle-LWE kutumia wazo la “funga kwa mzizi na thibitisha uanachama inapohitajika” badala ya mtazamo wa “hifadhi na tuma data yote”.
Hata hivyo, chanzo hakitoi maelezo moja yanayolingana kikamilifu hapa. Katika baadhi ya sehemu, mzizi wa Merkle huweka ahadi juu ya vigawo vya ufunguo wa siri \(s\). Katika sehemu nyingine, imeandikwa kwamba huweka ahadi juu ya mifumo ya wagombea wa kosa. Sehemu moja inasema mzizi wa Merkle wa mifumo ya kosa haupo katika ufunguo wa umma bali huhifadhiwa kama hali ya ndani ndani ya ufunguo wa siri; ilhali Algoriti rasmi 1 na sehemu nyingine hufafanua ufunguo wa umma kuwa \(seed_A || root_s\). Tofauti hii ni utata wa spesifikesheni ndani ya chanzo unaohitaji kutatuliwa ili protokoli iweze kutekelezwa upya kwa kujitegemea.
Mabadiliko ya Fujisaki–Okamoto yanafanya nini?
Utafiti unatumia mabadiliko ya Fujisaki–Okamoto (FO) kubadilisha muundo wa msingi wa Module-LWE kuwa KEM salama dhidi ya mashambulizi ya maandishi yaliyosimbwa yaliyochaguliwa. Chanzo kinayatumia kwa mpito kutoka msingi wa IND-CPA kwenda lengo la usalama la IND-CCA.
IND-CPA, ni wazo kwamba mshambulizi ashindwe kutofautisha ujumbe unaowakilishwa na ciphertext lengwa ingawa anaweza kupata mifano ya usimbaji fiche kwa maandishi wazi anayoyachagua. IND-CCA ni modeli ya mshambulizi yenye nguvu zaidi; mshambulizi anaweza kufikia decapsulation/decryption oracle inayoweza kufungua ciphertext anazochagua isipokuwa ciphertext lengwa.
Uthibitisho wa usalama wa chanzo umejengwa ndani ya Random Oracle Model (ROM). Hii inamaanisha kwamba katika uthibitisho wa kinadharia, kazi za hash huigwa kama oracle bora ya nasibu; utekelezaji halisi wa SHA3 na random oracle ya kihisabati si kitu kilekile.
Kikomo cha Usalama cha IND-CCA katika Mlinganyo (1) Kinamaanisha Nini?
Mlinganyo (1) ni dai rasmi la usalama linalotolewa na chanzo ili kuweka kikomo cha juu kwa faida ya IND-CCA ya algoriti inayoshambulia Merkle-LWE kwa kuhusisha ugumu wa Module-LWE, uwezekano wa maswali ya random-oracle unaotegemea kigezo cha usalama, maswali ya decapsulation na uwezekano wa mgongano wa SHA3-512; kikomo hiki kinapaswa kutafsiriwa tu chini ya dhana zilizotajwa za Module-LWE, PRF, hash na Random Oracle Model.
Mlinganyo (1) — Faida ya mshambulizi wa IND-CCA
\(\mathcal{A}\), algoriti ya mshambulizi; \(\operatorname{Adv}^{\mathrm{IND-CCA}_{\Pi}}(\mathcal{A})\), inawakilisha faida ya mshambulizi katika kutofautisha siri halisi iliyoshirikiwa na thamani ya nasibu. Thamani hii haina kitengo cha kimwili; ni ukubwa wa kiusalama wa kiuwezekano.
\(\epsilon_{\mathrm{MLWE}}\), ni kikomo cha faida kinachohusishwa na kuvunja dhana ya Module-LWE. Kuonekana kwake mara mbili katika mlinganyo kunawakilisha gharama ya mipito miwili inayohusiana katika upunguzaji wa usalama mseto wa chanzo.
\(q_H\), ni kikomo cha juu cha maswali yanayofanywa kwa random oracle. \(\lambda\) ni kigezo cha usalama. Kijenzi \(\frac{q_H}{2^\lambda}\) ni kijenzi cha hasara kinachohusishwa na uwezekano wa mshambulizi kuuliza thamani muhimu katika nafasi ya usalama.
\(q_D\), inaonyesha idadi ya maswali ya decapsulation oracle; \(|K|\), inaonyesha ukubwa wa nafasi ya ufunguo wa pamoja. Chanzo kinafafanua \(|K|=2^{256}\).
\(\epsilon_{\mathrm{coll}}\), ni kijenzi kinachotumiwa kwa faida ya kupata mgongano katika ahadi ya hash ya SHA3-512. Mantiki ya jumla ya mlinganyo ni kuhusisha faida ya mshambulizi na dhana za ugumu wa msingi pamoja na hasara za ziada za kiuwezekano zinazotokana na idadi ya maswali.
Mlinganyo huu si matokeo ya jaribio. Ni usemi wa kikomo cha juu cha modeli ya kinadharia ya usalama iliyofafanuliwa katika chanzo.
Mlinganyo (2) — Sharti la uthibitishaji wa Merkle
\(root_s\), ni alama ya mzizi wa Merkle inayotumiwa katika mlinganyo wa chanzo. \(\pi_e\), ni Merkle authentication path ya thamani ya kosa \(e\); \(idx_e\), ni indeksi ya mgombea wa kosa; \(\parallel\) inaonyesha kuunganishwa kwa mfululizo wa baiti/data.
Uthibitishaji kurudisha 1 unaonyesha kwamba hash ya jani iliyotolewa inalingana na mzizi uliobainishwa kupitia njia ya Merkle iliyotolewa.
Hapa tatizo la majina ndani ya chanzo ni muhimu: mzizi unaitwa \(root_s\), ilhali jani linalothibitishwa linategemea \(idx_e \parallel e\), yaani muundo wa kosa. Katika sehemu nyingine imeandikwa kwamba mzizi huo huo unaweka ahadi juu ya vigawo vya \(s\) ya siri. Verianla haijabadilisha alama ya Mlinganyo (2) na haijaficha mkanganyiko huo.
Mlinganyo (3) — Nafasi ya shambulio la kikombinatoriki dhidi ya siri haba
Katika usemi huu wa makadirio ya ugumu, \(\binom{n}{w}\) inaonyesha idadi ya michanganyiko ya kuchagua kutoka nafasi \(n\) jumla ya nafasi \(w\) zisizo sifuri. \(\operatorname{poly}(n)\) ni kizidishi cha jumla kinachowakilisha operesheni nyingine za shambulio zinazotekelezwa kwa muda wa polinomu.
Ufunguo haba unaweza kupunguza kumbukumbu; lakini \(w\) kuwa ndogo sana kunaweza kurahisisha kwa mshambulizi kutafuta kwa njia ya kikombinatoriki nafasi zinazowezekana za msaada. Kwa hiyo, \(w\) si kigezo cha utendaji pekee bali pia ni kigezo cha usalama.
Kwa Nini Jedwali 2 ni Muhimu kwa Level 3 na Level 5?
Jedwali 2 la chanzo ni muhimu sana kwa sababu katika hesabu yake ya “Overall Security (min)” linatoa Level 3 kuwa 188,7 bit na Level 5 kuwa 234,5 bit; kwa kuwa hizi ziko chini ya malengo ya ≥192 na ≥256 bit mtawalia, kauli za jumla za “NIST-aligned” au usalama mseto katika sehemu nyingine za makala hazipaswi kuficha upungufu huu wa kinambari.
| Kiwango | Usalama wa upunguzaji wa kimiani | Usalama wa kikombinatoriki | Usalama wa jumla (min.) | Lengo la NIST katika chanzo | Pambizo |
|---|---|---|---|---|---|
| Level 1 | 142,8 bit | 143,2 bit | 142,8 bit | ≥128 bit | +14,8 bit |
| Level 3 | 207,3 bit | 188,7 bit | 188,7 bit | ≥192 bit | −3,3 bit |
| Level 5 | 271,4 bit | 234,5 bit | 234,5 bit | ≥256 bit | −21,5 bit |
Katika Level 1, makadirio ya upunguzaji wa kimiani na ya shambulio la kikombinatoriki yote yako juu ya lengo la 128 bit. Katika Level 3 na 5, ingawa makadirio ya upunguzaji wa kimiani yako juu ya lengo, makadirio ya kikombinatoriki dhidi ya siri haba hubaki chini zaidi, na hesabu ya “minimum” ya jedwali hutumia thamani hiyo ya chini kama usalama wa jumla.
Waandishi wanajadili pambizo hasi katika Level 3 na 5 kwa tafsiri ya usalama mseto kwamba mshambulizi lazima avuke kwa pamoja muundo wa kimiani na tabaka za ahadi zinazotegemea hash. Pia wanatathmini upinzani wa mgongano wa SHA3-512 kama kina huru cha usalama.
Tafsiri isiyopaswa kufanywa hapa ni kusema kwamba “kwa sababu kuna tabaka la SHA3, 188,7 bit moja kwa moja huwa kubwa kuliko 192 bit au 234,5 bit moja kwa moja huwa kubwa kuliko 256 bit”. Makala haitoi fomula rahisi ya kujumlisha namna hiyo. Kwa hiyo, Verianla huhifadhi pamoja msingi wa usalama mseto wa waandishi na pambizo hasi zilizo katika jedwali.
Mlinganyo (4) — Uwezo wa kutofautisha seti yenye kikomo ya makosa
Chanzo kinatumia mlinganyo huu wakati wa kujadili uwezo wa kutofautisha seti yenye kikomo ya wagombea wa kosa \(E\) na tabia ya kawaida ya sampuli za kosa za Module-LWE.
\(\epsilon_{\mathrm{PRF}}\), ni hasara ya usalama inayohusishwa na kutofautisha uundaji bandia bila mpangilio unaotegemea ChaCha20 na kazi halisi ya nasibu. \(\epsilon_{\mathrm{M-LWE}}\), ni faida ya mshambulizi inayohusiana na dhana ya Module-LWE. \(\operatorname{negl}(|E|)\) ni kijenzi kisicho na uzito mkubwa kinachotegemea ukubwa wa seti ya wagombea.
Chanzo kinajenga hoja ya usalama kwa majaribio manne mseto: skimu halisi, kubadilisha PRF na kazi bora ya nasibu, kubadilisha uchaguzi kutoka seti yenye kikomo \(E\) na sampuli huru ya kosa, na hatimaye kuhamia jaribio la kawaida la sampuli za Module-LWE. Mlinganyo (4) unawakilisha kikomo cha jumla cha faida za kutofautisha katika mipito hii.
Modeli ya mshambulizi iliyofafanuliwa na chanzo
Utafiti unadhania kwamba mshambulizi anaweza kuwa na uwezo wa ukokotoaji wa kawaida au wa quantum, anaweza kufuatilia mawasiliano yote ya wazi, kufanya maswali ya ciphertext yaliyochaguliwa na kufikia vipimo vya idhaa ya kando kama muda, matumizi ya nguvu au uvujaji wa sumakuumeme.
Kwa upande mwingine, modeli ya mshambulizi ya chanzo pia ina mipaka. Baadhi ya mashambulizi ya kimwili, kama kutoa siri moja kwa moja kutoka kumbukumbu salama kwa probing ya kimwili vamizi na kubadilisha firmware kwa kudumu, yameachwa nje ya modeli kuu ya tishio.
Kwa hiyo, kauli “ni salama dhidi ya idhaa za kando” haipaswi kutumiwa kwa namna ya absoluti. Chanzo kinatetea utekelezaji wa muda usiotegemea siri na kuepuka secret-dependent branch/memory access, lakini katika sehemu ya hitimisho pia kinakubali kwamba ufikiaji haba na wa muundo wa mti unaweza kuunda vichocheo vipya vya idhaa ya kando vinavyotegemea cache na kwamba vipimo vya kina zaidi vinahitajika baadaye.
Mbinu na Matokeo ya Utafiti
Algoriti 1 — Uzalishaji wa ufunguo
Kiini cha mchakato rasmi wa uzalishaji wa ufunguo katika chanzo ni kama ifuatavyo:
- Thamani tofauti za seed kwa uundaji wa matriki, ufunguo wa siri na kosa hutolewa kutoka entropy ya mfumo.
- Kwa uchanganyaji wa Fisher–Yates, kutoka nafasi \(n\) huchaguliwa nafasi \(w\) tofauti za vigawo vya siri.
- Polinomu ya siri haba \(s\) huundwa mwanzoni kwa vigawo sifuri.
- Thamani za vigawo zenye mipaka zinazozalishwa na ChaCha20 huwekwa katika nafasi zilizochaguliwa.
- Katika Algoriti 1 ya chanzo, vigawo vya \(s\) hubadilishwa kuwa majani kwa SHA3-512.
- Kutoka majani haya huundwa mti wa Merkle wa jozi na \(root_s\).
- Ufunguo wa umma katika algoriti ya chanzo huundwa kama \(pk=(seed_A \parallel root_s)\).
- Ufunguo wa siri katika algoriti ya chanzo hufafanuliwa kama muundo unaojumuisha seed ya siri, hash ya ufunguo wa umma na seed ya kosa.
Algoriti hii ni mojawapo ya ufafanuzi rasmi zaidi wa protokoli ndani ya chanzo. Kwa hiyo, mgongano wake na maelezo mengine yanayosema mzizi wa Merkle unaweka ahadi juu ya mifumo ya kosa ni muhimu kwa uwezo wa kurudia utekelezaji.
Algoriti 2 — Ufungashaji
Mtumaji hupokea ufunguo wa umma, kutoka \(seed_A\) huzalisha kwa ChaCha20 safu zinazohitajika za matriki \(A\), na huunda siri haba ya muda \(s'\). Mahusiano ya msingi ya LWE yanayotumiwa na chanzo ni kama ifuatavyo:
\(A\) inawakilisha matriki ya Module-LWE; \(s\) muundo wa siri wa muda mrefu; \(s'\) siri haba ya muda inayoundwa kwa ufungashaji; \(e\) kijenzi cha kosa/kelele; na \(u\) pamoja na \(v\) vinawakilisha vipengele vya LWE vya ciphertext.
Chanzo kinalenga kubeba indeksi ya kosa na Merkle authentication path badala ya kutuma muundo mzima wa kosa uliochaguliwa. Katika uundaji wa ufunguo wa pamoja hutumiwa key derivation inayotegemea SHA3-256.
Algoriti 3 — Ufunguaji wa kapsuli
Mpokeaji hutenganisha vipengele vya LWE, indeksi ya kosa na Merkle authentication path ndani ya ciphertext. Muundo wa siri haba hutengenezwa upya kutoka seed iliyo katika ufunguo wa siri; matriki pia huzalishwa tena kutoka seed. Mgombea wa kosa hutengenezwa upya, hash yake huhesabiwa na njia ya Merkle huthibitishwa.
Ikiwa uthibitishaji wa Merkle utashindwa, chanzo hufafanua tabia ya kushindwa inayozalisha siri ya pamoja ya nasibu ili kutovujisha moja kwa moja taarifa ya uhalali kwa mshambulizi. Ikiwa uthibitishaji utafanikiwa, siri ya pamoja hutolewa upya.
Ukubwa wa ufunguo na ciphertext
| Kiwango cha usalama | Ufunguo wa umma | Ufunguo wa siri | Ciphertext | Siri iliyoshirikiwa |
|---|---|---|---|---|
| Level 1 (128 bit) | 96 B | 160 B | 128 B | 32 B |
| Level 3 (192 bit) | 96 B | 192 B | 160 B | 32 B |
| Level 5 (256 bit) | 96 B | 224 B | 192 B | 32 B |
Muundo wa ufunguo wa umma wa 96 B unaolengwa na chanzo una 32 B \(seed_A\) na 64 B mzizi wa Merkle wa SHA3-512. Muundo huu huwekwa bila kubadilika katika viwango vya usalama.
Kutokuwiana ndani ya chanzo katika ukubwa wa ciphertext
Ukubwa wa ciphertext ni mojawapo ya matatizo yaliyo wazi zaidi ya uwezo wa kurudia makala. Jedwali 1 na majedwali ya baadaye ya vigezo yanatoa thamani 128/160/192 B. Kinyume chake, maelezo ya chanzo karibu na Kielelezo 6 yanaeleza muundo tofauti na mkubwa zaidi wa ciphertext. Katika sehemu ya athari za protokoli inasemwa kwamba ciphertext ya Level 3 ni 160 B, lakini katika mlolongo uleule wa sentensi imeelezwa kwamba Merkle authentication path pekee ni 448 B.
| Mahali katika chanzo | Taarifa iliyoripotiwa | Maelezo |
|---|---|---|
| Jedwali 1 | 128 / 160 / 192 B | Ukubwa lengwa wa ciphertext wa Level 1 / 3 / 5. |
| Maelezo ya tabaka la Merkle | Kwa majani 256, njia ya uthibitishaji ya 8 × 64 B = 512 B | Peke yake ni kubwa kuliko ukubwa wa ciphertext wa Jedwali 1. |
| Maelezo karibu na Kielelezo 6 | Chanzo kinatoa muundo mkubwa zaidi wa ciphertext na asilimia. | Haiwezi kuoanisha moja kwa moja na Jedwali 1 kama uwakilishi uleule. |
| Uchanganuzi wa protokoli ya IoT | Ciphertext ya Level 3 ni 160 B; imeandikwa kwamba ina Merkle authentication path ya 448 B. | Kwa kuwa ndani ya jumla ya 160 B haiwezekani kuwe na sehemu ndogo ya 448 B, hii ni kutokuwiana ndani ya chanzo. |
Kwa hiyo, Verianla haitengenezi ukubwa mmoja “uliosahihishwa” wa ciphertext. Thamani za Jedwali 1 huhifadhiwa kama malengo yaliyoripotiwa na jedwali lenyewe, na thamani nyingine kama taarifa tofauti zinazopatikana kando katika chanzo.
Majukwaa ya majaribio
Utafiti unashughulikia madaraja mawili ya vifaa. Mfumo wa maendeleo wa kompyuta ya mezani umefafanuliwa kuwa na prosesa AMD Ryzen 5 5600X, 32 GB DDR4-3200 RAM na Ubuntu 22.04 LTS. Upande uliopachikwa unatathminiwa kupitia usanifu wa ARM Cortex-M4.
Katika sehemu ya mbinu ya chanzo inaelezwa kuwa jukwaa lililopachikwa halihusishwi na ubao maalum wa mtengenezaji na linawakilisha daraja la Cortex-M4, ilhali katika sehemu ya matokeo ya majaribio vipimo vinasemekana kukusanywa hasa kutoka NUCLEO-L4R5ZI ubao wenye jukwaa la ARM Cortex-M4. Kutokana na tofauti hii ya kuripoti, Verianla hailazimishi mfumo katika maelezo moja.
Mizunguko ya CPU ilipimwaje?
Katika jukwaa la x86-64, kwa kuhesabu mizunguko ya CPU ilitumika rdtsc, na upande wa ARM Cortex-M4 ulitumia Data Watchpoint and Trace (DWT) cycle counter. Kwa kila moja ya operesheni za uzalishaji wa ufunguo, encapsulation na decapsulation, baada ya utekelezaji 100 wa kupasha mfumo joto, vipimo 1000 vilifanywa na chanzo kikaripoti idadi ya mizunguko ya median.
Ubadilishaji wa masafa ya CPU ulizimwa. Ili kupunguza athari ya jitter ya mfumo wa uendeshaji kwenye kompyuta ya mezani, michakato ya nyuma ilipunguzwa na mchakato ukafungwa kwenye kiini maalum.
Kumbukumbu ilipimwaje?
Ukubwa wa msimbo tuli ulitathminiwa kutoka sehemu ya .text ya faili ya ELF iliyokompailiwa kwa kutumia zana ya size. Matumizi ya RAM yenye mabadiliko yalichunguzwa kwa upande wa heap na stack. Upande wa Linux ulitumia Valgrind Massif, na lengo lililopachikwa likatumia linker map na mbinu za watermark.
Chanzo kinasema hakikutumia dynamic allocation wakati wa operesheni za KEM. Katika hali hii, peak RAM kwa kiasi kikubwa ni jumla ya buffer za muda na stack ya miito.
Je, nishati ilipimwa moja kwa moja?
Hapana. Matokeo ya nishati katika utafiti si nishati ya kifaa iliyopimwa moja kwa moja kwa kichanganuzi cha nguvu cha kimwili. Chanzo kinafanya modeli ya nishati kwa kutumia konstanti zilizotokana na fasihi kwa kifaa cha kawaida cha IoT cha daraja la 28 nm.
| Operesheni | Kigawe cha nishati |
|---|---|
| Ufikiaji wa kumbukumbu wa 64 B | 0,1 µJ |
| Mzunguko mmoja wa CPU | 0,0001 µJ |
| Operesheni moja ya hash | 1,0 µJ |
| Upanuzi mmoja wa PRNG | 0,5 µJ |
Kwa hiyo, thamani za nishati zinazowasilishwa katika chanzo ni matokeo ya modeli yaliyotokana na vipimo vya mizunguko na trafiki ya kumbukumbu. Hazipaswi kulinganishwa moja kwa moja na nishati iliyopimwa katika mikrokontrota halisi kwa kuunganisha voltage/mkondo.
Faida ya Kumbukumbu Inagharimu Kiasi Gani cha Kasi?
Kwa mujibu wa benchmark ya chanzo, Merkle-LWE hutumia mizunguko 2.906.456 katika uzalishaji wa ufunguo, 809.636 katika ufungashaji na 814.588 katika ufunguaji wa kapsuli; ikilinganishwa na msingi wa jadi wa LWE, hatua zote tatu zinahitaji ukokotoaji zaidi na chanzo kinaripoti ongezeko la takribani %100,7 katika jumla ya mizunguko ya CPU, yaani faida kuu ya usanifu si kasi bali kubadilisha kumbukumbu kuwa ukokotoaji.
| Operesheni | Merkle-LWE | LWE ya jadi | Ongezeko lililoripotiwa katika chanzo |
|---|---|---|---|
| Uzalishaji wa ufunguo | mizunguko 2.906.456 | mizunguko 1.721.344 | %68,8 |
| Encapsulation | mizunguko 809.636 | mizunguko 268.516 | %201,5 |
| Decapsulation | mizunguko 814.588 | mizunguko 267.492 | %204,6 |
Mzigo mkubwa zaidi kwa uwiano unaonekana katika hatua za encapsulation na decapsulation. Chanzo kinahusisha sababu yake na uundaji wa matriki kutoka seed, uundaji upya wa siri haba, operesheni za hash na hatua za uthibitishaji za Merkle.
Chanzo hakidai wazi kwamba Merkle-LWE ni ya haraka kuliko skimu zilizopo za baada ya quantum. Lengo la usanifu ni vifaa ambavyo kasi inaweza kuwekwa katika nafasi ya pili lakini hifadhi ndiyo kizuizi muhimu.
Tofauti ndani ya chanzo katika matumizi ya flash
| Sehemu ya chanzo | Jumla ya Merkle-LWE iliyoripotiwa |
|---|---|
| Maelezo ya Kielelezo 8 | 27.136 B = 26,5 KB |
| Ulinganisho wa Kielelezo 9 | 25.088 B = 24,5 KB |
| Ufaafu wa jukwaa katika Kielelezo 10 | 29,5 KB |
Chanzo hakielezi kwa nini thamani tatu ni tofauti. Kwa hiyo, hakuna moja kati yake iliyokubaliwa kimya kimya kuwa “sahihi”.
Tofauti ndani ya chanzo katika matumizi ya peak RAM
Maandishi karibu na Kielelezo 11 yanaripoti kwa Merkle-LWE wakati wa uzalishaji wa ufunguo na encapsulation 14.336 B, na wakati wa decapsulation 10.240 B ya peak RAM. Thamani hizi ziko takribani katika kiwango cha 14,0 KB na 10,0 KB.
Kinyume chake, katika sehemu ya baadaye ya memory-computation trade-off, kwa pointi za data za Merkle-LWE imetolewa 0,8–1,8 KB kama wigo wa peak RAM. Ingawa matokeo haya mawili yameandikwa kama kipimo kilekile cha “peak RAM”, chanzo hakielezi kwa nini yanatofautiana katika wigo wa kipimo au njia ya hesabu.
Kwa hiyo, kutoa hitimisho moja kwamba “Merkle-LWE hutumia hakika 1 KB RAM” au “hutumia hakika 14 KB” hakuungwi mkono vya kutosha na chanzo.
Trafiki ya kumbukumbu iliyoripotiwa katika chanzo
Katika uzalishaji wa ufunguo, chanzo kinaripoti vitengo 302.176 vya ufikiaji wa kumbukumbu kwa Merkle-LWE na 789.504 kwa LWE ya jadi na kutafsiri hili kuwa punguzo la takribani %61,7. Thamani za encapsulation 529.088 na 531.520 ziko karibu sana.
Kwa decapsulation, chanzo kinatoa Merkle-LWE kuwa 279.264 na LWE ya jadi kuwa 6.240, na katika maandishi kinalitaja hili kama “ongezeko la %95,5”. Hata hivyo, nambari hizi mbili ghafi hazionekani kuendana moja kwa moja na kauli hiyo ya asilimia. Verianla haitengenezi asilimia yake iliyosahihishwa kama matokeo ya chanzo; inaonyesha tu kutokuwiana kati ya thamani ghafi na asilimia ya chanzo.
Tabia ya cache
Chanzo kinaonyesha kwamba faida ya kumbukumbu si bure kwa upande wa cache. Ufikiaji wa vigawo haba na kusafiri katika mti wa Merkle huunda mifumo ya ufikiaji wa kumbukumbu isiyo na mpangilio zaidi.
Katika uchanganuzi mmoja wa chanzo, viwango vya L1 hit kwa Merkle-LWE vimeripotiwa kuwa %86,9 katika uzalishaji wa ufunguo, %89,3 katika encapsulation na %41,0 katika decapsulation. Msingi wa jadi wa LWE wenye msongamano unaonyesha lokaliti ya cache iliyo juu zaidi katika modeli husika kutokana na ufikiaji ulio na mpangilio zaidi.
Matokeo haya yanaonyesha kwamba muundo mdogo wa data ya kudumu haumaanishi moja kwa moja tabia bora ya cache. Usanifu unapoondoa baadhi ya miundo ya data, unaweza kuunda ufikiaji mgumu zaidi wakati wa utekelezaji kwa sababu ya uundaji upya na ufikiaji haba.
Mlinganyo (5) — Muda wa ukokotoaji wa kriptografia katika handshake ya IoT
Katika hesabu hii, 809.636 ni idadi ya mizunguko ya encapsulation na 814.588 ya decapsulation. \(168\times10^6\) inawakilisha masafa wakilishi ya saa ya Cortex-M4 ya mizunguko milioni 168 kwa sekunde.
Kwa kuwa denominator ni mizunguko/sekunde na numerator ni mizunguko, vitengo vya mizunguko vinafutika na matokeo yanatoa muda katika sekunde. Chanzo kinaripoti matokeo kuwa takribani 9,67 ms.
Kisha chanzo kinaongeza kwa muunganisho wa bila waya wenye nguvu ndogo kama IEEE 802.15.4 50 ms RTT ya kudhaniwa na kuhesabu jumla ya takribani 60 ms ya muda wa handshake. Hii 60 ms si jaribio lililopimwa moja kwa moja kwenye stack kamili ya DTLS/TLS, bali ni modeli analitiki ya protokoli iliyoundwa kutokana na mizunguko ya kriptografia iliyopimwa na RTT ya mtandao iliyodhaniwa.
Kwa nini uchanganuzi wa protokoli unapaswa kusomwa kwa tahadhari?
Katika sehemu ya protokoli, chanzo kinatumia ciphertext ya Level 3 ya 160 B na ciphertext ya Kyber-768 ya 1088 B, na kutafsiri punguzo la ukubwa la takribani %85. Hata hivyo, aya hiyo hiyo inaandika kwamba ciphertext ya Merkle-LWE ina Merkle authentication path ya 448 B. Kwa kuwa ndani ya muundo wa jumla wa 160 B haiwezekani kuwe na sehemu ndogo ya 448 B, ukubwa halisi wa kinambari wa faida ya bandwidth hauwezi kuzalishwa upya kwa kujitegemea kabla ya spesifikesheni ya protokoli kufafanuliwa.
Matokeo ya tathmini ya nishati
Katika modeli ya nishati, chanzo kinadai kwamba ingawa Merkle-LWE hufanya operesheni nyingi zaidi za CPU/PRNG, inaweza kutoa faida katika nishati ya jumla kwa kupunguza baadhi ya gharama kubwa za kumbukumbu na hash. Chanzo pia kinaripoti uhusiano chanya kati ya trafiki ya kumbukumbu na nishati.
Hata hivyo, matokeo haya yanategemea vigawo vya nishati vinavyotokana na fasihi. Ikiwa mchakato wa utengenezaji wa mikrokontrota, usanifu wa flash, muundo wa RAM, masafa ya saa, voltage au vifaa vya redio ni tofauti, uwiano wa nishati unapaswa kupimwa kando.
Kipimo cha usahihi kilifanywaje?
Chanzo kinasema kwamba katika viwango vyote vitatu vya usalama kilifanya zaidi ya majaribio 66.600 ya KEM. Siri za pamoja zilizozalishwa mwishoni mwa encapsulation na decapsulation zililinganishwa bit kwa bit.
Kwa viwango vya kushindwa, kipindi cha kujiamini cha %95 kilihesabiwa kwa mbinu ya Wilson score, na katika majaribio ambayo hakuna kosa lililoonekana ilitumika “rule of three”. Mfano wa kufundisha uliotolewa na chanzo ni kwamba kwa majaribio 50.000 yenye kosa sifuri, kikomo cha juu ni takribani \(3/50000=6,0\times10^{-5}\).
Kosa sifuri lililoonekana linamaanisha nini?
Kutokuwepo kwa kosa lolote katika zaidi ya vipimo 66.600 kunamaanisha kwamba idadi ya makosa yaliyoonekana ndani ya sampuli iliyoj aribiwa ilikuwa sifuri. Thamani hii haionyeshi kwamba uwezekano halisi wa kosa ni sifuri kihisabati.
Chanzo kinaeleza katika Kielelezo 28 kwamba, kwa kiwango cha kujiamini cha %95, ili kuthibitisha kitakwimu kizingiti cha kosa cha \(10^{-6}\), takribani vipimo 3.000.000 vinahitajika. Kauli hii inasisitiza kwa usahihi kwamba idadi ndogo ya vipimo visivyo na kosa haiwezi peke yake kuthibitisha viwango vidogo sana vya kosa.
Tatizo la kizingiti katika Kielelezo 26 na Kielelezo 27 cha chanzo
Katika maelezo ya Vielelezo 26 na 27 vya chanzo, kizingiti kinachokubalika cha kosa kinatumika kama \(10^{-6}\). Kwa upande mwingine, maelezo ya Kielelezo 27 yanatoa thamani kama 0,0001 kwa LWE ya jadi na “chini ya 0,0003” kwa Merkle-LWE/wagombea wa NIST, na yanaeleza kwamba Merkle-LWE na wagombea wa NIST wako chini ya kizingiti.
Kwa kuwa \(0,0003=3\times10^{-4}\), kauli hii haiendani moja kwa moja kwa wakati mmoja na kizingiti cha \(10^{-6}\). Aidha, hitaji la takribani majaribio milioni tatu katika Kielelezo 28 linakubali wazi kwamba vipimo 66.600 havitoshi kuthibitisha mpaka wa \(10^{-6}\) kwa kiwango cha kujiamini cha %95.
Kwa hiyo, hitimisho salama zaidi na linaloaminifu kwa chanzo ni hili: hakuna kosa la decapsulation lililoonekana katika zaidi ya majaribio 66.600 yaliyofanyiwa majaribio; hata hivyo, uthibitishaji wa kitakwimu unaohitajika kwa kiwango cha \(10^{-6}\) bado haujakamilika.
Matokeo yanayoungwa mkono na utafiti
- Merkle-LWE inawasilisha usanifu mseto wa Module-LWE KEM unaofanya matumizi ya kumbukumbu kuwa lengo kuu la usanifu.
- Katika Jedwali 1 la chanzo, ufunguo wa umma umefafanuliwa kuwa 96 B katika viwango vyote vya usalama.
- Kwa muundo wa siri uliotawanyika, thamani \(w=48,64,80\) zimetumiwa.
- Lengo ni kuzalisha upya matrisi inapohitajika kutoka seed kwa kutumia ChaCha20.
- Uchanganuzi wa usalama wa chanzo unatumia kwa pamoja dhana za ugumu wa Module-LWE, usalama wa PRF na ahadi za hash zinazotegemea SHA3.
- Kwa Level 1, makadirio ya chini kabisa ya usalama halisi katika Jedwali 2 yako juu ya lengo.
- Kwa Level 3 na Level 5, makadirio ya chini kabisa katika Jedwali 2 yako chini ya malengo ya NIST yaliyotajwa.
- Matokeo ya benchmark yanaonyesha kwamba Merkle-LWE hutumia mizunguko mingi zaidi ya CPU kuliko msingi wa LWE wa jadi.
- Chanzo kinaeleza wazi kwamba usanifu haudai ubora wa kasi.
- Hakuna kosa la decapsulation lililoripotiwa katika zaidi ya vipimo 66.600.
- Uchanganuzi wa kitakwimu wa chanzo chenyewe unaeleza kwamba takribani majaribio milioni tatu yanahitajika kwa kiwango cha \(10^{-6}\).
Matokeo ambayo utafiti hauyaungi mkono au bado haujayathibitisha kwa uhakika
- Haiwezi kuhitimishwa kwamba Merkle-LWE ni KEM iliyosanifishwa na NIST.
- Utafiti haudai kwamba Merkle-LWE inapaswa kuchukua nafasi ya Kyber.
- Kwa Level 3 na Level 5, haiwezi kusemwa kwamba viwango vya chini vya usalama vilivyolengwa katika Jedwali 2 vimetimizwa kwa nambari.
- Bila kutatua kutokuwiana kwa ukubwa wa ciphertext ndani ya chanzo, faida kamili ya kipimo cha bandwidth ya mtandao haiwezi kutumiwa kama nambari iliyothibitishwa kwa kujitegemea.
- Jumla za RAM na flash ndani ya chanzo haziwezi kuunganishwa kama wasifu mmoja na wa uhakika wa utekelezaji.
- Matokeo ya nishati si vipimo vya moja kwa moja vya nishati kwenye kifaa halisi; yanategemea modeli.
- Majaribio 66.600 yasiyo na kosa hayathibitishi kwamba uwezekano halisi wa kosa ni sifuri.
- Majaribio 66.600 hayatoshi kuthibitisha mpaka wa kosa wa \(10^{-6}\) kwa kiwango cha kujiamini cha %95.
- Uandishi wa msimbo wa muda thabiti haumaanishi kwamba mashambulizi yote ya idhaa ya kando ya nguvu/EM/cache/fault yameondolewa.
- Modeli ya uchanganuzi ya handshake ya DTLS/TLS si jaribio la uwanjani katika ulimwengu halisi la safu kamili ya itifaki.
Matatizo makuu ya uwezo wa kurudia ndani ya chanzo
| Mada | Sehemu moja ya chanzo | Sehemu nyingine ya chanzo | Mkabala wa Verianla |
|---|---|---|---|
| Data inayofungwa na mzizi wa Merkle | Vigawo vya siri \(s\) | Miundo teule ya kosa | Hakuna uwakilishi mmoja uliobuniwa. |
| Mahali pa mzizi wa Merkle | Ufunguo wa umma \(seed_A || root_s\) | Katika sehemu moja, hali ya ndani ya ufunguo wa siri | Tofauti ya spesifikesheni iliachwa wazi. |
| Seti ya wagombea wa kosa | Jedwali 4: 128 | Baadhi ya maelezo: 128 au 256 | Zilitenganishwa kulingana na mahali katika chanzo. |
| Kikomo cha kigawe | Jedwali 4: \(\beta=1\) | Katika maelezo ya Level 1, mfano kutoka −4 hadi +4 | Hakuna marekebisho ya kimya ya kigezo yaliyofanywa. |
| Ciphertext | Jedwali 1: 128/160/192 B | Vipengele vidogo vikubwa zaidi katika maelezo ya kielelezo/itifaki | Hakuna “ukubwa sahihi” mmoja uliotangazwa. |
| Flash | 26,5 KB | 24,5 KB na 29,5 KB | Thamani zote tatu ziliripotiwa kando. |
| Peak RAM | kiwango cha 14.336 / 10.240 B | 0,8–1,8 KB | Hazikuunganishwa kwa sababu upeo wa kipimo haujaelezwa. |
| Ongezeko la jumla la CPU | Sehemu moja: %100,7 | Grafu nyingine ya muhtasari: takribani %100,5 | Tofauti ya kuzungusha/kuripoti iliwekwa wazi. |
| Kizingiti cha kosa | Lengo \(10^{-6}\) | Thamani za “<0,0003” zinatafsiriwa kuwa chini ya kizingiti | Kutokuwiana kwa nambari kulielezwa wazi. |
Mahitaji ya utafiti wa baadaye
Chanzo kinaonyesha kupunguza mzigo wa ukokotoaji kama mojawapo ya malengo makuu ya utafiti wa baadaye. Kuratibu kwa ufanisi zaidi uzalishaji upya wa matrisi, ufikiaji wa siri uliotawanyika na uthibitishaji wa Merkle; uorodheshaji unaozingatia cache na uharakishaji wa maunzi kwa PRNG ni miongoni mwa mwelekeo unaopendekezwa.
Waandishi pia wanaeleza kwamba benchmarking inapaswa kufanywa kwenye majukwaa mbalimbali zaidi ya maunzi, ikijumuisha FPGA, GPU na vichapuzi maalumu vya kriptografia.
Kufanya kazi pamoja na mifumo iliyosanifishwa ya kriptografia baada ya quantum, ujumuishaji katika safu halisi za itifaki kama TLS na VPN, pamoja na uwezo wa kushirikiana, pia ni maeneo ya wazi ya utafiti.
Kwa upande wa idhaa ya kando, inapendekezwa tathmini ya kina zaidi ya ufikiaji uliotawanyika na unaotegemea mti dhidi ya uvujaji unaotegemea cache licha ya utekelezaji wa muda thabiti; pia kupima uthabiti wa uthibitishaji wa Merkle na uzalishaji upya wa siri uliotawanyika chini ya fault injection.
Kwa upande wa usahihi, chanzo kinaeleza kwamba vipimo vya muda mrefu vinavyofikia mamilioni ya majaribio, mifumo wazi ya benchmarking na seti za data zinazoweza kurudiwa ni muhimu. Pendekezo hili ni muhimu hasa kwa sababu majaribio 66.600+ ya sasa yasiyo na kosa hayatoshi kuthibitisha kitakwimu viwango vya chini sana vya kosa kama \(10^{-6}\).
Dokezo la Chanzo na Mbinu
Kichwa asilia: A Hybrid Module-LWE and Hash-Based Framework for Memory-Efficient Post-Quantum Key Encapsulation
Waandishi: Elmin Marevac; Esad Kadušić; Nataša Živić; Sanela Nesimović; Christoph Ruland.
Mpangilio wa waandishi: Elmin Marevac ni mwandishi wa kwanza, Esad Kadušić wa pili, Nataša Živić wa tatu, Sanela Nesimović wa nne, na Christoph Ruland wa tano.
Mwandishi anayewajibika: Nataša Živić.
Taasisi 1: Polytechnic Faculty, University of Zenica, Zenica, Bosnia and Herzegovina.
Taasisi 2: Faculty of Educational Sciences, University of Sarajevo, Sarajevo, Bosnia and Herzegovina.
Taasisi 3: Faculty of Digital Transformation, Leipzig University of Applied Sciences, Leipzig, Germany.
Taasisi 4: Chair of Digital Communication Systems, University of Siegen, Siegen, Germany.
Mchango sawa: Hakuna tamko la uandishi wa kwanza wa pamoja au mchango sawa katika chanzo.
Jarida: Cryptography.
Mchapishaji: MDPI, Basel, Switzerland.
Juzuu / namba / makala: 10(3), Article 30.
DOI: 10.3390/cryptography10030030.
Tarehe ya kuwasilishwa: 14 Februari 2026.
Marekebisho: 26 Aprili 2026.
Kukubaliwa: 28 Aprili 2026.
Kuchapishwa: 3 Mei 2026.
Aina ya chanzo: Makala ya utafiti iliyochapishwa; inaunganisha usanifu wa usanifu wa kriptografia, uchanganuzi rasmi wa usalama, utekelezaji wa programu, benchmarking ya majaribio na uundaji modeli wa uchanganuzi wa itifaki.
Mapitio ya wenzao: Cryptography ni jarida linalopitiwa na wenzao lililochapishwa na MDPI; nyenzo rasmi za jarida zinaeleza mchakato wa single-blind peer-review.
Hali ya preprint: Hati iliyochakatwa katika maudhui haya ya Verianla ni toleo la jarida lililochapishwa.
Leseni: Creative Commons Attribution 4.0 International (CC BY 4.0).
Dokezo la toleo: PDF ya chanzo iliyopakiwa ina kurasa 70. Rekodi ya sasa ya makala ya MDPI inaonyesha kurasa 68. MDPI Version Notes zinaonyesha kwamba baada ya Version of Record ya 3 Mei 2026 kulikuwa na sasisho la PDF tarehe 18 Mei 2026 na sasisho la HTML tarehe 3 Septemba 2026. PDF ya kurasa 70 iliyopakiwa na mtumiaji ilitumika kama chanzo kikuu cha kisayansi.
Toleo maalum: Advances in Post-Quantum Cryptography.
Mbinu kuu: Merkle-LWE KEM inayojumuisha Module-LWE inayotegemea seed, uwakilishi wa ufunguo wa siri uliotawanyika, ahadi za Merkle zinazotegemea SHA3 na ubadilishaji wa Fujisaki–Okamoto.
Dhana kuu za usalama: Ugumu wa Module-LWE, usalama wa ChaCha20 PRF na ukinzani wa mgongano wa SHA3-512; upunguzaji rasmi wa IND-CCA unawasilishwa chini ya Random Oracle Model.
Majukwaa makuu ya majaribio: Mfumo unaotegemea AMD Ryzen 5 5600X wa x86-64 na jukwaa lililopachikwa la darasa la ARM Cortex-M4. Sehemu ya matokeo ya majaribio ya chanzo pia inataja kadi ya NUCLEO-L4R5ZI.
Mbinu ya upimaji wa CPU: rdtsc kwa x86-64, DWT cycle counter kwa Cortex-M4; baada ya warm-up 100 kwa kila operesheni, vipimo 1000 na kuripoti mizunguko ya median.
Upimaji wa kumbukumbu: Ukubwa wa ELF .text, Valgrind Massif, linker map na tathmini za stack/RAM zinazotegemea watermark.
Nishati: Si kipimo cha moja kwa moja cha umeme; imeundwa kwa modeli kutoka vigawo vya µJ vinavyotokana na fasihi kwa mizunguko ya CPU, trafiki ya kumbukumbu, shughuli za hash na PRNG.
Kipimo cha usahihi: Zaidi ya majaribio 66.600 ya randomized KEM katika viwango vitatu vya usalama; ulinganisho bit-kwa-bit wa siri za pamoja; muda wa kujiamini wa %95 wa Wilson score na mpaka wa juu wa rule-of-three katika hali ya kutokuwa na kosa.
Ufadhili: Chanzo kinaripoti kwamba utafiti haukupokea ufadhili wa nje.
Upatikanaji wa data: Chanzo kinaeleza kwamba data zinaweza kupatikana kutoka kwa mwandishi anayewajibika kwa ombi kutokana na utafiti unaoendelea ambao haujafunguliwa.
Mgongano wa maslahi: Waandishi wanatangaza kwamba hakuna mgongano wa maslahi.
Michango ya waandishi: Uundaji wa dhana E.M., E.K. na N.Ž.; mbinu E.M., E.K. na N.Ž.; programu E.M.; uthibitishaji E.M., E.K., N.Ž., S.N. na C.R.; uchanganuzi rasmi wa waandishi wote watano; utafiti E.M., E.K. na N.Ž.; rasilimali E.M., E.K., S.N. na C.R.; uratibu wa data E.M. na E.K.; rasimu ya kwanza E.M. na E.K.; mapitio/uhariri E.M., E.K., S.N. na C.R.; uonyeshaji E.M., E.K. na N.Ž.; usimamizi N.Ž., S.N. na C.R.; usimamizi wa mradi E.M. na C.R.; upatikanaji wa ufadhili E.K. na N.Ž., kama ilivyoripotiwa.
Mipaka mikuu ya kimetodolojia na uripoti: Data inayofungwa na mzizi wa Merkle na mahali pake katika ufunguo zimeelezwa tofauti katika sehemu mbalimbali; kuna tofauti za vigezo katika seti ya wagombea wa kosa na kikomo cha kigawe; ukubwa wa ciphertext hauendani na maelezo ya njia ya Merkle; jumla tofauti zimetolewa katika sehemu tofauti kwa flash na peak RAM; makadirio ya chini kabisa ya usalama halisi kwa Level 3 na Level 5 yako chini ya malengo katika jedwali la chanzo; nishati haikupimwa moja kwa moja; vipimo 66.600+ visivyo na kosa havitoshi kuthibitisha kiwango cha kosa cha \(10^{-6}\) kwa kiwango cha kujiamini cha %95; chanzo chenyewe kinaeleza kwamba takribani majaribio milioni tatu yanahitajika.
Kikomo cha tafsiri: Utafiti hauwasilishi Merkle-LWE kama kiwango cha viwanda kilichothibitishwa kinachochukua nafasi ya Kyber/ML-KEM iliyosanifishwa. Matokeo yaliyopatikana yanapaswa kutathminiwa katika wigo wa prototipu ya utafiti, modeli ya usalama iliyotajwa, vigezo vya chanzo, mpangilio wa benchmarking na dhana za uchanganuzi.
Acha maoni
Anwani yako ya barua pepe haitachapishwa. Sehemu za lazima zimewekewa alama ya *