‰PNG  IHDRèèÂÁC³×IDATxÚíÖ1 À°ù7 89šTÁ®5<'wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ; wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ»`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸KÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãHÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãHÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜÀ¸Æ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`ÜãÆ0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãw0î€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŒ;wÀ¸€qŒ;`ÜÀ¸Æ0î`Üãw0î€qãwÀ¸€qŒ;`ÜÀ¸ÆŒ;`ÜãÆ0î€qãwÀ¸€qŒ;wÀ¸ÆŒ;`ÜãÆ0î`Üãw0î€qŽºÆá¾d“é­IEND®B`‚ FM / docs
/home/wespack/public_html/fb3/fbsdk/docs
NameSizeModeActions
AccessToken.fbmd38850644editdlrm
example_access_token_from_canvas.fbmd14180644editdlrm
example_access_token_from_javascript.fbmd26160644editdlrm
example_access_token_from_page_tab.fbmd13570644editdlrm
example_batch_request.fbmd53570644editdlrm
example_batch_upload.fbmd21670644editdlrm
example_facebook_login.fbmd32570644editdlrm
example_pagination_basic.fbmd15820644editdlrm
example_post_links.fbmd16630644editdlrm
example_retrieve_user_profile.fbmd13920644editdlrm
example_upload_photo.fbmd17570644editdlrm
example_upload_video.fbmd12750644editdlrm
Facebook.fbmd177370644editdlrm
FacebookApp.fbmd20690644editdlrm
FacebookBatchRequest.fbmd32080644editdlrm
FacebookBatchResponse.fbmd22890644editdlrm
FacebookCanvasHelper.fbmd32580644editdlrm
FacebookClient.fbmd41560644editdlrm
FacebookFile.fbmd17690644editdlrm
FacebookJavaScriptHelper.fbmd31670644editdlrm
FacebookPageTabHelper.fbmd18620644editdlrm
FacebookRedirectLoginHelper.fbmd71040644editdlrm
FacebookRequest.fbmd57280644editdlrm
FacebookResponse.fbmd51880644editdlrm
FacebookResponseException.fbmd25920644editdlrm
FacebookSDKException.fbmd7630644editdlrm
FacebookVideo.fbmd13460644editdlrm
GraphEdge.fbmd35210644editdlrm
GraphNode.fbmd188590644editdlrm
htaccess1980644editdlrm
PersistentDataInterface.fbmd22200644editdlrm
PseudoRandomStringGeneratorInterface.fbmd26690644editdlrm
sdk_downloads.fbmd47620644editdlrm
sdk_getting_started.fbmd139540644editdlrm
sdk_landing_page.fbmd24360644editdlrm
sdk_reference.fbmd74710644editdlrm
SignedRequest.fbmd32900644editdlrm
UrlDetectionInterface.fbmd16320644editdlrm
Edit: /home/wespack/public_html/fb3/fbsdk/docs/PseudoRandomStringGeneratorInterface.fbmd (2669B)
# The cryptographically secure pseudo-random string generator interface for the Facebook SDK for PHP The cryptographically secure pseudo-random string generator interface allows you to overwrite the default CSPRSG logic by coding to the `Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface`. ## Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface {#overview} By default the SDK will attempt to generate a cryptographically secure random string using a number of methods. If a cryptographically secure method is not detected, a `Facebook\Exceptions\FacebookSDKException` will be thrown. If your hosting environment does not support any of the CSPRSG methods used by the SDK or if you have preferred CSPRSG, you can provide your own CSPRSG to the SDK using this interface. > **Caution:** Although it is popular to use `rand()`, `mt_rand()` and `uniqid()` to generate random strings in PHP, these methods are not cryptographically secure. Since the pseudo-random string generator is used to validate against Cross-Site Request Forgery (CSRF) attacks, the random strings _must_ be cryptographically secure. Only overwrite this functionality if your custom pseudo-random string generator is a cryptographically strong one. An example of implementing a custom CSPRSG: ~~~~ use Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface; class MyCustomPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { /** * @inheritdoc */ public function getPseudoRandomString($length) { $randomString = ''; // . . . Do CSPRSG logic here . . . return $randomString; } } ~~~~ To enable your custom CSPRSG implementation in the SDK, you can set an instance of the generator to the `pseudo_random_string_generator` config of the `Facebook\Facebook` super service. ~~~~ $fb = new Facebook\Facebook([ // . . . 'pseudo_random_string_generator' => new MyCustomPseudoRandomStringGenerator(), // . . . ]); ~~~~ Alternatively, if you're working with the `Facebook\Helpers\FacebookRedirectLoginHelper` directly, you can inject your custom generator via the constructor. ~~~~ use Facebook\Helpers\FacebookRedirectLoginHelper; $myPseudoRandomStringGenerator = new MyCustomPseudoRandomStringGenerator(); $helper = new FacebookRedirectLoginHelper($fbApp, null, null, $myPseudoRandomStringGenerator); ~~~~ ## Method Reference {#method-reference} ### getPseudoRandomString() {#get-pseudo-random-string} ~~~~ public string getPseudoRandomString(int $length) ~~~~ Returns a cryptographically secure pseudo-random string that is `$length` characters long.