initial commit
[ga4php.git] / doco / readme.txt
1 The GA4PHP Project
2 ==================
3
4 GA4PHP means Google Authenticator for PHP.
5
6 The purpose of this "library" is to provde a convienient and
7 hopefully simple way of provisioning and authenticating users
8 using the Google Authenticator mechanism
9
10
11 Why?
12 ====
13
14 Mostly cause I can. Recently i've been heavily interesting in
15 what is "out there" for FOSS based authentication projects and
16 the Google Authenticator is based on OATH - HOTP/TOTP. It also
17 has a few kewl features, like providing its secret key via QR
18 codes. But looking at the App's available for smartphones
19 (android, iphone, etc), the google auth app was the only one
20 that fullfilled some realistic criteria - easy to use, easy to
21 provision.
22
23
24 How?
25 ====
26
27 Ultimately, this is just a library with a web based example,
28 the purpose of which is to integrate into your exisint applications,
29 those that are PHP.
30
31
32 Complications
33 =============
34
35 The only real complication i've had so far is that alot of the
36 HOTP based keys out there provide the secret key as HEX where
37 google choose to use base32, of which there exist no single
38 or simple implementation. So I wrote my (rather terrible so far)
39 own as all i really want to do is convert from base32 back to
40 hex, this I do by converting to binary first... Lets how thats
41 going to work in the long run. The sad thing is is that if I
42 were writing it in C/C++/etc, bit math is easy and while im sure
43 its not too different in PHP, I've never done it, so this seeemed
44 easier.