@implementation Base58Encoder // Based on Kellan Elliot-McCrea's PHP code: // http://www.flickr.com/groups/api/discuss/72157616713786392 // + (NSString *)base58EncodedValue:(long long)num { NSString *alphabet = @"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"; int baseCount = [alphabet length]; NSString *encoded = @""; while(num >= baseCount) { double div = num/baseCount; long long mod = (num - (baseCount * (long long)div)); NSString *alphabetChar = [alphabet substringWithRange: NSMakeRange(mod, 1)]; encoded = [NSString stringWithFormat: @"%@%@", alphabetChar, encoded]; num = (long long)div; } if(num) { encoded = [NSString stringWithFormat: @"%@%@", [alphabet substringWithRange: NSMakeRange(num, 1)], encoded]; } return encoded; } @end