semvec/pypi-packages huggingface dataset:
py-encryption 0.1.1
Simple Encryption in Python.
License: MIT
Keywords: security,encryption,AES,cipher,cryptography,symmetric key cryptography,crypto

py-encryption
=============

Simple Encryption in Python (ported from https://github.com/defuse/php-encryption).

This is a class for doing symmetric encryption in Python.

Implementation
--------------

Messages are encrypted with AES-128 in CBC mode and are authenticated with
HMAC-SHA256 (Encrypt-then-Mac). PKCS7 padding is used to pad the message to
a multiple of the block size. HKDF is used to split the user-provided key into
two keys: one for encryption, and the other for authentication. It is
implemented using the `Crypto` and `hmac` modules.

Authors
---------

This port was based on the library authored by Taylor Hornby and Scott Arciszewski.
pushed 0.1.4
Unofficial Pushed.co API wrapper
License: MIT
Keywords: pushed,pushed.co,mobile,apns,ios,apple,android

================================
Unofficial Pushed.co API wrapper
================================

.. image:: https://travis-ci.org/digmore/pypushed.svg?branch=master
    :target: https://travis-ci.org/digmore/pypushed

.. image:: https://coveralls.io/repos/github/digmore/pypushed/badge.svg?branch=master
    :target: https://coveralls.io/github/digmore/pypushed?branch=master


.. image:: https://img.shields.io/pypi/v/pushed.svg
    :target: https://pypi.python.org/pypi/pushed


Overview
---------

Python wrapper for the pushed.co API. https://pushed.co

Send push notifications to mobile devices without writing your own mobile
app. Have notifications pushed to you rather than relying on polling RSS feeds
and the like.


Usage
-----

Currently only the push functionality and some of the OAuth2 is implemented
here.

Basic usage::

    import pushed

    APP_KEY = 'MY_PUSHED_APP_KEY'
    APP_SECRET = 'MY_PUSHED_APP_SECRET'
    CHANNEL_ALIAS = 'MY_CHANNEL_ALIAS'
    PUSHED_ID = 'PUSHED_ID_FOR_SUBSCRIBER'

    p = pushed.Pushed(APP_KEY, APP_SECRET)

    # Push message to your application's subscribers
    shipment = p.push_app('test app push')

    # Push message to your channel's subscribers
    shipment = p.push_channel('test channel push', CHANNEL_ALIAS)

    # Push message to a user by Pushed ID
    shipment = p.push_pushed_id('test Pushed ID push', PUSHED_ID)

    # Push URL enriched message to your application's subscribers
    shipment =  p.push_app('test app push', content_url='http://example.com')

Pushing to a user requires an OAuth2 access token. You must swap a temporary
code for this access token using the Pushed API. These temporary codes arrive
by webhook, when a subscriber follows your authorization link and agrees to the
access.

To generate an authorization link to share with your users::

    p = pushed.Pushed(APP_KEY, APP_SECRET)
    uri = p.authorization_link('https://example.org/my-webhook-handler')

Using a code to get an access token, then sending a message to the user::

    p = pushed.Pushed(APP_KEY, APP_SECRET)
    access_token = p.access_token(temporary_code)
    shipment = p.push_user('test user push', access_token)

All four push methods return an alphanumeric Shipment ID which you can check
against your Pushed.co control panel. If the Pushed API returns a JSON failure
message then a `PushedAPIError` will be raised using its type and message fields.

The `content_url` parameter is optional and is supported by all push types. It
allows you to enrich your messages with a hyperlink if desired.

Installation
------------

Using pip ::

    pip install pushed