Embedded messages in text for Python.
Project description
This library includes a set of tools for using zero-width unicode characters to embed human-invisible messages in text.
Watermarking
You can use invisible ink to uniquely identify a piece of text by embedding a UUID:
>>> from invisible_ink import encode_watermark, decode_watermark >>> encoded_text, uuid = encode_watermark(u'asdf') >>> print encoded_text asdf >>> uuid UUID('3ca37a37-9c5a-4b9e-a9c0-a50c47c48dba') >>> decode_watermark(encoded_text) (u'asdf', UUID('3ca37a37-9c5a-4b9e-a9c0-a50c47c48dba'))
encode_watermark (text, watermark_uuid=None, prepend=False)
Encodes the given text with a watermark string generated from the given uuid. Optionally appends or prepends the watermark string.
Parameters:
text: Unicode string to which the watermark will be added
watermark_uuid: uuid.UUID instance to use as the watermark. (uuid.uuid4() will be used to generate one if not provided.)
prepend: Indicates whether the watermark should be prended to text (defaults to False). If False, the watermark will be appended.
Returns:
A 2-tuple: (encoded_text, watermark_uuid)
decode_watermark (encoded_text)
Decodes the given text, separating out the original text and the watermark uuid.
Paramters:
encoded_text: Unicode string which potentially includes a watermark
Returns:
A 2-tuple: (text, watermark_uuid). If no watermark is detected, text is the original text and watermark_uuid is None.
Installation
$ pip install invisible-ink
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file invisible-ink-0.1.1.tar.gz
.
File metadata
- Download URL: invisible-ink-0.1.1.tar.gz
- Upload date:
- Size: 2.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 756040760290efce3e2ba146838636f497afc9a5340f40cdbe9e4a80a67dbc5a |
|
MD5 | 06e3664f3f377542cddaae7940bbe488 |
|
BLAKE2b-256 | e29fbeac52516c3f0fbe3e668ba1745380e5d45807debe664d46a7a87268df63 |
File details
Details for the file invisible_ink-0.1.1-py2.py3-none-any.whl
.
File metadata
- Download URL: invisible_ink-0.1.1-py2.py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5db83bce0e4a442b60eb41c533cfde19ebe7090ec2b6a1b1e4d14141beebe8be |
|
MD5 | fd52fc476dc7d9e8d21cd5aa916c743d |
|
BLAKE2b-256 | cf5394f204bb855e0660068bef0be897333b24d2765ba7ec88853ba2ee807a9e |