1. Gabatarwa
Manajoji na kalmar sirri (PMs) muhimman kayan aiki ne don haɓaka tsaro ta hanyar ba da damar amfani da ƙaƙƙarfan, na musamman kalmar sirri ba tare da nauyin tunawa ba. Duk da fa'idodinsu, amincewar mai amfani har yanzu babban cikas ne ga karɓuwa. Wannan takarda ta magance wani muhimmin fasali wanda ke tasiri amana: tsarin ƙirƙirar kalmar sirri bazuwar. Muna ba da shawarar ingantaccen aiwatarwa na tunani ta amfani da tsarin EasyCrypt don tabbatar da daidaiton aiki da kaddarorin tsaro, da nufin kafa ingantacciyar ma'auni don ƙirƙirar kalmar sirri a cikin PMs.
2. Hanyoyin Ƙirƙirar Kalmar Sirri na Yanzu
Binciken ya binciki manajoji na kalmar sirri 15, tare da cikakken bincike da aka mayar da hankali kan misalai guda uku da aka fi amfani da su, na buɗe tushe: Manajan Kalmar Sirri na Google Chrome, Bitwarden, da KeePass. Manufar ita ce fahimtar hanyoyin gama-gari da gano wuraren da za a tabbatar da tsari.
2.1 Manufofin Tsarin Kalmar Sirri
Manajoji na kalmar sirri suna ba masu amfani damar ayyana manufofin da ke takura ƙirƙirar kalmar sirri. Waɗannan manufofin suna ƙayyade tsayi, saitin haruffa (misali, ƙananan haruffa, manyan haruffa, lambobi, haruffa na musamman), da mafi ƙarancin/matsakaicin faruwa a kowane saiti. Tebur 1 a cikin PDF ya ƙididdige takamaiman zaɓuɓɓukan da ke akwai a Chrome, Bitwarden, da KeePass, yana nuna bambance-bambance a cikin saitin haruffan da aka yarda da su da kuma ƙayyadaddun manufofi (misali, KeePass yana ba da damar ayyana saitin haruffa na al'ada da keɓancewa).
2.2 Ƙirƙirar Kalmar Sirri Bazuwar
Babban tsarin, kamar yadda Chrome ya misalta, ya ƙunshi matakai da yawa: 1) Ƙirƙiri haruffa bazuwar daga saiti tare da ƙayyadaddun mafi ƙarancin faruwa. 2) Cika sauran tsawon ta hanyar zana haruffa daga haɗin dukkan saiti waɗanda ba su kai matsakaicin ƙidaya ba. 3) Aiwatar da bazuwar juzu'i zuwa kirtani na ƙarshe. Wannan tsari dole ne ya daidaita bazuwar tare da bin manufofi.
3. Hanyar Tabbatar da Tsari
Takardar tana amfani da mataimakin hujja na EasyCrypt don tsarawa da tabbatar da tsarin ƙirƙirar kalmar sirri. Tabbatarwa ta mayar da hankali kan kaddarori biyu masu mahimmanci:
- Daidaiton Aiki: Tsarin koyaushe yana samar da kalmar sirri wacce ta gamsar da manufar tsarin da mai amfani ya ayyana.
- Tsaro (Bazuwar): Kalmar sirrin da aka fitar ba za a iya bambanta ta ta hanyar lissafi daga ainihin kirtani bazuwar mai tsayi ɗaya da aka zana daga haruffan da manufar ta ayyana, tare da ɗaukan mai ƙirƙirar lamba bazuwar mai tsaro na sirri (CSPRNG). An ƙirƙira wannan ta amfani da hanyar hujjar sirri ta tushen wasa.
Wannan hanyar tsari ta wuce gwaji na al'ada, tana ba da garantin lissafi game da halayen tsarin.
4. Cikakkun Bayanai na Fasaha da Tsarin Lissafi
An tsara kaddarorin tsaro a matsayin wasan sirri. Bari $\mathcal{A}$ ya zama maƙiyi na lokaci-lokaci na polynomial (PPT). Bari $\text{Gen}(policy)$ ya zama tsarin ƙirƙirar kalmar sirri kuma $\text{Random}(policy)$ ya zama mai ƙirƙira mai kyau wanda ke fitar da kirtani bazuwar daidai daga dukkan kirtani masu gamsar da $policy$. Fa'idar $\mathcal{A}$ wajen bambanta tsakanin su an ayyana shi kamar haka:
$\text{Adv}_{\text{Gen}}^{\text{dist}}(\mathcal{A}) = |\Pr[\mathcal{A}(\text{Gen}(policy)) = 1] - \Pr[\mathcal{A}(\text{Random}(policy)) = 1]|$
Ana ɗaukar tsarin a matsayin mai tsaro idan wannan fa'idar ba ta da mahimmanci ga dukkan maƙiyan PPT $\mathcal{A}$, ma'ana $\text{Adv}_{\text{Gen}}^{\text{dist}}(\mathcal{A}) \leq \epsilon(\lambda)$, inda $\epsilon$ ke da ƙarancin aiki a cikin sigar tsaro $\lambda$. Hujjar a cikin EasyCrypt tana gina jerin wasanni (Game$_0$, Game$_1$, ...) don iyakance wannan fa'ida, sau da yawa suna dogaro da zaton cewa PRG na tushe yana da tsaro.
5. Sakamakon Gwaji da Bayanin Ginshiƙi
Yayin da PDF ta fi mayar da hankali kan ƙayyadaddun tsari da dabarun hujja, sakamakon aiki shine ingantaccen aiwatarwa na tunani. "Gwaji" shine nasarar kammala hujjar tsari a cikin yanayin EasyCrypt. Wannan yana aiki azaman tsarin daidaito.
Bayanin Ginshiƙi na Ra'ayi: Taswirar kwarara za ta yi tasiri sosai wajen ganin tsarin da aka tabbatar:
- Fara: Mai amfani ya shigar da manufa (tsayi L, saitin haruffa S1...Sn tare da ƙidaya min/max).
- Mataki 1 - Cika Mafi Ƙarancin: Ga kowane saiti Si tare da min_i > 0, ƙirƙiri haruffa bazuwar min_i daga Si. Ƙididdiga: $\sum min_i$ haruffa da aka ƙirƙira.
- Mataki 2 - Cika zuwa Tsayi L: Bari $\text{Saura} = L - \sum min_i$. Yayin da Saura > 0: Ƙirƙiri tafki daga dukkan saiti Si inda ƙidaya_yanzu(Si) < max_i. Zaɓi harafi bazuwar daga wannan tafkin. Rage Saura.
- Mataki 3 - Rarraba: Aiwatar da bazuwar juzu'i mai tsaro na sirri (Fisher-Yates shuffle) zuwa jerin haruffa L.
- Mataki 4 - Fitowa: Fitar da kirtani na ƙarshe da aka rarraba. Alamar bincike kore a wannan matakin an yiwa lakabi da "An Tabbatar da Tsari (EasyCrypt): Daidaito & Bazuwar".
6. Tsarin Bincike: Misalin Lamari
Yanayi: Tabbatar da cewa tsarin ya guje wa ɗan ƙaramin son zuciya lokacin da zaɓin "Keɓance haruffa masu kama da juna" (misali, keɓance 'l', 'I', 'O', '0') ya kasance mai aiki.
Yuwuwar Aibi (Ba tare da Tabbatarwa ba): Aiwatarwa marar hankali na iya fara ƙirƙirar kalmar sirri daga cikakken saiti sannan ta cire haruffan da aka keɓance, wanda zai iya haifar da gajeriyar kalmar sirri ko canza rarraba sauran saitin haruffa, keta manufar ko gabatar da son zuciya.
Hanyar Tabbatar da Tsari: A cikin EasyCrypt, za mu ƙayyade saitin haruffa a matsayin $\text{Alphabet}_{\text{final}} = \text{Alphabet}_{\text{full}} \setminus \text{ExcludedSet}$. Hujjar za ta nuna cewa tsarin ƙirƙirar (Matakai 1 & 2 na sama) yana ɗaukar samfuri daidai daga $\text{Alphabet}_{\text{final}}$ don saitin haruffan da suka dace, kuma ana kimanta ƙuntatawa na mafi ƙarancin/matsakaicin daidai da wannan raguwar saiti. Wannan yana kawar da aibi ta hanyar gini.
Kayan Aiki Ba na Lamba ba: Ƙayyadaddun tsari a cikin EasyCrypt don matakin zaɓin haruffa zai ayyana tafkin ɗaukar samfuri a hankali, yana tabbatar da cewa haruffan da aka keɓance ba su taɓa zama wani ɓangare na tushe ba.
7. Fahimtar Jigo & Ra'ayi na Mai Bincike
Fahimtar Jigo: Babban gudunmawar takardar ita ce canza tsarin amana don manajoji na kalmar sirri daga "da fatan tsaro ta hanyar bitar lamba da gwaji" zuwa "an tabbatar da tsaro ta hanyar lissafi ta hanyar tabbatar da tsari." Ya gano daidai mai ƙirƙirar kalmar sirri a matsayin maɓalli na amana—wani batu na gazawa guda ɗaya wanda, idan ya yi kuskure, yana lalata dukkan tsarin tsaro na manajan. Wannan aikin wani ɓangare ne na wani muhimmin yanayi amma ba a yaba da shi ba a cikin amfani da sirri, yana kama da ƙoƙari kamar tabbatar da tsarin yarjejeniyar TLS (Project Everest) ko ɗakunan karatu na sirri (HACL*).
Kwararar Hankali: Hujjar tana da inganci: 1) Amincewar mai amfani ta yi ƙasa saboda tsaro marar ganuwa. 2) Ƙirƙirar kalmar sirri wani muhimmin sashi ne mai rikitarwa wanda ke da saukin kamuwa da ƙananan kurakurai (misali, son zuciya, keta manufofi). 3) Hanyoyin tsari suna ba da tabbaci mafi girma. 4) EasyCrypt yana ba da ingantaccen tsari don wannan tabbatarwa. 5) Ingantaccen aiwatarwa na tunani na iya zama ma'auni na zinariya ga masana'antu.
Ƙarfi & Aibobi: Ƙarfi: Mayar da hankali kan wani takamaiman matsala mai tasiri yana da kyau. Amfani da EasyCrypt, kayan aiki balagagge don hujjojin tushen wasa, yana da aiki. Binciken ainihin hanyoyin PM na zahiri ya kafa binciken a aikace. Aibobi: Takardar takarda ce ta "zuwa"—ta kafa tushe amma ba ta gabatar da cikakkiyar, ingantacciyar aiwatarwa da aka gwada don dukkan manufofin babban PM ba. Ƙalubalen gaske shine rikitarwar manufofin kasuwanci na kalmar sirri (kamar zaɓuɓɓukan KeePass masu yawa), wanda zai iya fashewa a sararin tabbatarwa. Hakanan ya kauce wa babban abin da ke cikin ɗaki: tsarin tsarin PM na kewaye (UI, ƙwaƙwalwar ajiya, ajiya, cika kai) yana da mahimmanci daidai, kamar yadda binciken ƙungiyoyi kamar NCC Group suka lura.
Fahimta Mai Aiki: 1) Ga Masu Sayar da PM: Karɓi ko bincika wannan ingantaccen aiwatarwa na tunani. Fara da tabbatar da tsarin ƙirƙirar jigo, ko da cikakken injin manufar UI ya kasance ba a tabbatar da shi ba. 2) Ga Masu Binciken Tsaro: Nemi tabbatar da tsari don muhimman sassan sirri, ɗaukar shi azaman sabon kyakkyawan aiki mai kama da amfani da abubuwan sirri da aka bincika. 3) Ga Masu Bincike: Tsawaita wannan aikin don tabbatar da haɗin gwiwar mai ƙirƙira tare da CSPRNG da tushen tsarin tsaro—sarkar tana da ƙarfi kamar mafi raunin mahaɗinta. Ya kamata fannin ya yi niyya don ingantattun sassan ƙarshe-zuwa-ƙarshe, kama da hangen nesa na ƙarƙashin ingantattun tsarin aiki kamar seL4.
8. Hasashen Aikace-aikace da Alkiblar Gaba
Aikace-aikacen nan take shine ƙirƙirar ɗakin karatu mai saukowa, ingantacce don ƙirƙirar kalmar sirri wanda za'a iya haɗa shi cikin manajoji na kalmar sirri na buɗe tushe kamar Bitwarden da KeePass, yana haɓaka amincinsu sosai. Duban gaba:
- Daidaituwa: Wannan aikin zai iya ba da labari ga haɓaka daidaitaccen ma'auni (misali, IETF RFC) don ƙirƙirar kalmar sirri mai tsaro na sirri, kama da NIST SP 800-63B amma tare da aiwatarwa masu tabbatarwa.
- Haɗin Kai na Mai Bincike da OS: Manyan dandamali kamar Chrome, Firefox, da iOS/macOS Keychain za su iya karɓar ingantattun masu ƙirƙira, suna ɗaga matakin tsaro ga biliyoyin masu amfani.
- Ƙaddamarwa zuwa Sauran Yankuna: Hanyar tana shafi kai tsaye ga sauran buƙatun ƙirƙirar kirtani bazuwar, kamar ƙirƙirar maɓallan API, alamu, ko lambobin farfadowa.
- Bin Manufofi ta atomatik: Kayan aiki na gaba za su iya ƙirƙirar hujjojin tsari ta atomatik don manufofin da mai amfani ya keɓance, suna sa samun ƙirƙirar tabbaci mai girma ya zama mai sauƙi ga PMs na kamfani tare da buƙatun manufofi na musamman.
- Hanyoyin Haɗin kai: Haɗa tabbatar da tsari tare da fuzzing (misali, ta amfani da kayan aiki kamar AFL++) don sassan da ba a tabbatar da su ba na tarin PM na iya samar da kariya mai ƙarfi, mai yadudduka da yawa.
Alkiblar ƙarshe ita ce a hankali tabbatar da tsari na dukkan muhimman tsarin tsaro na tsarin, motsa masana'antu daga gyaran gyare-gyare zuwa tsaro da aka tabbatar da shi a gaba.
9. Nassoshi
- Grilo, M., Ferreira, J. F., & Almeida, J. B. (2021). Zuwa Tabbatar da Tsarin Hanyoyin Ƙirƙirar Kalmar Sirri da ake amfani da su a cikin Manajoji na Kalmar Sirri. arXiv preprint arXiv:2106.03626.
- Barthe, G., Dupressoir, F., Grégoire, B., Kunz, C., Schmidt, B., & Strub, P. Y. (2014). EasyCrypt: Tsarin don hujjojin sirri na tsari. Journal of Cryptology.
- Shoup, V. (2004). Jerin wasanni: kayan aiki don taming rikitarwa a cikin hujjojin tsaro. IACR Cryptology ePrint Archive.
- NCC Group. (2023). Binciken Tsaro na Manajan Kalmar Sirri. An samo daga https://www.nccgroup.com
- Klein, G., et al. (2009). seL4: Tabbatar da tsari na kernel OS. Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles.
- National Institute of Standards and Technology (NIST). (2017). Jagororin Shaidar Lambobi: Tabbatar da Gudanar da Rayuwa (SP 800-63B).