# Blockchain Commons Library and Tool Implementations
Wolf McNally
© 2025 Blockchain Commons
These lists are not exhaustive, but cover libraries and tools where the differential comparison of implementations is relevant.
## Libraries
The names in this list are the GitHub repositories containing the implementations.
| Functionality | Swift | Rust | C++ | TypeScript |
|-------------------------------|----------------------------|---------------------------|----------------|----------------------------|
| Bitcoin<sup>1</sup> | ✅ BCFoundation | | | |
| Bytemojis | | ✅ bc-ur-rust | | |
| dCBOR | ✅ BCDCBORSwift | ✅ bc-dcbor-rust | | ✅ bc-dcbor-ts<sup>2</sup> |
| dCBOR Tagged Data Summarizers | | ✅ bc-components-rust | | |
| ED25519 Keys | | ✅ bc-components-rust | | |
| Envelope Diffing | ✅ BCEnvelopeSwift | | | |
| Envelope Expressions | | ✅ bc-envelope-rust | | |
| Envelope Flat Formatting | | ✅ bc-envelope-rust | | |
| Envelope Mermaid Output | ✅ BCEnvelopeSwift | | | |
| GSTP | | ✅ gstp-rust | | |
| LifeHash | ✅ LifeHash<sup>3</sup> | | ✅ bc-lifehash | |
| Provenance Mark | ✅ Provenance | ✅ provenance-mark | | |
| QR Code Generator | ✅ QRCodeGenerator | | | |
| Reference | | ✅ bc-components-rust | | |
| SSH Keys | | ✅ bc-components-rust | | |
| SSKR | ✅ BCLibsSwift<sup>3</sup> | ✅ bc-sskr-rust | ✅ bc-sskr | |
| SSS | ✅ BCLibsSwift<sup>3</sup> | ✅ bc-shamir-rust | ✅ bc-shamir | |
| UR | ✅ URKit | ✅ bc-ur-rust<sup>4</sup> | ✅ bc-ur | |
| XID (CBOR/UR Type) | | ✅ bc-components-rust | | |
| XID Document | | ✅ bc-xid-rust | | |
<sup>1</sup> Various bitcoin address and PSBT functionality.
<sup>2</sup> Incomplete, proof of concept.
<sup>3</sup> Swift implementation uses C++.
<sup>4</sup> Rust implementation is wrapper around third-party Rust implementation.
## Command Line Tools
The names in this list are the names of the executables.
| | Swift | Rust | C++ | Python |
|---------------|:-------------:|:----:|:---:|:-------------:|
| bytewords | | | ✅ | |
| dcbor | | ✅ | | |
| envelope | ⚠️<sup>1</sup> | ✅ | | |
| keytool | | | ✅ | |
| lifehash | ⚠️<sup>2</sup> | | ✅ | |
| seedtool | | ✅ | | |
| ssh_envelope | | | | ⚠️<sup>3</sup> |
**Notes:**
<sup>1</sup> Deprecated in favor of Rust implementation.
<sup>2</sup> Deprecated in favor of C++ implementation.
<sup>3</sup> Functionality is available in the Rust `envelope` tool.