neodix42 / MyLocalTon

Personal local TON blockchain
GNU General Public License v3.0
117 stars 20 forks source link

Getting a deterministic lite server public key #37

Closed dkatzan closed 2 weeks ago

dkatzan commented 2 months ago

Hi, is there a way we can get a deterministic public key to connect to lite servers maybe hardcode it, or provide a seed as an argument to the node?

context - it can be useful when used in testing envs, where u set up a node and run tests against it, and u want to be able to easily make the tests connect to the node using ADNL thx!

neodix42 commented 1 month ago

why can't you connect without using public key, i.e. via lite-client -C my-ton-global.config.json

dkatzan commented 1 month ago

the local ton is running in it's own docker (when running it locally) or on kuberenetes ad part of e2e test flows

the test code itself and rest of our system is running in different dockers \ pods, and currently using http (I"m using both ton-http-api and opentonapi) by exposing their ports on the node docker and also setting it using env var in the rest of my system

I'm looking to also be able to connect through ADNL, and not having a deterministic setup is making it a bit more complicated, since I need to somehow access the config file in the docker, after it is started and can't configure the credentials in the rest of my system using env vars

neodix42 commented 1 month ago

ok, got it. There was also a feature request to introduce a REST interface for MyLocalTon, where one could retrieve various myLocalTon information, like global.config and other parameters. I guess that would also suit you, right?

dkatzan commented 1 month ago

my plan was to manually add a rest interface to obtain the config file (I actually already have such a rest interface for other helpful operations for my tests) having it natively as part of MyLocalTon would indeed be easier

but ideally, making it a consistent config will suit us even better the reason is I want to inject this config to the rest of my system in env vars, which won't be possible to do, it will also require the rest of the system to wait for MyLocalTon to be running before it can obtain it (which currently takes around a minute)

neodix42 commented 1 month ago

you can try this with release v123 lite-client -a 127.0.0.1:4443 -b E7XwFSQzNkcRepUC23J2nRpASXpnsEKmyyHYV4u/FZY= -c last