howsecureismypassword / hsimp Arhivat

Acum puteți folosi contorul de rezistență a parolei howsecureismypassword.net pe propriile site-uri.

Despre

În loc să spuneți doar că o parolă este „slabă” sau „puternică”, How Secure is My Password? le permite utilizatorilor dvs. să știe cât timp i-ar lua cuiva să le spargă parola. De asemenea, verifică în funcție de primele 10.000 cele mai comune parole, precum și o serie de alte verificări (cum ar fi șiruri repetate, numere de telefon și cuvinte urmate de numere).

Alte versiuni

Aceasta este versiunea vanilla JS a plugin-ului. Sunt disponibile și alte versiuni:

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

Instalare

bower install hsimp

CSS

Copiați fișierul build/hsimp.css în directorul css și includeți-l în documentul <head>:

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

JavaScript

Copiați fișierul build/hsimp.min.js în directorul dvs. js și includeți-l în partea de jos a documentului <body>:

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

Fileul hsimp.min.js poate fi utilizat opțional cu încărcătoarele de module AMD și Common JS folosind numele de modul hsimp. Dacă nu se găsește niciun încărcător de module, va fi pusă la dispoziție o funcție globală hsimp.

Utilizare

Funcția hsimp primește două argumente: un obiect de configurare și un 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"));

Configurație

Obiectul de configurare suportă trei proprietăți:

    options: un obiect de opțiuni care afectează calculele outputTime: o funcție căreia i se transmite durata de timp necesară pentru a sparge parola dată

  • outputChecks: o funcție căreia i se transmite o listă de rezultate de la diverse verificări

opțiuni

În prezent există trei opțiuni acceptate:

  • calculationsPerSecond: numărul presupus de calcule pe secundă pe care le-ar putea face un spărgător (implicit: 10e9 – 10 miliarde)
  • good: timpul minim (în secunde) de care ar fi nevoie pentru a sparge o parolă „bună” (verde) (implicit: 31557600e6 – 1 milion de ani)
  • ok: timpul minim (în secunde) de care ar fi nevoie pentru a sparge o parolă „ok” (portocaliu) (implicit: 31557600 – 1 an)

outputTime

Funcției outputTime i se transmit două variabile: timpul necesar pentru a sparge parola (ca șir de caractere lizibile de către om) și (opțional) datele de intrare la care se referă.

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

outputChecks

Funcției outputChecks i se transmit două variabile: o matrice de rezultate ale verificărilor și (opțional) datele de intrare la care se referă.

Care rezultat al verificării este un obiect cu trei proprietăți:

  • name: numele/titlul verificării
  • message: un text explicativ
  • level: nivelul de severitate (insecure, warning, notice, achievement)
{ name: "Length: Very Short", message: "Your password is very short. The longer a password is the more secure it will be.", level: "warning"}

Limba

Puteți actualiza fișierele de limbă utilizând următoarele metode, fiecare dintre ele acceptând un obiect:

hsimp.setDictionary(lang)

Stabilește valorile pentru „instantaneu” și „pentru totdeauna”. Vezi https://github.com/howsecureismypassword/modules-main/blob/develop/dictionary.json

hsimp.setPeriodDictionary(lang)

Stabilește perioadele (de exemplu, secunde, zile, ani etc.). Vezi https://github.com/howsecureismypassword/modules-period/blob/develop/period-dictionary.json

hsimp.setNamedNumberDictionary(lang)

Stabilește numele numerelor. A se vedea https://github.com/howsecureismypassword/modules-named-number/blob/develop/named-number-dictionary.json

hsimp.setCheckerDictionary(lang)

Stabilește formularea diferitelor verificări. A se vedea https://github.com/howsecureismypassword/modules-checker/blob/develop/checker-dictionary.json

Curtare

Funcția hsimp suportă curtarea. Aceasta înseamnă că puteți seta opțiunile o singură dată și apoi să utilizați funcția returnată pentru a configura mai multe intrări:

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

Licență

Licența MIT (MIT)

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

Se acordă permisiunea, în mod gratuit, oricărei persoane care obține o copie a acestui software și a fișierelor de documentație asociate („Software”), de a tranzacționa software-ul fără restricții, inclusiv, fără a se limita la drepturile de a utiliza, copia, modifica, îmbina, publica, distribui, sublicenția și/sau vinde copii ale software-ului și de a permite persoanelor cărora li se furnizează software-ul să facă acest lucru, sub rezerva următoarelor condiții:

Anunțul privind drepturile de autor de mai sus și acest anunț de permisiune vor fi incluse în toate copiile sau părțile substanțiale ale Software-ului.

SOFTWARE-UL ESTE FURNIZAT „AȘA CUM ESTE”, FĂRĂ NICI UN FEL DE GARANȚIE, EXPRESĂ SAU IMPLICITĂ, INCLUSIV, DAR FĂRĂ A SE LIMITA LA GARANȚIILE DE VANDABILITATE, DE ADECVARE LA UN ANUMIT SCOP ȘI DE NERESPECTARE. ÎN NICI UN CAZ AUTORII SAU DEȚINĂTORII DREPTURILOR DE AUTOR NU VOR FI RĂSPUNZĂTORI PENTRU ORICE PRETENȚII, DAUNE SAU ALTE RĂSPUNDERI, FIE CĂ ESTE VORBA DE O ACȚIUNE CONTRACTUALĂ, DELICTUALĂ SAU DE ALTĂ NATURĂ, CARE DECURG DIN, DIN SAU ÎN LEGĂTURĂ CU SOFTWARE-UL SAU CU UTILIZAREA SAU ALTE TRANZACȚII CU SOFTWARE-UL.

Lasă un răspuns

Adresa ta de email nu va fi publicată.