Skip to content

A core component, which base91 encodes the payload.

License

Notifications You must be signed in to change notification settings

plinker-rpc/base91

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PlinkerRPC - Base91

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.

About

A core component, which base91 encodes the payload.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages