MCPcopy Index your code
hub / github.com/ZenGo-X/gotham-city

github.com/ZenGo-X/gotham-city @v2.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.0.0 ↗ · + Follow
126 symbols 242 edges 23 files 6 documented · 5% updated 2y agov2.0.0 · 2023-11-23★ 2173 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Build Status

Gotham City

Gotham city is a fully functional client/server application for issuing two party ECDSA signatures.


Server

Gotham server is an ECDSA agnostic signing machine. List of supported Curve(s):

  • secp256k1

Client

You can see a full fledged example of a client which connects to gotham server under: integration-tests/test_ecdsa_key_signing

Project Description

Design Overview

ECDSA Keygen and Signing

ECDSA * For details on Threshold Signatures see Threshold Signatures: The Future of Private Keys

Cryptographic libraries

For more information, see our white paper.

Benchmarks

In a local networking setup, with a MacBook Air M2, 8GB RAM and macOS 13.5: * cargo bench --bench keygen_bench reports 762ms * cargo bench --bench sign_bench reports 151ms

Disclaimer

USE AT YOUR OWN RISK, we are not responsible for software/hardware and/or any transactional issues that may occur while using Gotham city.The project is currently work in progress.

License

See LICENSE for more information.

Contact

For any questions, feel free to email us or join ZenGo X Telegram.

Extension points exported contracts — how you extend this code

Client (Interface)
(no doc) [2 implementers]
gotham-client/src/lib.rs

Core symbols most depended-on inside this repo

post
called by 20
gotham-client/src/lib.rs
get_child
called by 13
gotham-client/src/ecdsa/types.rs
postb
called by 9
gotham-client/src/lib.rs
get_str_from_c_char
called by 7
gotham-client/src/ecdsa/recover.rs
get_String_from_JString
called by 7
gotham-client/src/ecdsa/recover.rs
error_to_c_string
called by 7
gotham-client/src/utilities/mod.rs
load_wallet_from_file
called by 6
demo-wallet/src/bitcoin/commands.rs
get_server
called by 5
gotham-server/src/server.rs

Shape

Method 47
Function 42
Class 32
Enum 4
Interface 1

Languages

Rust100%

Modules by API surface

demo-wallet/src/bitcoin/mod.rs25 symbols
demo-wallet/src/ethereum/mod.rs20 symbols
demo-wallet/src/bitcoin/commands.rs11 symbols
gotham-client/src/ecdsa/recover.rs10 symbols
gotham-server/src/public_gotham.rs9 symbols
demo-wallet/src/ethereum/commands.rs7 symbols
gotham-client/src/lib.rs6 symbols
demo-wallet/src/bitcoin/escrow.rs6 symbols
gotham-client/src/ecdsa/sign.rs5 symbols
integration-tests/tests/ecdsa.rs4 symbols
gotham-server/src/server.rs4 symbols
demo-wallet/src/main.rs4 symbols

For agents

$ claude mcp add gotham-city \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact