howsecureismypassword / hsimp Archived

Nyní můžete použít měřič síly hesla howsecureismypassword.net na svých vlastních stránkách.

About

Společnost How Secure is My Password? umožňuje uživatelům zjistit, za jak dlouho by někdo prolomil jejich heslo. Kontroluje také 10 000 nejčastějších hesel a řadu dalších kontrol (například opakující se řetězce, telefonní čísla a slova následovaná čísly).

Další verze

Toto je vanilla JS verze pluginu. K dispozici jsou také další verze:

  • jQuery Verze: howsecureismypassword/jquery
  • WordPress Verze: howsecureismypassword/wordpress

Instalace

bower install hsimp

CSS

Zkopírujte soubor build/hsimp.css do adresáře css a zahrňte jej do dokumentu <head>:

<link rel="stylesheet" href="/css/hsimp.css">

JavaScript

Zkopírujte soubor build/hsimp.min.js do adresáře js a zařaďte jej na konec dokumentu <body>:

<script src="/js/hsimp.min.js"></script><!-- Other scripts go here -->

Soubor hsimp.min.js lze volitelně použít s moduly AMD a Common JS pomocí názvu modulu hsimp. Pokud není nalezen žádný zavaděč modulů, bude zpřístupněna globální funkce hsimp.

Použití

Funkce hsimp přijímá dva argumenty: konfigurační objekt a element HTML <input>

hsimp({ options: { calculationsPerSecond: 1e10, // 10 billion, good: 31557600e3, // 1,000 years ok: 31557600 // 1 year }, outputTime: function (time, input) { console.log(time, input); }, outputChecks: function (checks, input) { console.log(checks, input); }}, document.getElementById("password"));

Konfigurace

Konfigurační objekt podporuje tři vlastnosti:

  • options: objekt možností, které ovlivňují výpočty
  • outputTime: funkce, které je předána délka času, který by byl potřebný k prolomení daného hesla
  • outputChecks: funkce, které je předán seznam výsledků různých kontrol

možnosti

V současné době jsou podporovány tři možnosti:

  • calculationsPerSecond: předpokládaný počet výpočtů za sekundu, které by cracker mohl provést (výchozí: 10e9 – 10 miliard)
  • good: minimální doba (v sekundách), za kterou by bylo možné prolomit „dobré“ (zelené) heslo (výchozí: 31557600e6 – 1 milion let)
  • ok:

outputTime

Funkci outputTime jsou předány dvě proměnné: čas, který by byl potřebný k prolomení hesla (jako lidsky čitelný řetězec), a (volitelně) vstup, na který se vztahuje.

var renderTime = function (time, input) { document.getElementById("password-strength").innerHTML = time;}hsimp({ outputTime: renderTime }, document.getElementById("password"));

outputChecks

Funkci outputChecks jsou předány dvě proměnné: pole výsledků kontrol a (volitelně) vstup, na který odkazuje.

Každý výsledek kontroly je objekt se třemi vlastnostmi:

  • name: název/název kontroly
  • message: nějaký vysvětlující text
  • level:
{ name: "Length: Very Short", message: "Your password is very short. The longer a password is the more secure it will be.", level: "warning"}

Jazyk

Jazykové soubory můžete aktualizovat pomocí následujících metod, z nichž každá přijímá objekt:

hsimp.setDictionary(lang)

Nastaví hodnoty pro „okamžitě“ a „navždy“. Viz https://github.com/howsecureismypassword/modules-main/blob/develop/dictionary.json

hsimp.setPeriodDictionary(lang)

Nastavuje periody (např. sekundy, dny, roky atd.). Viz https://github.com/howsecureismypassword/modules-period/blob/develop/period-dictionary.json

hsimp.setNamedNumberDictionary(lang)

Nastaví názvy čísel. Viz https://github.com/howsecureismypassword/modules-named-number/blob/develop/named-number-dictionary.json

hsimp.setCheckerDictionary(lang)

Nastaví znění různých kontrol. Viz https://github.com/howsecureismypassword/modules-checker/blob/develop/checker-dictionary.json

Currying

Funkce hsimp podporuje currying. To znamená, že můžete jednou nastavit volby a pak pomocí vrácené funkce nastavit více než jeden vstup:

var attachHSIMP = hsimp({ // shared options here});attachHSIMP(document.getElementById("input-1"));attachHSIMP(document.getElementById("input-2"));

Licence

Licence MIT (MIT)

Copyright (c) 2015, Mark Nicholas Wales / Small Hadron Collider

Povolení je tímto uděleno zdarma každé osobě, která získá kopii tohoto softwaru a souvisejících dokumentačních souborů („software“), nakládat se Softwarem bez omezení, včetně práva používat, kopírovat, upravovat, slučovat, publikovat, distribuovat, poskytovat sublicence a/nebo prodávat kopie Softwaru, a umožnit osobám, kterým je Software poskytnut, aby tak činily za následujících podmínek:

Výše uvedené oznámení o autorských právech a toto oznámení o povolení musí být obsaženo ve všech kopiích nebo podstatných částech softwaru.

SOFTWARE JE POSKYTOVÁN „TAK, JAK JE“, BEZ JAKÝCHKOLI ZÁRUK, VÝSLOVNÝCH A PŘEDPOKLÁDANÝCH, VČETNĚ, NIKOLI VŠAK VÝLUČNĚ, ZÁRUK PRODEJNOSTI, VHODNOSTI PRO URČITÝ ÚČEL A NEPORUŠOVÁNÍ PRÁV. AUTOŘI ANI DRŽITELÉ AUTORSKÝCH PRÁV V ŽÁDNÉM PŘÍPADĚ NENESOU ODPOVĚDNOST ZA JAKÉKOLI NÁROKY, ŠKODY NEBO JINOU ODPOVĚDNOST, AŤ UŽ SMLUVNÍ, DELIKTNÍ NEBO JINOU, VYPLÝVAJÍCÍ ZE SOFTWARU, Z NĚJ NEBO V SOUVISLOSTI S NÍM NEBO S JEHO POUŽÍVÁNÍM ČI JINÝM NAKLÁDÁNÍM S NÍM.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.