İşlemeleri karşılaştır

..

7 İşleme

Yazar SHA1 Mesaj Tarih
AJ ONeal
d52fccfacf v1.0.8 2018-04-30 22:13:29 -06:00
AJ ONeal
589403e8bb fix https://github.com/Daplie/browser-authenticator/issues/6 2018-04-30 22:13:05 -06:00
AJ ONeal
b2f4619186 update demo 2018-04-30 22:03:46 -06:00
AJ ONeal
06317d1812 conditionally load forge 2018-04-30 21:34:41 -06:00
AJ ONeal
579250c5a8 add webapp install instructions 2018-04-30 20:58:19 -06:00
AJ ONeal
4efeb8c0f6 update alt text for fit forking 2018-04-30 20:48:55 -06:00
AJ ONeal
b0b6b17174 update logo 2018-04-30 20:38:50 -06:00
11 değiştirilmiş dosya ile 44 ekleme ve 17 silme

Dosyayı Görüntüle

@ -2,7 +2,7 @@
Two- / Multi- Factor Authenication (2FA / MFA) for browser JavaScript Two- / Multi- Factor Authenication (2FA / MFA) for browser JavaScript
<!-- [![](http://i.imgur.com/sdvMdbo.png)](https://daplie.github.io/browser-authenticator/) --> <!-- [![](http://i.imgur.com/sdvMdbo.png)](https://authenticator.ppl.family/) -->
![](https://blog.authy.com/assets/posts/authenticator.png) ![](https://blog.authy.com/assets/posts/authenticator.png)
There are a number of apps that various websites use to give you 6-digit codes to increase security when you log in: There are a number of apps that various websites use to give you 6-digit codes to increase security when you log in:
@ -22,7 +22,8 @@ to provide codes that are exactly compatible with all other *Authenticator* apps
Demo Demo
==== ====
[Live Demo](https://daplie.github.io/browser-authenticator/) at <https://daplie.github.io/browser-authenticator/> [Live Demo](https://authenticator.ppl.family/)
at <https://authenticator.ppl.family/>
You may also be interested in [Node Authenticator](https://git.coolaj86.com/coolaj86/node-authenticator.js) over at <https://git.coolaj86.com/coolaj86/node-authenticator.js> You may also be interested in [Node Authenticator](https://git.coolaj86.com/coolaj86/node-authenticator.js) over at <https://git.coolaj86.com/coolaj86/node-authenticator.js>
@ -172,3 +173,11 @@ The window is set to +/- 1, meaning each token is valid for a total of 90 second
(-30 seconds, +0 seconds, and +30 seconds) (-30 seconds, +0 seconds, and +30 seconds)
to account for time drift (which should be very rare for mobile devices) to account for time drift (which should be very rare for mobile devices)
and humans who are handicapped or otherwise struggle with quick fine motor skills (like my grandma). and humans who are handicapped or otherwise struggle with quick fine motor skills (like my grandma).
Install WebApp
--------------
```bash
git clone --depth 1 https://git.coolaj86.com/coolaj86/browser-authenticator.js.git
```

Dosyayı Görüntüle

@ -5,7 +5,14 @@ var Authenticator = exports.Authenticator || exports;
var Unibabel = window.Unibabel; // || require('unibabel'); var Unibabel = window.Unibabel; // || require('unibabel');
var totp = window.totp; // || require('notp').totp; var totp = window.totp; // || require('notp').totp;
if (!window.crypto) { function loadForge() {
var script = document.createElement('script');
script.src = '/demo/bower_components/forge/dist/forge.min.js';
script.addEventListener('load', collectRandom);
document.body.appendChild(script);
}
function collectRandom() {
document.addEventListener('mousemove', function (event) { document.addEventListener('mousemove', function (event) {
var ev = event || window.event; var ev = event || window.event;
@ -14,6 +21,14 @@ if (!window.crypto) {
}); });
} }
if (!window.crypto) {
if (!window.forge) {
loadForge();
} else {
collectRandom();
}
}
// Generate a key // Generate a key
function generateOtpKey() { function generateOtpKey() {
// 20 cryptographically random binary bytes (160-bit key) // 20 cryptographically random binary bytes (160-bit key)

Dosyayı Görüntüle

@ -1,7 +1,6 @@
{ {
"name": "authenticator", "name": "authenticator",
"version": "1.0.6", "homepage": "https://git.coolaj86.com/coolaj86/browser-authenticator.js",
"homepage": "https://github.com/Daplie/browser-authenticator",
"authors": [ "authors": [
"AJ ONeal <awesome@coolaj86.com>" "AJ ONeal <awesome@coolaj86.com>"
], ],

İkili dosya gösterilmiyor.

Önce

Genişlik:  |  Yükseklik:  |  Boyut: 30 KiB

Dosyayı Görüntüle

@ -50,6 +50,7 @@ function generate(ke) {
var src = 'https://chart.googleapis.com/chart?chs=166x166&chld=L|0&cht=qr&chl=' + encodeURIComponent(otpauth); var src = 'https://chart.googleapis.com/chart?chs=166x166&chld=L|0&cht=qr&chl=' + encodeURIComponent(otpauth);
$('.js-otpauth').innerHTML = otpauth; // only safe to inject because I created it $('.js-otpauth').innerHTML = otpauth; // only safe to inject because I created it
$('.js-otpauth').href = otpauth;
$('img.js-qrcode').src = src; $('img.js-qrcode').src = src;
$('.js-otp-iframe').src = 'demo/phone.html?otpuri=' + encodeURIComponent(otpauth); $('.js-otp-iframe').src = 'demo/phone.html?otpuri=' + encodeURIComponent(otpauth);

1
demo/logo.svg Normal dosya
Dosyayı Görüntüle

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 338.63 338.63"><defs><style>.a{fill:#5b2c98;}.b{fill:#fff;}</style></defs><title>ppl-circle-</title><circle class="a" cx="169.31" cy="169.31" r="150"/><path class="b" d="M146.9,135.45a32.24,32.24,0,0,0-6.06-10.22,29,29,0,0,0-9.22-6.9A26.69,26.69,0,0,0,120,115.78a24.92,24.92,0,0,0-12.61,3.14,25.46,25.46,0,0,0-8.91,8.63v-10.7H84.55v87.61h15.93V168.21a23.17,23.17,0,0,0,8.56,8.85,24.5,24.5,0,0,0,12.83,3.27,24.16,24.16,0,0,0,10.94-2.5,26.31,26.31,0,0,0,8.62-6.89,32.55,32.55,0,0,0,5.65-10.34,39.2,39.2,0,0,0,2-12.72A35.4,35.4,0,0,0,146.9,135.45Zm-30.12,32.69c-10.09,0-18.28-8.7-18.28-19.43a20.19,20.19,0,0,1,2-8.77v-.15a14,14,0,0,1,2.43-4.16,19.11,19.11,0,0,1,3.63-3.33,16.49,16.49,0,0,1,4.4-2.2,15.12,15.12,0,0,1,4.63-.77h.07c.37,0,.76,0,1.14,0,10.1,0,18.28,8.7,18.28,19.42S126.88,168.14,116.78,168.14Z"/><path class="b" d="M222.27,135.45a32.24,32.24,0,0,0-6.06-10.22,29,29,0,0,0-9.22-6.9,26.69,26.69,0,0,0-11.64-2.55,24.92,24.92,0,0,0-12.61,3.14,25.54,25.54,0,0,0-8.91,8.63v-10.7H159.92v87.61h15.93V168.21a23.24,23.24,0,0,0,8.56,8.85,24.52,24.52,0,0,0,12.84,3.27,24.22,24.22,0,0,0,10.94-2.5,26.27,26.27,0,0,0,8.61-6.89,32.55,32.55,0,0,0,5.65-10.34,39.47,39.47,0,0,0,2-12.72A35.4,35.4,0,0,0,222.27,135.45Zm-31.6,32.69c-10.09,0-18.28-8.7-18.28-19.43s8.19-19.42,18.28-19.42a18,18,0,0,1,2.09.13h.09a15.77,15.77,0,0,1,4.93,1.32,17.08,17.08,0,0,1,4.51,3l.37.34A19.86,19.86,0,0,1,209,148.71C209,159.44,200.76,168.14,190.67,168.14Z"/><path class="b" d="M263.94,164.76a20.11,20.11,0,0,1-3.27,1.18,11.85,11.85,0,0,1-3.16.48,6,6,0,0,1-4.75-1.9,7.84,7.84,0,0,1-1.66-5.35V92.36H235.17v72.4q0,7.37,4.1,11.35t11.59,4a41.31,41.31,0,0,0,7.73-.83,30.52,30.52,0,0,0,7.49-2.38Z"/><path class="b" d="M208,229.74c-15.45,8.56-32.81,12.13-49.22,12.13S125,238.3,109.54,229.74l-5.24,12.84c16.41,10,33.53,15.69,54.45,15.69s38.05-5.71,54.45-15.69Z"/></svg>

Sonra

Genişlik:  |  Yükseklik:  |  Boyut: 1.8 KiB

Dosyayı Görüntüle

@ -1,7 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>Authenticator - Daplie, Inc</title> <title>Authenticator</title>
<meta charset="UTF-8"> <meta charset="UTF-8">
<!--meta name="viewport" content="width=device-width, user-scalable=no" /--> <!--meta name="viewport" content="width=device-width, user-scalable=no" /-->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src 'self' https://chart.googleapis.com/ data:; child-src 'self'; object-src 'none'"> <meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src 'self' https://chart.googleapis.com/ data:; child-src 'self'; object-src 'none'">

Dosyayı Görüntüle

@ -108,12 +108,12 @@ input {
} }
.logo { .logo {
background-image: url("daplie-logo.png"); background-image: url("logo.svg");
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 200px 50px; background-size: 75px 75px;
width: 200px; width: 75px;
height: 50px; height: 75px;
margin: 50px auto 0 auto; margin: 25px auto 0 auto;
line-height: 1.0556; line-height: 1.0556;
text-align: center; text-align: center;
z-index: 2; z-index: 2;
@ -124,7 +124,7 @@ input {
} }
.token-issuer { .token-issuer {
margin-top: 50px; margin-top: 25px;
z-index: 2; z-index: 2;
font-size: 12px; font-size: 12px;
line-height: 1.0556; line-height: 1.0556;

Dosyayı Görüntüle

@ -1,7 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>Authenticator - Daplie, Inc</title> <title>Authenticator</title>
<meta charset="UTF-8"> <meta charset="UTF-8">
<!--meta name="viewport" content="width=device-width, user-scalable=no" /--> <!--meta name="viewport" content="width=device-width, user-scalable=no" /-->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src 'self' https://camo.githubusercontent.com/ https://chart.googleapis.com/ data:; child-src 'self'; object-src 'none'"> <meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src 'self' https://camo.githubusercontent.com/ https://chart.googleapis.com/ data:; child-src 'self'; object-src 'none'">
@ -73,7 +73,7 @@
<div class="form-group"> <div class="form-group">
<label class="col-sm-3 control-label">URI:</label> <label class="col-sm-3 control-label">URI:</label>
<div class="col-sm-9"> <div class="col-sm-9">
<p class="js-otpauth">otpauth://totp/company:user?secret=xxxx&amp;issuer=company</p> <a class="js-otpauth">otpauth://totp/company:user?secret=xxxx&amp;issuer=company</a>
</div> </div>
</div> </div>
</form> </form>
@ -83,7 +83,7 @@
</div> </div>
<!-- github banner --> <!-- github banner -->
<a href="https://github.com/Daplie/browser-authenticator"><img class="github-banner" src="https://camo.githubusercontent.com/a6677b08c955af8400f44c6298f40e7d19cc5b2d/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f677261795f3664366436642e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_gray_6d6d6d.png"></a> <a href="https://git.coolaj86.com/coolaj86/browser-authenticator.js"><img class="github-banner" src="https://camo.githubusercontent.com/a6677b08c955af8400f44c6298f40e7d19cc5b2d/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f677261795f3664366436642e706e67" alt="Fork me with Git" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_gray_6d6d6d.png"></a>
<!-- extremely lightweight shim for hex conversion --> <!-- extremely lightweight shim for hex conversion -->
<script src="demo/bower_components/unibabel/index.js"></script> <script src="demo/bower_components/unibabel/index.js"></script>
@ -93,7 +93,9 @@
<script src="demo/bower_components/unibabel/unibabel.base32.js"></script> <script src="demo/bower_components/unibabel/unibabel.base32.js"></script>
<!-- forge.* --> <!-- forge.* -->
<!--[if lt IE 11]>
<script src="demo/bower_components/forge/dist/forge.min.js"></script> <script src="demo/bower_components/forge/dist/forge.min.js"></script>
<![endif]-->
<!-- botp.totp --> <!-- botp.totp -->
<script src="demo/bower_components/botp/sha1-hmac.js"></script> <script src="demo/bower_components/botp/sha1-hmac.js"></script>

Dosyayı Görüntüle

@ -1,6 +1,6 @@
{ {
"name": "browser-authenticator", "name": "browser-authenticator",
"version": "1.0.7", "version": "1.0.8",
"description": "Two- / Multi- Factor Authenication (2FA / MFA / OTP) for browser JavaScript", "description": "Two- / Multi- Factor Authenication (2FA / MFA / OTP) for browser JavaScript",
"main": "authenticator.js", "main": "authenticator.js",
"homepage": "https://git.coolaj86.com/coolaj86/browser-authenticator.js", "homepage": "https://git.coolaj86.com/coolaj86/browser-authenticator.js",

Dosyayı Görüntüle

@ -1,6 +1,6 @@
<html> <html>
<head> <head>
<meta http-equiv="refresh" content="0;https://daplie.github.io/browser-authenticator/"> <meta http-equiv="refresh" content="0;https://authenticator.ppl.family/">
</head> </head>
</body> </body>
Redirecting... Redirecting...