Base58Swift is a Swift library that implements Base58 / Base58Check encodings for cryptocurrencies. It is based off of go-base-58 with some added functions.
Donations help me find time to work on Base58Swift. If you find the library useful, please consider donating to support ongoing develoment.
Currency | Address |
---|---|
Tezos | tz1SNXT8yZCwTss2YcoFi3qbXvTZiCojx833 |
Bitcoin | 1CdPoF9cvw3YEiuRCHxdsGpvb5tSUYBBo |
Bitcoin Cash | qqpr9are9gzs5r0q7hy3gdehj3w074pyqsrhpdmxg6 |
Base58Swift supports installation via CocoaPods. You can depened on Base58Swift by adding the following to your Podfile:
pod "Base58Swift"
If you use Carthage to manage your dependencies, simply add
Base58Swift to your Cartfile
:
github "keefertaylor/Base58Swift"
If you use Carthage to build your dependencies, make sure you have added BigInt.framework
and SipHash.framework
, to the "Linked Frameworks and Libraries" section of your target, and have included them in your Carthage framework copying build phase.
Base58Swift provides a static utility class, Base58
, which provides encoding and decoding functions.
To encode / decode in Base58:
let bytes: [UInt8] = [255, 254, 253, 252]
let encodedString = Base58.encode(bytes)!
let decodedBytes = Base58.decode(encodedString)!
print(encodedString) // 7YXVWT
print(decodedBytes) // [255, 254, 253, 252]
To encode / decode in Base58Check:
let bytes: [UInt8] = [255, 254, 253, 252]
let encodedString = Base58.base58CheckEncode(bytes)!
let decodedBytes = Base58.base58CheckDecode(encodedString)!
print(encodedString) // jpUz5f99p1R
print(decodedBytes) // [255, 254, 253, 252]
I am happy to accept pull requests.
MIT