Commit Graph
100 Commits
Author SHA1 Message Date
a10zn8 25dbc7c388 response signing with auth key (#811)
* docs: spec for unifying response signing with auth key

Design для замены отдельной SignatureConfig на подпись ответов
RSA-ключом, взятым из auth.server.provider-private-key.

Made-with: Cursor

* docs: implementation plan for auth-based response signing

План реализации по спеке 2026-04-20-response-signing-with-auth-key-design.md.
Разбит на 9 задач: новые RsaSigner/DisabledSigner по TDD, переработка фабрики
под AuthorizationConfig, удаление SignatureConfig/signed-response, снятие
cache-гейта в EthereumLocalReader, обновление документации.

Made-with: Cursor

* feat(signature): add RsaSigner using SHA256withRSA

Made-with: Cursor

* feat(signature): add DisabledSigner that throws on sign()

Made-with: Cursor

* refactor(signature): ResponseSigner.sign returns non-null Signature

Made-with: Cursor

* refactor(signature): build signer from AuthorizationConfig

Made-with: Cursor

* refactor(config): remove signed-response YAML section and SignatureConfig

Made-with: Cursor

* refactor(signature): remove EcdsaSigner and NoSigner

Remove the obsolete ECDSA signer and the transitional NoSigner stub.
Replace NoSigner usages in tests with DisabledSigner, and pass
DisabledSigner to BroadcastReader in tests (signer is now non-null).

Made-with: Cursor

* refactor(local-reader): serve cached results for requests with nonce

Made-with: Cursor

* docs: replace signed-response with auth section incl. response signing

Made-with: Cursor

* docs: correct auth section YAML and expand Response Signing note

- docs/reference-configuration.adoc: fix the YAML shape of the auth
  section (server.keys.{provider-private-key,external-public-key} and
  publicKeyOwner) to match AuthorizationConfigReader, and expand the
  Response Signing subsection with the actual signed-message format.
- .gitignore: ignore /demo/response-signing/ (local sandbox with keys
  and generated gRPC stubs — regenerate with generate-keys.sh + protoc)
  and /docs/superpowers/ (specs/plans kept local-only for now). Any
  previously tracked files under these paths are untracked here.

Made-with: Cursor

* feat(upstream): auto-inject secure-signed label when signing is enabled

Expose ResponseSigner.enabled and thread the bean through UpstreamCreator
so Generic/Ethereum/Bitcoin creators can enrich each upstream's labels
with secure-signed=true whenever auth-backed response signing is active.
A user-provided value for the label is preserved.

Made-with: Cursor
2026-04-21 10:33:37 +03:00
a10zn8 1b12d83066 update proto (#787) 2026-02-01 14:01:02 +03:00
a10zn8 f0ae40a3ac add blobs methods (#751) 2025-12-04 13:06:15 +03:00
a10zn8 080d92a6c1 update public (#748) 2025-12-02 14:26:52 +03:00
a10zn8 619b98f9e5 support clio ripple node and implement node type and version detection for ripple (#744) 2025-11-13 12:32:38 +03:00
a10zn8 35fa52a01e more nullable values in RippleServerState (#739) 2025-10-31 16:33:16 +03:00
a10zn8 adebfacf45 new error for receipts lower bound (#738) 2025-10-31 16:21:04 +03:00
a10zn8 b4acc08f51 add eth_blobBaseFee (#736) 2025-10-29 11:16:11 +03:00
a10zn8 8d042f4a10 update taiko chainid (#735) 2025-10-28 15:52:34 +03:00
a10zn8 475829249e add arc (#734) 2025-10-27 00:32:17 +03:00
a10zn8 fba0b139c3 add sophor support (#732) 2025-10-10 16:07:24 +03:00
a10zn8 3bd4ab3b28 add doma network (#731) 2025-10-09 00:12:29 +03:00
a10zn8 da347d9de3 add plasma (#726) 2025-09-19 23:38:23 +03:00
a10zn8 5da72a47e1 disable starknet tx broadcast (#717) 2025-09-01 13:38:38 +03:00
a10zn8 323d23a126 flashblocks detection (#687) 2025-07-16 19:28:23 +03:00
a10zn8 f3bb97d51a remove noisy logs (#668) 2025-05-27 14:30:15 +03:00
a10zn8 d30f61bdc0 update submodules (#652)
* update submodules

* up
2025-04-11 11:08:31 +03:00
a10zn8 9ca2c921b5 support null topics and topic position in logs filter (#649) 2025-04-04 17:09:08 +03:00
a10zn8 3b7041d495 add hyperliquid mainnet (#644) 2025-03-21 16:16:03 +03:00
a10zn8 2b2533f8ba add zirc_isQuarantined (#643) 2025-03-20 16:51:55 +03:00
a10zn8 b8cf73a166 add hoodi and bepolia (#642) 2025-03-18 14:57:36 +03:00
a10zn8 29971654e6 add 5min cooldown for non-consec-blocks (#641) 2025-03-17 16:43:55 +03:00
a10zn8 21e6cb94ff detect trace_callMany (#637)
fix success detection in case of error during other methods detection
2025-03-11 13:12:55 +03:00
a10zn8 739cc8d675 add zircuit-garfield (#636) 2025-02-24 22:56:38 +03:00
a10zn8 e70ccd4feb use only generic connection in examples (#632) 2025-02-13 21:37:48 +03:00
a10zn8 a8bcd0d37a add correct getRecentBlockhash (#628) 2025-02-04 01:04:38 +03:00
a10zn8 c7421b4cf9 remove getLatestBlockHash solana method (it was a typo, original method is getLatestBlockhash) (#627) 2025-02-03 22:08:08 +03:00
a10zn8 8ccf730640 add soneium mainnet (#624) 2025-01-30 00:10:13 +03:00
a10zn8 03fe702824 ban /eth/v1/beacon/states/*/validator_balances and /eth/v1/beacon/states/*/validators cause they are too big (#614) 2024-12-31 16:24:13 +03:00
a10zn8 b8f87941a5 fix shutdown (#590) 2024-11-05 20:34:17 +03:00
a10zn8 152e6c37f3 added ape, uni and soneium (#587) 2024-11-01 15:53:48 +03:00
a10zn8 2800556ff1 added lens and sonic chains (#578) 2024-10-17 12:59:43 +03:00
a10zn8 7c4d061fd0 listunspent only in case of balances is provided (#575) 2024-09-25 17:03:40 +03:00
a10zn8 6bbc771526 added snaxchain, everclear and xlayer (#571) 2024-09-17 15:26:18 +03:00
a10zn8 f916f0a682 use always qourum for eth_getBlockReceipts (#569) 2024-09-12 14:34:57 +03:00
a10zn8 68344cecaf update chains yaml (#555) 2024-08-26 14:08:21 +03:00
a10zn8 3d9193e11c always set onsyncingmode (#547) 2024-08-21 16:45:22 +03:00
a10zn8 0e8eca53ec add metal l2, bob, goat (#551) 2024-08-20 17:11:02 +03:00
a10zn8 ef9c2e42a8 lower block detection on filecoin (#546) 2024-08-12 00:04:46 +03:00
a10zn8 f5d75e133b add polkadot and kusama (#543) 2024-08-08 01:09:20 +03:00
a10zn8 642e3851f8 make additional request for blockhash in polkadot (#537) 2024-08-02 15:22:26 +03:00
a10zn8 09a6508cab support erigon3 syncing validation (#538) 2024-08-01 13:25:46 +03:00
a10zn8 008b4c51d2 support avail network (#530) 2024-07-24 14:43:36 +04:00
a10zn8 ac1e727e7f validate upstream version (#527) 2024-07-21 18:55:15 +03:00
a10zn8 6a1eae8516 more logs for ws (#526) 2024-07-17 18:04:04 +03:00
a10zn8 2e2a538b92 new link for chains.yaml (#524) 2024-07-16 11:16:27 +03:00
a10zn8 927575be22 public repo (#520) 2024-07-09 13:17:03 +03:00
a10zn8 1e448997f3 osmosis chain id fix (#515) 2024-07-01 23:29:41 +03:00
a10zn8 cce2bcf739 check chain_ids on all networks (#507)
* check chain_ids on all networks
2024-06-11 17:41:37 +03:00
a10zn8 724e9be98a add cosmos more cosmos nets 2024-05-31 16:55:40 +03:00
a10zn8 4aff35994f add cosmos rpc support 2024-05-31 14:24:54 +03:00
a10zn8 874e53fc6f rest support improvement 2024-05-01 13:42:43 +03:00
a10zn8 dceb4d0ec2 Polygon Blackberry 2024-03-19 18:51:16 +03:00
a10zn8 b5180ae543 rename gelato networks 2024-03-18 23:33:11 +03:00
a10zn8 f33c742f2f add playnance mainnet 2024-03-18 17:01:45 +03:00
a10zn8 0cfff64c4c fix gelato networks name 2024-03-03 19:05:46 +03:00
a10zn8 8d4c4640e4 revise polka methods 2024-03-01 15:05:42 +03:00
a10zn8 3c475c63cd fix endless parsing 2024-03-01 12:56:58 +03:00
a10zn8 a4024114b1 add another gelato blockchains 2024-02-29 18:31:18 +03:00
a10zn8 2f1e9aa087 up submodule 2024-02-28 18:11:05 +03:00
a10zn8 b9d34a39cf fix parse of errors 2024-02-28 18:11:05 +03:00
a10zn8 8d171e83e7 review fixes 2024-02-28 18:11:05 +03:00
a10zn8 6cc0e18692 support object params 2024-02-28 18:11:05 +03:00
a10zn8 8c5e69a7f5 near protocol support 2024-02-28 18:11:05 +03:00
a10zn8 84ea3b86a1 add eth_createAccessList to default methods 2024-02-14 17:17:53 +03:00
a10zn8 f4aae5b7f5 remove etherjar dependency 2024-02-14 15:25:08 +03:00
a10zn8 31ed51a359 move domain clasess to dshackle to fix integer limitation of transaction V value 2024-02-14 15:25:08 +03:00
a10zn8 aa4f569ce2 use text format in ws communication 2024-02-14 15:25:08 +03:00
a10zn8 5e94e521a3 send original json of ws subscription heads (#413) 2024-02-02 14:56:02 +03:00
a10zn8 13323d0428 starknet_syncing may return true/false besides syncing object (#402) 2024-01-22 00:13:35 +03:00
a10zn8 efaf0dbe5a Add Solana documentation notes (#400) 2024-01-17 15:27:45 +03:00
a10zn8 4d00bf581d add forkchoice settings to chains.yaml (#399) 2024-01-17 11:32:01 +03:00
a10zn8 0216f3ea61 add rollup_gasPrices for mantle (#382) 2024-01-10 14:43:15 +03:00
a10zn8 a9a3e64c32 add base sepolia (#363) 2023-12-12 16:47:22 +03:00
a10zn8 8f7377bc66 add eth_getBlockReceipts as possibleNotIndexedMethods for ethereum methods (#362) 2023-12-11 18:43:12 +03:00
a10zn8 69406cf444 fix solana testnet code (#357) 2023-12-05 18:04:55 +03:00
a10zn8 9696f06732 add solana devnet (#355) 2023-11-30 23:33:56 +03:00
a10zn8 245a6d5ad7 fix chains labels (#354) 2023-11-30 14:17:02 +03:00
a10zn8 bb3d56856c report only available subscription in generic case (#352) 2023-11-27 23:13:48 +03:00
a10zn8 d0322a0dab validators for starknet, vara and solana (#350) 2023-11-26 16:42:43 +03:00
a10zn8 138e5d3eb3 update docs (#348) 2023-11-23 00:08:01 +03:00
a10zn8 7bdeaa8f05 solana stable poll (#344) 2023-11-21 00:59:35 +03:00
a10zn8 2e80da58df solana support (#339) 2023-11-13 17:01:58 +03:00
a10zn8 160e5ae26c custom ws subscriptions for vara (#334) 2023-11-03 15:54:30 +03:00
a10zn8 66b9b00454 add base support of polkadot/substrate/vara chain (#332) 2023-11-02 16:18:54 +03:00
a10zn8 08cbffe7d1 ethereum as generic upstream (#331)
- merge all Ethereum implementations to Generic upstreams and multistreams
- merge evm-pos and pow to ethereum
2023-10-31 16:28:15 +03:00
a10zn8 defc0b5a7b - set throttled logger timeout for 20 minutes
- set astar chain block time to 1m
- add throttled log to liveness checker
2023-10-25 19:16:54 +04:00
a10zn8 788db75b73 remove unused specific tracks (#326)
merge ethereum interfaces with generic ones
2023-10-24 15:16:35 +04:00
a10zn8 1310c8b7df disable astar peer validation (#325) 2023-10-24 10:07:13 +04:00
a10zn8 5157d6fe7f Stability (#324)
* propagate rootcause of JsonRpcException
* increase pool size
* Log WsConnectionImpl exceptions
2023-10-24 10:04:16 +04:00
a10zn8 89880355d8 add astart (#323) 2023-10-19 17:27:23 +03:00
a10zn8 0d3c8b99b7 add blockchain type to chains.yaml (#322) 2023-10-19 17:22:33 +03:00
a10zn8 53651bc104 fix reload config of nodes with ids - we should clear known ids set before each reload. (#321) 2023-10-12 23:51:58 +04:00
a10zn8 a9f6378d90 add scroll-mainnet (#320) 2023-10-12 19:23:26 +04:00
a10zn8 fc48d9658b add immutable-zkevm-testnet (#319) 2023-10-12 01:12:05 +04:00
a10zn8 7194a70959 fix typo in Make file (#318) 2023-10-11 18:44:19 +04:00
a10zn8 f3bf34768a generic upstreams introduced (#317)
- added base implementation of upstreams/multistreams
- connectors were generalised, chain specific logic was extracted to ChainSpecific class
- StarkNet network support based on generic upstreams added
2023-10-09 23:17:16 +04:00
a10zn8 109fb97e0a move to java 20 (#306) 2023-09-22 16:01:01 +04:00
a10zn8 5a2e5e9304 update netty (#301) 2023-09-18 17:00:13 +04:00
a10zn8 bfdbce2743 difficulty and gasLimit could be empty in celo (#300) 2023-09-15 18:47:56 +04:00