{"repo":"fabiang/sasl","free":true,"listed":false,"github":"https://github.com/fabiang/sasl","clone":"git clone https://github.com/fabiang/sasl.git","description":"The PHP SASL2 Authentification Library","language":"PHP","stars":12,"topics":["sasl","php","authentication","auth","digest-md5","scram","cram-md5","sasl2","scram-sha1","scram-sha256"],"license":null,"category":"auth-billing-email","readme_excerpt":"fabiang/sasl The PHP SASL Authentification Library. Full refactored version of the the original Auth SASL2 Pear package. Provides code to generate responses to common SASL mechanisms, including: Digest-MD5 Cram-MD5 Plain Anonymous Login (Pseudo mechanism) SCRAM Security Please note that MD5- and SHA1-based authentication mechanism are considered insecure. Therefore you should prefer at least SCRAM-SHA-256 for non-secure connections (TLS) when ever possible. For that reason Digest-MD5, Cram-MD5 and SCRAM-SHA-1 are deprecated and were removed in modern server software. Installation The easiest way to install fabiang/sasl is by using Composer: Usage Use the factory method to create a authentication mechanism object: Or create from string: Challenge-based authentication mechanisms implement the interface Fabiang\\SASL\\Authentication\\ChallengeAuthenticationInterface . For those mechanisms call the method again with the challenge returned by the server: Note : The challenge must be Base64 decoded. SCRAM verification To verify the data returned by the server for SCRAM you can call: If the method returns false you should disconnect. SCRAM downgrade protection To enable downgrade protection for SCRAM, you'll need to pass the allowed authentication mechanisms and channel-binding types via options to the factory: Note : Channel-binding is currently not supported due to limitations of PHP. Required options List of options required by authentication mechanisms. For mechanisms that are chal","default_branch":null,"files":null,"tree":[],"storefront":"/r/fabiang","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/fabiang/sasl/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}