plinker/base91

v1.0.1 2018-05-10 03:52 UTC

This package is not auto-updated.

Last update: 2024-04-24 07:00:58 UTC


README

Base91 is an advanced method for encoding binary data as ASCII characters. It is similar to base64, but is more efficient and compact. The overhead produced by base91 depends on the input data. It amounts at most to 23% (versus 33% for base64) and can range down to 14%, which typically occurs on 0-byte blocks. This makes base91 very useful for transferring larger files over binary unsafe connections like e-mail or terminal lines.

This component was originally used as part of the core for encoding the encrypted payload, but is no longer used as to support the PHP extention version of the client.

Install

Require this package with composer using the following command:

$ composer require plinker/base91

Client

Creating a client instance is done as follows:

<?php
require 'vendor/autoload.php';

/**
 * Initialize plinker client.
 *
 * @param string $server - URL to server listener.
 * @param string $config - server secret, and/or a additional component data
 */
$client = new \Plinker\Core\Client(
    'http://example.com/server.php',
    [
        'secret' => 'a secret password'
    ]
);

// or using global function
$client = plinker_client('http://example.com/server.php', 'a secret password');

Methods

Once setup, you call the class though its namespace to its method.

Encode

Encode a string.

Call

$result = $client->base91->encode('encode this string');

Response

toX<5+UCmUW6GFso^zZ2(.A

Decode

Decode a string.

Call

$result = $client->base91->decode('toX<5+UCmUW6GFso^zZ2(.A');

Response

encode this string

Testing

There are no tests setup for this component.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please contact me via https://cherone.co.uk instead of using the issue tracker.

Credits

Development Encouragement

If you use this project and make money from it or want to show your appreciation, please feel free to make a donation https://www.paypal.me/lcherone, thanks.

Sponsors

Get your company or name listed throughout the documentation and on each github repository, contact me at https://cherone.co.uk for further details.

License

The MIT License (MIT). Please see License File for more information.

See organisations page for additional components.