TYPO3 CMS  TYPO3_6-2
Auth_OpenID_Association Class Reference

Public Member Functions

 Auth_OpenID_Association ( $handle, $secret, $issued, $lifetime, $assoc_type)
 
 getExpiresIn ($now=null)
 
 equal ($other)
 
 serialize ()
 
 sign ($pairs)
 
 signMessage ($message)
 
 _makePairs ($message)
 
 getMessageSignature ($message)
 
 checkMessageSignature ($message)
 

Static Public Member Functions

static fromExpiresIn ($expires_in, $handle, $secret, $assoc_type)
 
static deserialize ($class_name, $assoc_s)
 

Public Attributes

 $SIG_LENGTH = 20
 
 $assoc_keys
 
 $_macs
 

Detailed Description

Definition at line 44 of file Association.php.

Member Function Documentation

◆ _makePairs()

Auth_OpenID_Association::_makePairs (   $message)

Given a Auth_OpenID_Message, return the key/value pairs to be signed according to the signed list in the message. If the message lacks a signed list, return null.

private

Definition at line 330 of file Association.php.

References $pairs, Auth_OpenID\arrayGet(), Auth_OpenID_OPENID_NS, and Auth_OpenID\isFailure().

Referenced by getMessageSignature().

◆ Auth_OpenID_Association()

Auth_OpenID_Association::Auth_OpenID_Association (   $handle,
  $secret,
  $issued,
  $lifetime,
  $assoc_type 
)

This is the standard constructor for creating an association. The library should create all of the necessary associations, so this constructor is not part of the external API.

private

Parameters
string$handleThis is the handle the server gave this association.
string$secretThis is the shared secret the server generated for this association.
integer$issuedThis is the time this association was issued, in seconds since 00:00 GMT, January 1, 1970. (ie, a unix timestamp)
integer$lifetimeThis is the amount of time this association is good for, measured in seconds since the association was issued.
string$assoc_typeThis is the type of association this instance represents. The only valid values of this field at this time is 'HMAC-SHA1' and 'HMAC-SHA256', but new types may be defined in the future.

Definition at line 131 of file Association.php.

References Auth_OpenID_getSupportedAssociationTypes(), and E_USER_ERROR.

Referenced by fromExpiresIn().

◆ checkMessageSignature()

Auth_OpenID_Association::checkMessageSignature (   $message)

Confirm that the signature of these fields matches the signature contained in the data.

private

Definition at line 367 of file Association.php.

References Auth_OpenID_OPENID_NS, Auth_OpenID_CryptUtil\constEq(), getMessageSignature(), and Auth_OpenID\isFailure().

◆ deserialize()

static Auth_OpenID_Association::deserialize (   $class_name,
  $assoc_s 
)
static

Parse an association as stored by serialize(). This is the inverse of serialize.

Parameters
string$assoc_sAssociation as serialized by serialize()
Returns
Auth_OpenID_Association $result instance of this class

Definition at line 209 of file Association.php.

References $pairs, and Auth_OpenID_KVForm\toArray().

Referenced by Auth_OpenID_FileStore\_allAssocs(), and Auth_OpenID_FileStore\_getAssociation().

◆ equal()

Auth_OpenID_Association::equal (   $other)

This checks to see if two Auth_OpenID_Association instances represent the same association.

Returns
bool $result true if the two instances represent the same association, false otherwise.

Definition at line 170 of file Association.php.

◆ fromExpiresIn()

static Auth_OpenID_Association::fromExpiresIn (   $expires_in,
  $handle,
  $secret,
  $assoc_type 
)
static

This is an alternate constructor (factory method) used by the OpenID consumer library to create associations. OpenID store implementations shouldn't use this constructor.

private

Parameters
integer$expires_inThis is the amount of time this association is good for, measured in seconds since the association was issued.
string$handleThis is the handle the server gave this association.
stringsecret This is the shared secret the server generated for this association.
assoc_typeThis is the type of association this instance represents. The only valid values of this field at this time is 'HMAC-SHA1' and 'HMAC-SHA256', but new types may be defined in the future.
Returns
association An Auth_OpenID_Association instance.

Definition at line 97 of file Association.php.

References Auth_OpenID_Association().

Referenced by Auth_OpenID_GenericConsumer\_extractAssociation(), and Auth_OpenID_Signatory\createAssociation().

◆ getExpiresIn()

Auth_OpenID_Association::getExpiresIn (   $now = null)

This returns the number of seconds this association is still valid for, or 0 if the association is no longer valid.

Returns
integer $seconds The number of seconds this association is still valid for, or 0 if the association is no longer valid.

Definition at line 154 of file Association.php.

◆ getMessageSignature()

Auth_OpenID_Association::getMessageSignature (   $message)

Given an Auth_OpenID_Message, return the signature for the signed list in the message.

private

Definition at line 355 of file Association.php.

References $pairs, _makePairs(), and sign().

Referenced by checkMessageSignature(), and signMessage().

◆ serialize()

Auth_OpenID_Association::serialize ( )

Convert an association to KV form.

Returns
string $result String in KV form suitable for deserialization by deserialize.

Definition at line 186 of file Association.php.

References Auth_OpenID_KVForm\fromArray().

◆ sign()

Auth_OpenID_Association::sign (   $pairs)

Generate a signature for a sequence of (key, value) pairs

private

Parameters
array$pairsThe pairs to sign, in order. This is an array of two-tuples.
Returns
string $signature The binary signature of this sequence of pairs

Definition at line 263 of file Association.php.

References $pairs, and Auth_OpenID_KVForm\fromArray().

Referenced by getMessageSignature().

◆ signMessage()

Auth_OpenID_Association::signMessage (   $message)

Generate a signature for some fields in a dictionary

private

Parameters
array$fieldsThe fields to sign, in order; this is an array of strings.
array$dataDictionary of values to sign (an array of string => string pairs).
Returns
string $signature The signature, base64 encoded

Definition at line 283 of file Association.php.

References Auth_OpenID_OPENID_NS, and getMessageSignature().

Member Data Documentation

◆ $_macs

Auth_OpenID_Association::$_macs
Initial value:
= array(
'HMAC-SHA1' => 'Auth_OpenID_HMACSHA1',
'HMAC-SHA256' => 'Auth_OpenID_HMACSHA256'
)

Definition at line 67 of file Association.php.

◆ $assoc_keys

Auth_OpenID_Association::$assoc_keys
Initial value:
= array(
'version',
'handle',
'secret',
'issued',
'lifetime',
'assoc_type'
)

The ordering and name of keys as stored by serialize.

private

Definition at line 58 of file Association.php.

◆ $SIG_LENGTH

Auth_OpenID_Association::$SIG_LENGTH = 20

This is a HMAC-SHA1 specific value.

private

Definition at line 51 of file Association.php.