Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/edgeworkscreative/pwned-password
:lock: :boom: Web component built to prevent the use of passwords found in previous data breaches via Have I Been Pwned API
https://github.com/edgeworkscreative/pwned-password
haveibeenpwned pwned-passwords stencil stenciljs web-component
Last synced: about 2 months ago
JSON representation
:lock: :boom: Web component built to prevent the use of passwords found in previous data breaches via Have I Been Pwned API
- Host: GitHub
- URL: https://github.com/edgeworkscreative/pwned-password
- Owner: edgeworkscreative
- License: mit
- Created: 2018-06-03T00:57:42.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2018-10-12T10:10:34.000Z (about 6 years ago)
- Last Synced: 2024-11-08T06:46:30.810Z (2 months ago)
- Topics: haveibeenpwned, pwned-passwords, stencil, stenciljs, web-component
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/@edgeworkscreative/pwned-password
- Size: 95.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
![Built With Stencil](https://img.shields.io/badge/-Built%20With%20Stencil-16161d.svg?logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI%2BCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI%2BCgkuc3Qwe2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU%2BCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MjQuNywzNzMuOWMwLDM3LjYtNTUuMSw2OC42LTkyLjcsNjguNkgxODAuNGMtMzcuOSwwLTkyLjctMzAuNy05Mi43LTY4LjZ2LTMuNmgzMzYuOVYzNzMuOXoiLz4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTQyNC43LDI5Mi4xSDE4MC40Yy0zNy42LDAtOTIuNy0zMS05Mi43LTY4LjZ2LTMuNkgzMzJjMzcuNiwwLDkyLjcsMzEsOTIuNyw2OC42VjI5Mi4xeiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNDI0LjcsMTQxLjdIODcuN3YtMy42YzAtMzcuNiw1NC44LTY4LjYsOTIuNy02OC42SDMzMmMzNy45LDAsOTIuNywzMC43LDkyLjcsNjguNlYxNDEuN3oiLz4KPC9zdmc%2BCg%3D%3D&colorA=16161d&style=flat-square)
# Pwned Password Component
Web component built with [Stencil](https://stenciljs.com) that utilizes the [Have I Been Pwned API](https://haveibeenpwned.com) to prevent the use of passwords found in previous data breaches.
Only the first 5 characters of the SHA-1 hash are sent to [Have I Been Pwned](https://haveibeenpwned.com/API/v2#SearchingPwnedPasswordsByRange).
[DEMO](https://jsfiddle.net/91abpLr8/)
## Using the Pwned Password component on your site
Simply place this script tag in the `` of your website:
```html````
Now you can use the component anywhere in the body of your site:
```html
```
```javascript
document.addEventListener('pwnedPasswordFound', (e) => {
if (e.detail === 0) {
let password = e.srcElement.querySelector('input').value;
console.log('Password hasn\'t been pwned - submit your form');
} else {
alert(`Password has been pwned ${e.detail} times!`);
}
})
```