Skip to main content
# bubblepy
Bubble Babble Binary Data Encoding - Python library

See http://bohwaz.net/archives/web/Bubble_Babble.html for details.

Original Copyright 2011 BohwaZ - http://bohwaz.net/
Copyleft 2015 europa - https://github.com/eur0pa
Copyright 2016 zefciu - https://github.com/zefciu

Based on :
- Bubble Babble spec: http://wiki.yak.net/589/Bubble_Babble_Encoding.txt
- Nitrxgen PHP script: http://www.nitrxgen.net/bubblebabble.php
- Bubble Babble encoder for Go: http://codereview.appspot.com/181122
- Bubble Babble class for PHP: https://github.com/bohwaz/bubblebabble

Use:

```pyshell
>>> from bubblepy import BubbleBabble
>>>
>>> # Encoding simple ASCII strings
>>> bb = BubbleBabble()
>>> bb.encode('Pineapple')
'xigak-nyryk-humil-bosek-sonax'
>>> bb.decode('xigak-nyryk-humil-bosek-sonax')
b'Pineapple'
>>>
>>> # To encode non-ASCI data you must encode to bytestring
>>> bb.encode('Pchnąć w tę łódź jeża lub ośm skrzyń fig')
Traceback (most recent call last):
(...)
ValueError: Non-ASCII character found. Encode your data
>>> bb.encode('Pchnąć w tę łódź jeża lub ośm skrzyń fig'.encode('utf-8'))
xikik-cocor-subur-fucam-dycem-lymyk-lecyn-nacen-riras-gycud-bepak-cicur-pocym-gyxex
>>> bb.decode('xikik-cocor-subur-fucam-dycem-lymyk-lecyn-nacen-riras-gycud-bepak-cicur-pocym-gyxex').decode('utf-8')
'Zażółć gęślą jaźń'
>>>
>>> # You can use Bubble Babble to encode e.g. uuids
>>> import uuid
>>> u1 = uuid.uuid4()
>>> bb.encode(u1.bytes)
'xezeg-tetor-pybyt-vuboc-gapop-boceg-todup-banyk-voxux'
>>> u2 = uuid.UUID(bytes=bb.decode('xezeg-tetor-pybyt-vuboc-gapop-boceg-todup-banyk-voxux'))
>>> u1 == u2
True
>>>
>>> # The default alphabet can be overridden
>>> # Consonants should be 17-letter long and vowels 6-letter long
>>> bb2 = BubbleBabble(consonants=u'бгджзклмнпрстфхцч', vowels=u'аиоуыэ')
>>> bb2.encode(b'0123456789')
'читаж-гатиж-жэфиж-кыфож-мухуж-почоч'
)
```

Release files for bubblepy 1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distributions (sdists)

Source distribution for bubblepy 1.0
File Size Uploaded
bubblepy-1.0.zip 7.1 kB Details
bubblepy-1.0.tar.bz2 3.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bubblepy 1.0
File Interpreter ABI Platform
bubblepy-1.0-py3-none-any.whl Python 3 none any Details

Total release size: 16.4 kB

Release files / bubblepy-1.0.zip

Download URL bubblepy-1.0.zip
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
d2453eeeb103bbcfab35a1b4361484868ed113c93ee6d9f633a4ce6cacaff65d
BLAKE2b-256 checksum
How to use checksums
962b66bbb2e347c0eb9c81ee46c791f7d9e1265d905a51326e0fd8348a09179f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / bubblepy-1.0.tar.bz2

Download URL bubblepy-1.0.tar.bz2
Size 3.9 kB
Tags Source
SHA-256 checksum
How to use checksums
367b8016c15e0186ca7b75a4ce40fdc5bd63e3a821bf2308a4d4d1a0f3f2579e
BLAKE2b-256 checksum
How to use checksums
c3cc440c9b881c955e4bcc57ab42f620572e549dff5de0c3edde333c652cc740
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / bubblepy-1.0-py3-none-any.whl

Download URL bubblepy-1.0-py3-none-any.whl
Size 5.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ce0fd7a56f3a9030364ae240720121b131b3ce716e8273804b396594f37376e6
BLAKE2b-256 checksum
How to use checksums
093083bd76cac30343ac36bf922dbe69d944332cf718419af1ec7ae8e8f69e6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0 This release

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page