yenom / bitcoinkit Goto Github PK
View Code? Open in Web Editor NEWBitcoin protocol toolkit for Swift
License: MIT License
Bitcoin protocol toolkit for Swift
License: MIT License
I'm targeting ios 11 - (not ios 11.2)
seems like there's a specific openssl version required.
https://github.com/ZBK1nger/bither-iOS/blob/fd9646362483216b580f6f41151845ef4abb7608/Podfile
Enable to initialization of scheme less address
Currently Acceptable :
bitcoincash:qpjdpjrm5zvp2al5u4uzmp36t9m0ll7gd525rss978
Currently Unacceptable :
qpjdpjrm5zvp2al5u4uzmp36t9m0ll7gd525rss978
let cashAddr: Cashaddr = AddressFactory.create("qpjdpjrm5zvp2al5u4uzmp36t9m0ll7gd525rss978")
Currently we have
https://gist.github.com/johndpope/ff350a12a8da933175e76d6c2d492c52
would be a milestone to be huge milestone to be able to support BCH.
can use this
https://www.reddit.com/r/btc/comments/6nqw7v/in_case_you_were_wondering_this_is_the_list_of/?st=jddb4nuu&sh=cc635f30
https://github.com/Bitcoin-ABC/bitcoin-abc/blob/master/src/chainparams.cpp
OSX Version: 10.13.3 (17D102)
Xcode Version: 9.2 (9C40b)
Cocoapods Version : 1.3.1
Step:
$brew install autoconf automake
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
node ✔ node@4 pandoc-crossref sysdig
artifactory node@6 pipenv unyaffs
coffeescript node@8 pre-commit vim
libusb open-mpi python [email protected]
metabase osquery sip
Warning: autoconf 2.69 is already installed
Warning: automake 1.16.1 is already installed
platform :ios, '10.0'
target 'BitcoinKitDemo' do
use_frameworks!
pod 'BitcoinKit'
end
Installing BitcoinKit (0.1.2)
[!] /bin/bash -c
set -e
sh setup/build_libraries.sh
glibtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
glibtoolize: copying file 'build-aux/ltmain.sh'
glibtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'build-aux/m4'.
glibtoolize: copying file 'build-aux/m4/libtool.m4'
glibtoolize: copying file 'build-aux/m4/ltoptions.m4'
glibtoolize: copying file 'build-aux/m4/ltsugar.m4'
glibtoolize: copying file 'build-aux/m4/ltversion.m4'
glibtoolize: copying file 'build-aux/m4/lt~obsolete.m4'
checking build system type... x86_64-apple-darwin17.4.0
checking host system type... x86_64-apple-darwin
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for x86_64-apple-darwin-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... build-aux/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking how to print strings... printf
checking whether make supports the include directive... yes (GNU style)
checking for x86_64-apple-darwin-gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang accepts -g... yes
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang option to accept ISO C89... none needed
checking whether /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang understands -c and -o together... yes
checking dependency style of /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang... gcc3
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... no
checking for x86_64-apple-darwin-dumpbin... no
checking for x86_64-apple-darwin-link... no
checking for dumpbin... no
checking for link... link -dump
checking the name lister (nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking how to convert x86_64-apple-darwin17.4.0 file names to x86_64-apple-darwin format... func_convert_file_noop
checking how to convert x86_64-apple-darwin17.4.0 file names to toolchain format... func_convert_file_noop
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -r
checking for x86_64-apple-darwin-objdump... no
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for x86_64-apple-darwin-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for x86_64-apple-darwin-ar... no
checking for ar... ar
checking for archiver @FILE support... no
checking for x86_64-apple-darwin-strip... strip
checking for x86_64-apple-darwin-ranlib... no
checking for ranlib... ranlib
checking command to parse nm output from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for x86_64-apple-darwin-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking for x86_64-apple-darwin-dsymutil... no
checking for dsymutil... dsymutil
checking for x86_64-apple-darwin-nmedit... no
checking for nmedit... nmedit
checking for x86_64-apple-darwin-lipo... no
checking for lipo... lipo
checking for x86_64-apple-darwin-otool... no
checking for otool... otool
checking for x86_64-apple-darwin-otool64... no
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking how to run the C preprocessor... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -fno-rtti -fno-exceptions... yes
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang option to produce PIC... -fno-common -DPIC
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang PIC flag -fno-common -DPIC works... yes
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang static flag -static works... no
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -c -o file.o... yes
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -c -o file.o... (cached) yes
checking whether the /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether make supports nested variables... (cached) yes
checking for x86_64-apple-darwin-pkg-config... no
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for x86_64-apple-darwin-ar... no
checking for ar... /usr/bin/ar
checking for x86_64-apple-darwin-ranlib... no
checking for ranlib... /usr/bin/ranlib
checking for x86_64-apple-darwin-strip... no
checking for strip... /usr/bin/strip
checking for gcc... gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang option to accept ISO C89... (cached) none needed
checking dependency style of /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang... gcc3
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -std=c89 -pedantic -Wall -Wextra -Wcast-align -Wnested-externs -Wshadow -Wstrict-prototypes -Wno-unused-function -Wno-long-long -Wno-overlength-strings... yes
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -fvisibility=hidden... yes
checking for __int128... no
checking for __builtin_expect... yes
checking native compiler: gcc... gcc does not produce working binaries. Please set CC_FOR_BUILD
checking for x86_64 assembly availability... no
checking gmp.h usability... no
checking gmp.h presence... no
checking for gmp.h... no
checking for libcrypto... no
checking openssl/crypto.h usability... no
checking openssl/crypto.h presence... no
checking for openssl/crypto.h... no
checking whether byte ordering is bigendian... universal
configure: Using static precomputation: no
configure: Using assembly optimizations: no
configure: Using field implementation: 32bit
configure: Using bignum implementation: no
configure: Using scalar implementation: 32bit
configure: Using endomorphism optimizations: no
configure: Building benchmarks: yes
configure: Building for coverage analysis: no
configure: Building ECDH module: no
configure: Building ECDSA pubkey recovery module: no
configure: Using jni: no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating libsecp256k1.pc
config.status: creating src/libsecp256k1-config.h
config.status: executing depfiles commands
config.status: executing libtool commands
CC src/bench_verify.o
CC src/libsecp256k1_la-secp256k1.lo
CCLD libsecp256k1.la
CCLD bench_verify
CC src/bench_sign.o
CCLD bench_sign
CC src/bench_internal-bench_internal.o
CCLD bench_internal
CC src/bench_ecmult-bench_ecmult.o
CCLD bench_ecmult
CC src/tests-tests.o
CCLD tests
CC src/exhaustive_tests-tests_exhaustive.o
CCLD exhaustive_tests
build-aux/install-sh -c -d '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib'
/bin/sh ./libtool --mode=install /usr/bin/install -c libsecp256k1.la '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib'
libtool: install: /usr/bin/install -c .libs/libsecp256k1.0.dylib /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/libsecp256k1.0.dylib
libtool: install: (cd /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib && { ln -s -f libsecp256k1.0.dylib libsecp256k1.dylib || { rm -f libsecp256k1.dylib && ln -s libsecp256k1.0.dylib libsecp256k1.dylib; }; })
libtool: install: /usr/bin/install -c .libs/libsecp256k1.lai /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/libsecp256k1.la
libtool: install: /usr/bin/install -c .libs/libsecp256k1.a /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/libsecp256k1.a
libtool: install: chmod 644 /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/libsecp256k1.a
libtool: install: /usr/bin/ranlib /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/libsecp256k1.a
build-aux/install-sh -c -d '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/include'
/usr/bin/install -c -m 644 include/secp256k1.h '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/include'
build-aux/install-sh -c -d '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/pkgconfig'
/usr/bin/install -c -m 644 libsecp256k1.pc '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/pkgconfig'
checking build system type... x86_64-apple-darwin17.4.0
checking host system type... arm-apple-darwin
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for arm-apple-darwin-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... build-aux/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking how to print strings... printf
checking whether make supports the include directive... yes (GNU style)
checking for arm-apple-darwin-gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang accepts -g... yes
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang option to accept ISO C89... none needed
checking whether /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang understands -c and -o together... yes
checking dependency style of /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang... gcc3
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... no
checking for arm-apple-darwin-dumpbin... no
checking for arm-apple-darwin-link... no
checking for dumpbin... no
checking for link... link -dump
checking the name lister (nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking how to convert x86_64-apple-darwin17.4.0 file names to arm-apple-darwin format... func_convert_file_noop
checking how to convert x86_64-apple-darwin17.4.0 file names to toolchain format... func_convert_file_noop
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -r
checking for arm-apple-darwin-objdump... no
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for arm-apple-darwin-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for arm-apple-darwin-ar... no
checking for ar... ar
checking for archiver @FILE support... no
checking for arm-apple-darwin-strip... strip
checking for arm-apple-darwin-ranlib... no
checking for ranlib... ranlib
checking command to parse nm output from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for arm-apple-darwin-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking for arm-apple-darwin-dsymutil... no
checking for dsymutil... dsymutil
checking for arm-apple-darwin-nmedit... no
checking for nmedit... nmedit
checking for arm-apple-darwin-lipo... no
checking for lipo... lipo
checking for arm-apple-darwin-otool... no
checking for otool... otool
checking for arm-apple-darwin-otool64... no
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking how to run the C preprocessor... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -fno-rtti -fno-exceptions... yes
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang option to produce PIC... -fno-common -DPIC
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang PIC flag -fno-common -DPIC works... yes
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang static flag -static works... no
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -c -o file.o... yes
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -c -o file.o... (cached) yes
checking whether the /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether make supports nested variables... (cached) yes
checking for arm-apple-darwin-pkg-config... no
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for arm-apple-darwin-ar... no
checking for ar... /usr/bin/ar
checking for arm-apple-darwin-ranlib... no
checking for ranlib... /usr/bin/ranlib
checking for arm-apple-darwin-strip... no
checking for strip... /usr/bin/strip
checking for gcc... gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang option to accept ISO C89... (cached) none needed
checking dependency style of /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang... gcc3
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -std=c89 -pedantic -Wall -Wextra -Wcast-align -Wnested-externs -Wshadow -Wstrict-prototypes -Wno-unused-function -Wno-long-long -Wno-overlength-strings... yes
checking if /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang supports -fvisibility=hidden... yes
checking for __int128... no
checking for __builtin_expect... yes
checking native compiler: gcc... gcc does not produce working binaries. Please set CC_FOR_BUILD
checking for x86_64 assembly availability... no
checking gmp.h usability... no
checking gmp.h presence... no
checking for gmp.h... no
checking for libcrypto... no
checking openssl/crypto.h usability... no
checking openssl/crypto.h presence... no
checking for openssl/crypto.h... no
checking whether byte ordering is bigendian... no
configure: Using static precomputation: no
configure: Using assembly optimizations: no
configure: Using field implementation: 32bit
configure: Using bignum implementation: no
configure: Using scalar implementation: 32bit
configure: Using endomorphism optimizations: no
configure: Building benchmarks: yes
configure: Building for coverage analysis: no
configure: Building ECDH module: no
configure: Building ECDSA pubkey recovery module: no
configure: Using jni: no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating libsecp256k1.pc
config.status: creating src/libsecp256k1-config.h
config.status: executing depfiles commands
config.status: executing libtool commands
CC src/bench_verify.o
CC src/libsecp256k1_la-secp256k1.lo
CCLD libsecp256k1.la
CCLD bench_verify
CC src/bench_sign.o
CCLD bench_sign
CC src/bench_internal-bench_internal.o
CCLD bench_internal
CC src/bench_ecmult-bench_ecmult.o
CCLD bench_ecmult
CC src/tests-tests.o
CCLD tests
CC src/exhaustive_tests-tests_exhaustive.o
CCLD exhaustive_tests
build-aux/install-sh -c -d '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib'
/bin/sh ./libtool --mode=install /usr/bin/install -c libsecp256k1.la '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib'
libtool: install: /usr/bin/install -c .libs/libsecp256k1.0.dylib /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/libsecp256k1.0.dylib
libtool: install: (cd /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib && { ln -s -f libsecp256k1.0.dylib libsecp256k1.dylib || { rm -f libsecp256k1.dylib && ln -s libsecp256k1.0.dylib libsecp256k1.dylib; }; })
libtool: install: /usr/bin/install -c .libs/libsecp256k1.lai /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/libsecp256k1.la
libtool: install: /usr/bin/install -c .libs/libsecp256k1.a /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/libsecp256k1.a
libtool: install: chmod 644 /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/libsecp256k1.a
libtool: install: /usr/bin/ranlib /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/libsecp256k1.a
build-aux/install-sh -c -d '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/include'
/usr/bin/install -c -m 644 include/secp256k1.h '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/include'
build-aux/install-sh -c -d '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/pkgconfig'
/usr/bin/install -c -m 644 libsecp256k1.pc '/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/pkgconfig'
/Users/xx11dragon/Library/Caches/CocoaPods/Pods/Release/BitcoinKit/0.1.2-c2478/setup
++ dirname setup/build_libraries.sh
+ SCRIPT_DIR=setup
+ cd setup
+ sh build_secp256k1.sh
++ dirname build_secp256k1.sh
+ SCRIPT_DIR=.
++ mktemp -d
+ TDIR=/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr
+ trap '{ cd - ; rm -rf /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr; exit 255; }' SIGINT
+ cd /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr
+ git clone https://github.com/bitcoin-core/secp256k1.git src
Cloning into 'src'...
++ pwd
+ CURRENTPATH=/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr
+ TARGETDIR_IPHONEOS=/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos
+ mkdir -p /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos
+ TARGETDIR_SIMULATOR=/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator
+ mkdir -p /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator
+ cd src
+ ./autogen.sh
configure.ac:10: installing 'build-aux/compile'
configure.ac:5: installing 'build-aux/config.guess'
configure.ac:5: installing 'build-aux/config.sub'
configure.ac:9: installing 'build-aux/install-sh'
configure.ac:9: installing 'build-aux/missing'
Makefile.am: installing 'build-aux/depcomp'
parallel-tests: installing 'build-aux/test-driver'
+ cd src
++ xcrun -find clang
++ xcrun -sdk iphonesimulator --show-sdk-path
++ xcrun -find clang++
++ xcrun -sdk iphonesimulator --show-sdk-path
+ ./configure --host=x86_64-apple-darwin CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang 'CFLAGS=-O3 -arch i386 -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.2.sdk -fembed-bitcode-marker -mios-simulator-version-min=8.0' CXX=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ 'CXXFLAGS=-O3 -arch i386 -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.2.sdk -fembed-bitcode-marker -mios-simulator-version-min=8.0' --prefix=/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos
configure: WARNING: using cross tools not prefixed with host triplet
+ make install
ld: warning: -flat_namespace is deprecated on iOS
ld: warning: -flat_namespace is deprecated on iOS
+ cd src
++ xcrun -find clang
++ xcrun -sdk iphoneos --show-sdk-path
++ xcrun -find clang++
++ xcrun -sdk iphoneos --show-sdk-path
+ ./configure --host=arm-apple-darwin CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang 'CFLAGS=-O3 -arch armv7 -arch armv7s -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.2.sdk -fembed-bitcode -mios-version-min=8.0' CXX=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ 'CXXFLAGS=-O3 -arch armv7 -arch armv7s -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.2.sdk -fembed-bitcode -mios-version-min=8.0' --prefix=/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator
configure: WARNING: using cross tools not prefixed with host triplet
+ make install
ld: warning: -flat_namespace is deprecated on iOS
ld: warning: -flat_namespace is deprecated on iOS
ld: warning: -flat_namespace is deprecated on iOS
ld: warning: ./.libs/libsecp256k1.dylib has install name beginning with "/" but it is not from the specified SDK
ld: warning: ./.libs/libsecp256k1.dylib has install name beginning with "/" but it is not from the specified SDK
ld: warning: ./.libs/libsecp256k1.dylib has install name beginning with "/" but it is not from the specified SDK
ld: warning: ./.libs/libsecp256k1.dylib has install name beginning with "/" but it is not from the specified SDK
ld: warning: ./.libs/libsecp256k1.dylib has install name beginning with "/" but it is not from the specified SDK
ld: warning: ./.libs/libsecp256k1.dylib has install name beginning with "/" but it is not from the specified SDK
+ cd -
+ mkdir -p ./../Libraries/secp256k1/lib
+ xcrun lipo -create /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphoneos/lib/libsecp256k1.a /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/.build/iphonesimulator/lib/libsecp256k1.a -o ./../Libraries/secp256k1/lib/libsecp256k1.a
+ cp -rf /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr/src/include ./../Libraries/secp256k1
+ rm -rf /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.kokP8Bfr
+ exit 0
+ cd setup
+ sh build_crypto.sh
++ pwd
++ dirname build_crypto.sh
+ SCRIPT_DIR=/Users/xx11dragon/Library/Caches/CocoaPods/Pods/Release/BitcoinKit/0.1.2-c2478/setup/.
+ OPENSSL_VERSION=1.0.2n
++ mktemp -d
+ TDIR=/var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.3bvmgIjk
+ trap '{ cd - ; rm -rf /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.3bvmgIjk; exit 255; }' SIGINT
+ cd /var/folders/y3/n5fmrpgd0915mjx4mqfj4lvh0000gn/T/tmp.3bvmgIjk
+ curl -O https://www.openssl.org/source/openssl-1.0.2n.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 352 100 352 0 0 1675 0 --:--:-- --:--:-- --:--:-- 1676
+ tar zxf openssl-1.0.2n.tar.gz
tar: Unrecognized archive format
tar: Error exit delayed from previous errors.
I not found reason...
Hi, I believe that there is a problem in derivation and some time doesn't work well. I made some tests with testnet and validate results with https://iancoleman.io/bip39/ and it doesn't match.
I found that in the file BitcoinKitPrivate.m (line 147) you save new private key like this (and some times data length is less than 32 bytes)
result = [NSMutableData dataWithLength:numBytes];
BN_bn2bin(privateKey, result.mutableBytes);
and I believe that you need to save new private key like this
result = [NSMutableData dataWithLength:32];
BN_bn2bin(privateKey, &result.mutableBytes[32-numBytes]);
Regards
try! blockChain.addTransaction(transaction, hash: hash)
public func peer(_ peer: Peer, didReceiveTransaction transaction: Transaction, hash: Data) {
do {
try blockChain.addTransaction(transaction, hash: hash)
} catch {
print("failed to addTransaction ")
}
}
public static func buildPublicKeyHashOut(pubKeyHash: Data) -> Data {
return Data() + OP_DUP + OP_HASH160 + OP_0 + pubKeyHash + OP_EQUALVERIFY + OP_CHECKSIG
}
Compile failed (Swift 4.1,Xcode 9.3)
DaikinoMacBook-Pro:SimpleWallet daiki.sekiguchi$ carthage update --platform iOS
*** Fetching KeychainAccess
*** Fetching BitcoinKit
*** Checking out KeychainAccess at "v3.1.1"
*** Checking out BitcoinKit at "v1.0.1"
*** xcodebuild output can be found in /var/folders/2n/zlwdch552dl5x5zl745mmwpr0000gn/T/carthage-xcodebuild.CNjLYc.log
*** Downloading KeychainAccess.framework binary at "v3.1.1"
*** Skipped installing KeychainAccess.framework binary due to the error:
"Incompatible Swift version - framework was built with 4.1 (swiftlang-902.0.48 clang-902.0.37.1) and the local version is 4.1.2 (swiftlang-902.0.54 clang-902.0.39.2)."
Falling back to building from the source
*** Building scheme "BitcoinKit" in BitcoinKit.xcworkspace
Build Failed
Task failed with exit code 65:
/usr/bin/xcrun xcodebuild -workspace /Users/daiki.sekiguchi/work/iOS/hoge/SimpleWallet/Carthage/Checkouts/BitcoinKit/BitcoinKit.xcworkspace -scheme BitcoinKit -configuration Release -derivedDataPath /Users/daiki.sekiguchi/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4.1_9F2000/BitcoinKit/v1.0.1 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/2n/zlwdch552dl5x5zl745mmwpr0000gn/T/BitcoinKit SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO (launched in /Users/daiki.sekiguchi/work/iOS/hoge/SimpleWallet/Carthage/Checkouts/BitcoinKit)
This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/2n/zlwdch552dl5x5zl745mmwpr0000gn/T/carthage-xcodebuild.CNjLYc.log
...
export VERSION_INFO_BUILDER=daiki.sekiguchi
export VERSION_INFO_FILE=BitcoinKit_vers.c
export VERSION_INFO_STRING=""@(#)PROGRAM:BitcoinKit PROJECT:BitcoinKit-1""
export WATCHKIT_2_SUPPORT_FOLDER_PATH=/Users/daiki.sekiguchi/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4.1_9F2000/BitcoinKit/v1.0.1/Build/Intermediates.noindex/ArchiveIntermediates/BitcoinKit/BuildProductsPath/WatchKitSupport2
export WATCHKIT_SUPPORT_FOLDER_PATH=/Users/daiki.sekiguchi/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4.1_9F2000/BitcoinKit/v1.0.1/Build/Intermediates.noindex/ArchiveIntermediates/BitcoinKit/BuildProductsPath/WatchKitSupport
export WRAPPER_EXTENSION=framework
export WRAPPER_NAME=BitcoinKit.framework
export WRAPPER_SUFFIX=.framework
export WRAP_ASSET_PACKS_IN_SEPARATE_DIRECTORIES=NO
export XCODE_APP_SUPPORT_DIR=/Applications/Xcode.app/Contents/Developer/Library/Xcode
export XCODE_PRODUCT_BUILD_VERSION=9F2000
export XCODE_VERSION_ACTUAL=0941
export XCODE_VERSION_MAJOR=0900
export XCODE_VERSION_MINOR=0940
export XPCSERVICES_FOLDER_PATH=BitcoinKit.framework/XPCServices
export YACC=yacc
export arch=arm64
export variant=normal
/bin/sh -c /Users/daiki.sekiguchi/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4.1_9F2000/BitcoinKit/v1.0.1/Build/Intermediates.noindex/ArchiveIntermediates/BitcoinKit/IntermediateBuildFilesPath/BitcoinKit.build/Release-iphoneos/BitcoinKit.build/Script-292B636820E7BF7000F5040A.sh
warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint
PhaseScriptExecution Build\ Libraries /Users/daiki.sekiguchi/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4.1_9F2000/BitcoinKit/v1.0.1/Build/Intermediates.noindex/ArchiveIntermediates/BitcoinKit/IntermediateBuildFilesPath/BitcoinKit.build/Release-iphoneos/BitcoinKit.build/Script-1482B628202954CC0098B612.sh
cd /Users/daiki.sekiguchi/work/iOS/hoge/SimpleWallet/Carthage/Checkouts/BitcoinKit
/bin/sh -c /Users/daiki.sekiguchi/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4.1_9F2000/BitcoinKit/v1.0.1/Build/Intermediates.noindex/ArchiveIntermediates/BitcoinKit/IntermediateBuildFilesPath/BitcoinKit.build/Release-iphoneos/BitcoinKit.build/Script-1482B628202954CC0098B612.sh
env: Workbooks.app/Contents/SharedSupport/path-bin: No such file or directory
** ARCHIVE FAILED **
The following build commands failed:
PhaseScriptExecution Build\ Libraries /Users/daiki.sekiguchi/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4.1_9F2000/BitcoinKit/v1.0.1/Build/Intermediates.noindex/ArchiveIntermediates/BitcoinKit/IntermediateBuildFilesPath/BitcoinKit.build/Release-iphoneos/BitcoinKit.build/Script-1482B628202954CC0098B612.sh
(1 failure)
ld: warning: directory not found for option '-L/Users/johndpope/Documents/cryptoWorkspace/BitcoinKit/Libraries/crypto/lib'
ld: warning: directory not found for option '-L/Users/johndpope/Documents/cryptoWorkspace/BitcoinKit/Libraries/secp256k1/lib'
ld: library not found for -lsecp256k1 for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
seems like a mismatch on /lib subfolder.
ripping out the /lib allows compiles library
zhangyutaodeMacBook-Pro:Wallet zhangyutao$ carthage update --platform iOS
*** Fetching BitcoinKit
*** Fetching KeychainAccess
*** Checking out KeychainAccess at "v3.1.1"
*** Checking out BitcoinKit at "v0.1.2"
*** xcodebuild output can be found in /var/folders/z0/89zqhrn56hn16zv5y_h4vhlr0000gn/T/carthage-xcodebuild.wHSsAW.log
*** Downloading KeychainAccess.framework binary at "v3.1.1"
*** Skipped installing KeychainAccess.framework binary due to the error:
"Incompatible Swift version - framework was built with 4.1 (swiftlang-902.0.48 clang-902.0.37.1) and the local version is 4.1.2 (swiftlang-902.0.54 clang-902.0.39.2)."
*** Downloading BitcoinKit.framework binary at "v0.1.2"
*** Skipped installing BitcoinKit.framework binary due to the error:
"Incompatible Swift version - framework was built with 4.0.3 (swiftlang-900.0.74.1 clang-900.0.39.2) and the local version is 4.1.2 (swiftlang-902.0.54 clang-902.0.39.2)."
*** Building scheme "BitcoinKit" in BitcoinKit.xcworkspace
Build Failed
Task failed with exit code 65:
/usr/bin/xcrun xcodebuild -workspace /Users/zhangyutao/Downloads/BitcoinKit-0.1.2/Examples/Wallet/Carthage/Checkouts/BitcoinKit/BitcoinKit.xcworkspace -scheme BitcoinKit -configuration Release -derivedDataPath /Users/zhangyutao/Library/Caches/org.carthage.CarthageKit/DerivedData/9.4_9F1027a/BitcoinKit/v0.1.2 -sdk iphoneos ONLY_ACTIVE_ARCH=NO BITCODE_GENERATION_MODE=bitcode CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/z0/89zqhrn56hn16zv5y_h4vhlr0000gn/T/BitcoinKit SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO (launched in /Users/zhangyutao/Downloads/BitcoinKit-0.1.2/Examples/Wallet/Carthage/Checkouts/BitcoinKit)
This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/z0/89zqhrn56hn16zv5y_h4vhlr0000gn/T/carthage-xcodebuild.wHSsAW.log
Implement Payment Protocol
Payment Protocol spec:
https://github.com/bitcoin/bips/blob/master/bip-0070.mediawiki
Refer to CoreBitcoin
public static func buildPublicKeyHashOut(pubKeyHash: Data) -> Data {
return Data() + OP_DUP + OP_HASH160 + OP_0 + pubKeyHash + OP_EQUALVERIFY + OP_CHECKSIG
}
Build a community for BitcoinKit
When you spend utxos, they are still utxo.
Hence, the value of balance is wrong.
When you spend utxos, they should be updated.
Hi everyone!
Let us announce that @BitcoinCashKit became the new maintainer of this repository.
Inspired by @kishikawakatsumi, we've been long developed BitcoinCashKit.
BitcoinCashKit was a fork of kishikawakatsumi/BitcoinKit
enhanced several features.
We and @kishikawakatsumi talked each other, and agreed on us keeping this project move forward from now on. This is mainly because we wanted to contribute the original repository, but @kishikawakatsumi has not enough time to maintain and investigate more about Bitcoin. He is really smart and noted developer, thus he has a lot of other projects to keep an eye on.
I and some of BitcoinCashKit developer are mainly from Yenom Inc, Bitcoin(BCH/BTC) development company in Japan. We have passion for Bitcoin and believe we can make this project go further.
And any contributes to this project are welcome.
Even small change, question, issue, refactoring, feeling, etc...
Let's make this project move forward together!
Best Regards.
Shun Usami
public static let mainnet: Network = Mainnet()
public static let testnet: Network = Testnet()
or show maybe just some way to control this flow from app developer without modifying Bitcoinkit.
How to suppert other coins ?
// m / purpose' / coin_type' / account' / change / address_index
Such as LTC: m/44'/2'..., DOGE: m/44'/3'...
Hello, @kishikawakatsumi
I would like to install your library, but have problem with installing by cocoapods.
Here is error which I have get after pod install
[!] /bin/bash -c
set -e
sh setup/build_libraries.sh
++ dirname setup/build_libraries.sh
If you met this error, could you please explain me solution of that problem
Thanks
Regards
Users can easily select which coin to use
Supports not only BCH but also other coins such as BTC
https://github.com/breadwallet/breadwallet-ios
could be good idea to cherry pick some code.
Improve downloading headers and blocks.
Implement an initial block download (IBD) method called headers-first.
Refer to https://bitcoin.org/en/developer-guide#headers-first
After installing with Carthage i receive an error Missing required module secp256k1
There are no problems installing the framework with CocoaPods, though.
We're thinking of renaming both/part of organization name and repository name.
This is what we are thinking of. Please give us a feedback!
We want to decide and fix the organization name and repository name as soon as possible.
It'll be decided at least until 8/15.
There are several possibilities of renaming .
Priority order is bellow.
We think it'd be the best.
The problem is, the organization name BitcoinKit is already taken.
The organization seems to be not so much active for about 3 years, so we are negotiating the owner if they give it to us or not.
We think this would be the second best.
Since the maintainer for now is almost equal to Yenom developers, it can be the best option.
Dominating or controlling the project is not our aim, instead we want to see broad collaboration.
I think transferring the ownership to a company is not good idea from this perspective.
We think this would be the third best.
We're planning to keep compatibility of both BCH/BTC for as long as possible.
We'll choose BCH when we have to choose one of them.
e.g. The situation that keeping compatibility is too difficult.
Renaming the repository name to be BitcoinCashKit
is good because the name makes it clear.
However, we'll try our best to keep compatibility.
And we believe BitcoinKit
is far better from the branding perspective.
yenom/BitcoinCashKit
Right now this is Yenom developers' working repo.
BitcoinCashKit/BitcoinKit
This is current situation.
Implement Reusable Payment Codes
Reusable Payment Codes spec
https://github.com/bitcoin/bips/blob/master/bip-0047.mediawiki
bitcoinj implementation
bitcoinj-cash/bitcoinj#39
Installing BitcoinKit (0.1.2)
[!] /bin/bash -c
set -e
sh setup/build_libraries.sh
++ dirname setup/build_libraries.sh
Build a Reddit community for BitcoinKit.
Let us share the roadmap for this projects!
Please give us feedback. Any feedback is welcome!
We need your help!
Please feel free to contribute to this project!
sendTo(address:)
, balance()
And more to come...!
This bug comes up occasionally.
I solved the bug by:
//in HDPrivateKey.swift
extension HDPrivateKey {
func bug_fix_ensure_32_bytes(data: Data) -> Data {
let length = data.count
if length >= 32 {
return data
}
var dataFixed = Data()
var int0 = UInt8(0)
let data_0: Data = Data(buffer: UnsafeBufferPointer(start: &int0, count: 1))
for i in 0..<32-length {
dataFixed.append(data_0)
}
dataFixed.append(data)
return dataFixed
}
}
var privateKeyFixed = bug_fix_ensure_32_bytes(data: keys[0])
var chainCodeFixed = bug_fix_ensure_32_bytes(data: keys[1])
Support Segwit transaction
Segwit spec
https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki
Improve validation of transactions when received
Implement merkleblock message
We'd better first learn from existing ones!
https://github.com/atom/atom/blob/master/CONTRIBUTING.md
https://github.com/rails/rails/blob/master/CONTRIBUTING.md
https://github.com/opengovernment/opengovernment/blob/master/CONTRIBUTING.md
'TransactionOutput' initializer is inaccessible due to 'internal' protection level
Or am I doing something wrong? Is there an example?
I cannot import BitcoinKit when running Sample.playground
.
How does it solve this problem?
Still I am getting Could not build Objective-C module 'secp256k1'
Could we see an example of the SendViewController to see how to create / send transactions
Multi-sig using script is unavailable now.
public static func verifyMultiKey(lockScript: Script, unlockScriptBuilder: MultiKeyScriptBuilder, keys: [MockKey]) throws -> Bool {}
Current design implements complex Script in Script.init().
Rich initializer should be moved to Factory class.
Create ScriptFactory
.
let p2pk = ScriptFactory.Standard.buildP2PK(publickey: pubA)
let p2pkh = ScriptFactory.Standard.buildP2PKH(address: pubA.toCashaddr)
let oneDayLockedScript = ScriptFactory.LockTime.build(script: p2pkh, lockDate: Date(timeIntervalSinceNow: 60*60*24))
...
I saw no code in SendViewController.swift.
Thanks!
somebody built a service to watch bitcoin addresses -
it leverages WebSockets from (url: URL(string: "wss://ws.blockchain.info/inv
https://github.com/johndpope/bitwake/blob/develop/BitWake/BitcoinBlockchain.swift
is it possible with all technology onboard this app to query this from blockchain?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.