aareon / chickenticket Goto Github PK
View Code? Open in Web Editor NEWPure Python implementation of a cryptocurrency blockchain
License: MIT License
Pure Python implementation of a cryptocurrency blockchain
License: MIT License
Figure out target threshold calculation based on calculate_difficulty()
The file setup.py
needs to be updated to remove Allium references. Will post PR soon-ish.
Codecov is not working as expected. Further diagnosis is required
Gather data from blocks about transactions and populate UI fields with correct balances, and gather fee information.
Cryptodome offers faster algo implementations. Requires C compiler
Preferably using PyQT5, create a graphical wallet influenced by the Ethereum wallet.
Could likely include a base64 encoded image in transaction openfield. This intrinsically provides security and ownership of an NFT.
Create an enum to encompass all network message types
Need tests for all pertinent portions of code such as;
Since we're losers and like to use Python, how we're doing this whole thing won't use Allium like C does so it will more than likely not be compatible with current miners which means we'll have to write our own. Hopefully the community will help out with this after launch.
Will support:
CUDA probably 8.0+
OpenCL probably 1.1
CPU better have a ton of xeons homie
Build a stateful lisp-based DSL for sub-contracts
Nim translates easily to JS, Go, C, and Objective-C.
Using websockets, add handling of peers and nodes. More information will be added later.
https://github.com/Aareon/ChickenTicket/security/dependabot/17
Replace python-ecdsa
dependency with alternative.
Building the Allium extension does not require the MSVC compiler specifically, any C compiler that Python knows how to use will work.
Wallet.create_new()
work as a classmethod
{address}.png
Node
and allow registering listener methodsconnections
label when Node
emits a conns_changed
eventhardcoded.py
will error if wallet creation is bugged.
Doing this will allow this particular implementation to remain unique in the future if other coins are forked from this.
Using a keyword phrase as a seed for keypair, create a new wallet
Do not allow hashing or proofing of transactions without validating outputs and amount.
Are you working on minting function Implementation ??
Need to be able to instance a new Block
/Transaction
class using data from a JSON message
Offer an Ethereum smart contract for payments over the Eth network.
The library PySimpleGui
does not support being sub-threaded. Applications may use threads, but PySimpleGui
must not be called by any thread other than the "main" thread.
This will have to be completed after #7
On MacOS, when following Unix command, I get this error:
python3 src/simplegui.py 2023-04-18 10:00:47.194 Python[60564:1744359] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'NSWindow drag regions should only be invalidated on the Main Thread!' *** First throw call stack: ( 0 CoreFoundation 0x00007ff8099531ba __exceptionPreprocess + 242 1 libobjc.A.dylib 0x00007ff80947942b objc_exception_throw + 48 2 CoreFoundation 0x00007ff80997b316 _CFBundleGetValueForInfoKey + 0 3 AppKit 0x00007ff80c9933ef -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 307 4 AppKit 0x00007ff80c97f8e4 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1227 5 AppKit 0x00007ff80c97f412 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42 6 libtk8.6.dylib 0x0000000102e84f91 TkMacOSXMakeRealWindowExist + 720 7 libtk8.6.dylib 0x0000000102e84b93 TkWmMapWindow + 63 8 libtk8.6.dylib 0x0000000102dea125 Tk_MapWindow + 158 9 libtk8.6.dylib 0x0000000102df2a8b MapFrame + 59 10 libtcl8.6.dylib 0x0000000102528171 TclServiceIdle + 75 11 libtcl8.6.dylib 0x000000010250c796 Tcl_DoOneEvent + 341 12 libtk8.6.dylib 0x0000000102e77716 TkpInit + 766 13 libtk8.6.dylib 0x0000000102deb387 Initialize + 2402 14 _tkinter.cpython-310-darwin.so 0x000000010224f6bb Tcl_AppInit + 91 15 _tkinter.cpython-310-darwin.so 0x000000010224f3a9 Tkapp_New + 585 16 _tkinter.cpython-310-darwin.so 0x000000010224f14e _tkinter_create_impl + 222 17 _tkinter.cpython-310-darwin.so 0x000000010224ed74 _tkinter_create + 164 18 Python 0x00000001027181a6 cfunction_vectorcall_FASTCALL + 86 19 Python 0x00000001027f243f call_function + 175 20 Python 0x00000001027e87ea _PyEval_EvalFrameDefault + 24122 21 Python 0x00000001027e103f _PyEval_Vector + 383 22 Python 0x00000001026b0900 _PyObject_FastCallDictTstate + 96 23 Python 0x0000000102745b59 slot_tp_init + 201 24 Python 0x000000010273c3e2 type_call + 322 25 Python 0x00000001026b0674 _PyObject_MakeTpCall + 132 26 Python 0x00000001027f24fd call_function + 365 27 Python 0x00000001027e87ea _PyEval_EvalFrameDefault + 24122 28 Python 0x00000001027e103f _PyEval_Vector + 383 29 Python 0x00000001027f243f call_function + 175 30 Python 0x00000001027e8831 _PyEval_EvalFrameDefault + 24193 31 Python 0x00000001027e103f _PyEval_Vector + 383 32 Python 0x00000001027f243f call_function + 175 33 Python 0x00000001027e8831 _PyEval_EvalFrameDefault + 24193 34 Python 0x00000001027e103f _PyEval_Vector + 383 35 Python 0x00000001027f243f call_function + 175 36 Python 0x00000001027e875d _PyEval_EvalFrameDefault + 23981 37 Python 0x00000001027e103f _PyEval_Vector + 383 38 Python 0x00000001026b472f method_vectorcall + 159 39 Python 0x00000001027f243f call_function + 175 40 Python 0x00000001027e88ec _PyEval_EvalFrameDefault + 24380 41 Python 0x00000001027e103f _PyEval_Vector + 383 42 Python 0x00000001027f243f call_function + 175 43 Python 0x00000001027e875d _PyEval_EvalFrameDefault + 23981 44 Python 0x00000001027e103f _PyEval_Vector + 383 45 Python 0x00000001027f243f call_function + 175 46 Python 0x00000001027e87ea _PyEval_EvalFrameDefault + 24122 47 Python 0x00000001027e103f _PyEval_Vector + 383 48 Python 0x00000001027f243f call_function + 175 49 Python 0x00000001027e875d _PyEval_EvalFrameDefault + 23981 50 Python 0x00000001027e103f _PyEval_Vector + 383 51 Python 0x00000001027e8f29 _PyEval_EvalFrameDefault + 25977 52 Python 0x00000001027e103f _PyEval_Vector + 383 53 Python 0x00000001027f243f call_function + 175 54 Python 0x00000001027e875d _PyEval_EvalFrameDefault + 23981 55 Python 0x00000001027e103f _PyEval_Vector + 383 56 Python 0x00000001027f243f call_function + 175 57 Python 0x00000001027e875d _PyEval_EvalFrameDefault + 23981 58 Python 0x00000001027e103f _PyEval_Vector + 383 59 Python 0x00000001026b4871 method_vectorcall + 481 60 Python 0x00000001028e8b36 thread_run + 198 61 Python 0x000000010286bb84 pythread_wrapper + 36 62 libsystem_pthread.dylib 0x00007ff8098001d3 _pthread_start + 125 63 libsystem_pthread.dylib 0x00007ff8097fbbd3 thread_start + 15 ) libc++abi: terminating due to uncaught exception of type NSException zsh: abort python3 src/simplegui.py
We're shooting for the Allium algorithm, which I believe @AnonymousDapper has made some progress on.
Extensive testing will be needed to verify that the algorithm is being used properly. The genesis.py
transaction hash will also have to be changed from SHA256
to Allium
I'd like all addresses to be generated with a prefix that plainly shows that the following address is a CHKN address, like so;
chkn840eb1f3f245b36fbc21bb45255b4e47d5d4db74a91373628a8cd9c39abd
I used the command to run the gui program and I got the following error (running on Mac so this may be some compatibility issue but it also my be a threading problem):
DEPRECATION WARNING: The system version of Tk is deprecated and may be removed in a future release. Please don't rely on it. Set TK_SILENCE_DEPRECATION=1 to suppress this warning. 2024-03-29 23:50:20.583 Python[17510:456376] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'NSWindow drag regions should only be invalidated on the Main Thread!' *** First throw call stack: ( 0 CoreFoundation 0x00007ff8180a911a __exceptionPreprocess + 242 1 libobjc.A.dylib 0x00007ff817bcf0b7 objc_exception_throw + 48 2 CoreFoundation 0x00007ff8180d1296 -[NSException raise] + 9 3 AppKit 0x00007ff81b0f4d2e -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 307 4 AppKit 0x00007ff81b0e1244 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1227 5 AppKit 0x00007ff81b0e0d72 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42 6 Tk 0x00007ffb1cec139f TkMacOSXMakeRealWindowExist + 604 7 Tk 0x00007ffb1cec2554 TkMacOSXUnregisterMacWindow + 2126 8 Tk 0x00007ffb1cec1f86 TkMacOSXUnregisterMacWindow + 640 9 Tcl 0x00007ffb1cd45398 Tcl_ListMathFuncs + 1765 10 Tcl 0x00007ffb1cd45c0d Tcl_EvalObjv + 57 11 _tkinter.cpython-39-darwin.so 0x0000000109d25a2c PyInit__tkinter + 5628 12 Python3 0x0000000109e59a1a PyDescr_NewMethod + 490 13 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 14 Python3 0x0000000109f2a5b6 _PyEval_EvalFrameDefault + 22998 15 Python3 0x0000000109f2eb4c _PyEval_EvalFrameDefault + 40812 16 Python3 0x0000000109e51665 _PyFunction_Vectorcall + 261 17 Python3 0x0000000109e53a8f PyMethod_New + 367 18 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 19 Python3 0x0000000109f2a5d4 _PyEval_EvalFrameDefault + 23028 20 Python3 0x0000000109e51760 _PyFunction_Vectorcall + 512 21 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 22 Python3 0x0000000109f2a666 _PyEval_EvalFrameDefault + 23174 23 Python3 0x0000000109e51760 _PyFunction_Vectorcall + 512 24 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 25 Python3 0x0000000109f2a666 _PyEval_EvalFrameDefault + 23174 26 Python3 0x0000000109f2eb4c _PyEval_EvalFrameDefault + 40812 27 Python3 0x0000000109e51665 _PyFunction_Vectorcall + 261 28 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 29 Python3 0x0000000109f2a5b6 _PyEval_EvalFrameDefault + 22998 30 Python3 0x0000000109f2eb4c _PyEval_EvalFrameDefault + 40812 31 Python3 0x0000000109e51665 _PyFunction_Vectorcall + 261 32 Python3 0x0000000109e53a8f PyMethod_New + 367 33 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 34 Python3 0x0000000109f2a6f5 _PyEval_EvalFrameDefault + 23317 35 Python3 0x0000000109f2eb4c _PyEval_EvalFrameDefault + 40812 36 Python3 0x0000000109e51665 _PyFunction_Vectorcall + 261 37 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 38 Python3 0x0000000109f2a5b6 _PyEval_EvalFrameDefault + 22998 39 Python3 0x0000000109f2eb4c _PyEval_EvalFrameDefault + 40812 40 Python3 0x0000000109e51665 _PyFunction_Vectorcall + 261 41 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 42 Python3 0x0000000109f2a5d4 _PyEval_EvalFrameDefault + 23028 43 Python3 0x0000000109f2eb4c _PyEval_EvalFrameDefault + 40812 44 Python3 0x0000000109e51665 _PyFunction_Vectorcall + 261 45 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 46 Python3 0x0000000109f2a5b6 _PyEval_EvalFrameDefault + 22998 47 Python3 0x0000000109f2eb4c _PyEval_EvalFrameDefault + 40812 48 Python3 0x0000000109e51665 _PyFunction_Vectorcall + 261 49 Python3 0x0000000109f2aa47 _PyEval_EvalFrameDefault + 24167 50 Python3 0x0000000109e51760 _PyFunction_Vectorcall + 512 51 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 52 Python3 0x0000000109f2a5b6 _PyEval_EvalFrameDefault + 22998 53 Python3 0x0000000109e51760 _PyFunction_Vectorcall + 512 54 Python3 0x0000000109f2da7b _PyEval_EvalFrameDefault + 36507 55 Python3 0x0000000109f2a5b6 _PyEval_EvalFrameDefault + 22998 56 Python3 0x0000000109e51760 _PyFunction_Vectorcall + 512 57 Python3 0x0000000109e53b18 PyMethod_New + 504 58 Python3 0x0000000109fc57d6 PyInit__thread + 5702 59 Python3 0x0000000109f783e9 PyThread_start_new_thread + 313 60 libsystem_pthread.dylib 0x00007ff817f561d3 _pthread_start + 125 61 libsystem_pthread.dylib 0x00007ff817f51bd3 thread_start + 15 ) libc++abi: terminating due to uncaught exception of type NSException zsh: abort /usr/bin/python3 simplegui.py
Create multisig wallets
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.