Hlavní heslo (algoritmus) - Master Password (algorithm)
Původní autoři | Maarten Billemont |
---|---|
První vydání | 15. června 2012 |
Stabilní uvolnění | 2.3 / 19. dubna 2015 |
Úložiště | https://gitlab.com/MasterPassword/MasterPassword |
Napsáno | Jáva, C, JavaScript |
Operační systém | Microsoft Windows a Unixový, počítaje v to OS X, iOS a Android |
K dispozici v | Angličtina |
Typ | Generátor hesel |
Licence | GNU General Public License |
webová stránka | masterpasswordapp |
Hlavní heslo je algoritmus navrhl Maarten Billemont pro vytváření jedinečných hesla reprodukovatelným způsobem. Liší se od tradičních správci hesel v tom, že hesla nejsou uložena na disku nebo v cloudu, ale jsou znovu vytvořena pokaždé pomocí informací zadaných uživatelem; nejdůležitější je jejich celé jméno, a hlavní heslo a jedinečný název služby, pro kterou je heslo určeno.[1]
Tím, že hesla nikde neuložíte, se tento přístup pokusí útočníkům ztížit jejich krádež nebo zachycení. Rovněž odstraňuje potřebu synchronizace mezi zařízeními a zálohování potenciálních databází hesel. Rovněž odstraňuje riziko a únik dat. Někdy se jim říká správci hesel bez synchronizace.
Algoritmus
Algoritmus zahrnuje následující parametry:[1]
- název: Celé jméno uživatele, použité jako a sůl. Je zvoleno celé jméno uživatele, protože poskytuje dostatečně vysokou úroveň entropie a je nepravděpodobné, že by na něj někdo zapomněl.
- hlavní heslo: Tajemství použité pro generování hlavního klíče.
- jméno stránky: Jedinečný název služby, pro kterou je heslo určeno. Holý název domény je obvykle dobrá volba.
- čelit: Celé číslo, které lze zvýšit, když služba požaduje nové heslo. Ve výchozím nastavení je to 0.
- typ_hesla: Typ hesla definuje délku a složení výsledného hesla, viz níže.
Generování hlavního klíče
Hlavní klíč je globální 64bajtový tajný klíč generovaný z tajného klíče uživatele hlavní heslo a solené jejich celým jménem. Sůl se používá, aby se zabránilo útokům na základě duhové stoly. The scrypt algoritmus, záměrně pomalý funkce odvození klíče, se používá pro generování hlavního klíče k vytvoření útok hrubou silou nemožné.
sůl = „com.lyndir.masterpassword“ + délka(název) + názevhlavní klíč = scrypt(hlavní heslo, sůl, 32768, 8, 2, 64)
Generování osiva šablony
Semeno šablony je tajemství specifické pro web v binární formě, generované z hlavního klíče, názvu webu a čítače pomocí HMAC-SHA256 algoritmus. Později je převeden na řetězec znaků pomocí šablon hesel. Semeno šablony dělá každé heslo jedinečným pro web a uživatele.
semínko = hmac_sha256(hlavní klíč, „com.lyndir.masterpassword“ + délka(jméno stránky) + jméno stránky + čelit)
Generování hesla
Semeno binární šablony se poté převede na jeden ze šesti dostupných typů hesel. Výchozí typ je Maximální bezpečnostní heslo, lze vybrat další, pokud zásady hesel služby neumožňují hesla tohoto formátu:
- Maximální bezpečnostní heslo (20 ASCII tisknutelné znaky )
- Dlouhé heslo (14 tisknutelných znaků ASCII)
- Střední heslo (8 tisknutelných znaků ASCII)
- Krátké heslo (4 tisknutelné znaky ASCII)
- Základní heslo (8 alfanumerických znaků)
- KOLÍK (4 číslice)
Implementace
Billemont také vytvořil několik svobodný software implementace algoritmu Master Password, licencovaného pod GPLv3.[2]:
- Aplikace pro iOS. Implementace iOS byla poprvé vydána v roce 2012.[3]
- Aplikace pro Mac OS X
- Aplikace pro Android
- Grafická desktopová aplikace napsaná v Jáva
- A příkazový řádek aplikace napsaná v C
- A plugin prohlížeče pro Firefox a Chrom - založené na prohlížečích[4][5]
- Webový klient napsaný v JavaScript.[6]
Reference
- ^ A b Billemont, Maarten. „Algoritmus hlavního hesla“. Archivovány od originál 9. prosince 2017. Citováno 8. května 2015.
- ^ "Licenční soubor úložiště MasterPassword". Citováno 15. května 2015.
- ^ Billemont, Maarten. „Verze 1.0.0“. Citováno 15. května 2015.
- ^ Doplněk Firefox od Masterpassword
- ^ Plugin Masterpassword pro Chrome
- ^ Billemont, Maarten. „Domovská stránka hlavního hesla“. Citováno 15. května 2015.