Skip to content

reyk/bubblebabble-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bubble Babble Binary Data Encoding

docs.rs Crates.IO Build Status Windows Build Status License

Convert bytes to the "Bubble Babble" data encoding that was defined as a mechanism to encode SSH public key fingerprints in a human-readable format.

Examples

use bubblebabble::*;
use std::net::Ipv6Addr;

// Convert 128-bit binary to bubblebabble
let data = [
    0x2a, 0x0a, 0xe5, 0xc0, 0, 0x2, 0, 0x5, 0x5c, 0xf9, 0xcc, 0xc8, 0x7c, 0x48, 0x97, 0xc0,
];
let babble = bubblebabble(&data);
assert_eq!(babble, "xepib-panus-bubub-dubyb-hilyz-nefas-myzug-mihos-bexux");

// Convert IPv6 address to stablebabble
let localhost: Ipv6Addr = "::1".parse().unwrap();
let babbleaddr = stablebabble(&localhost.octets());
assert_eq!(babbleaddr, "xebab-7wa-caxax");

See Also

The Bubble Babble Binary Data Encoding, Antti Huima, 2011

Copyright and license

Licensed under a BSD-style license, see LICENSE for details.

About

Bubble Babble Binary Data Encoding

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages