Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Client cli #90

Closed
liamsi opened this issue Sep 22, 2016 · 11 comments
Closed

Client cli #90

liamsi opened this issue Sep 22, 2016 · 11 comments
Assignees
Labels
Milestone

Comments

@liamsi
Copy link
Member

liamsi commented Sep 22, 2016

The (test-)client command line interface should have the the following functionality:

  • register a name-to-key binding
  • update a name-to-key-binding
  • lookup a key

And deal with all the details/edge-cases that come with that, e.g, dealing with temporary bindings etc

The cli should clarify what a real client would need to implement and what a client would need to know in advance/before doing its first request (like initial public key of the key-server, key-server's epoch duration, or "initial" STR if necessary).

For a start, we omit the possibility to alter the key-change policy (which is currently possible in the java-test client: https://github.com/coniks-sys/coniks-java/blob/master/coniks_test_client/src/main/java/org/coniks/coniks_test_client/TestClient.java#L447)

@arlolra arlolra added the client label Sep 22, 2016
@vqhuy
Copy link
Member

vqhuy commented Sep 23, 2016

@liamsi Maybe we can reuse this testutil (https://github.com/coniks-sys/coniks-go/blob/master/keyserver/testutil/testutil.go#L124)?

@liamsi
Copy link
Member Author

liamsi commented Sep 23, 2016

Looks useful indeed. Thanks!

@liamsi
Copy link
Member Author

liamsi commented Sep 23, 2016

Is there an equivalent dealing with the registration (from a clients perspective/directly contacting the twitter bot)? I see there is also https://github.com/coniks-sys/coniks-go/blob/master/keyserver/testutil/testutil.go#L154 but this is only for internal communication, though?

@vqhuy
Copy link
Member

vqhuy commented Sep 23, 2016

Is there an equivalent dealing with the registration (from a clients perspective/directly contacting the twitter bot)?

Yes, it is.

@liamsi
Copy link
Member Author

liamsi commented Sep 24, 2016

Yes, it is.

Could you point me to the code? I didn't find code which actually send the particular DMs to the bot (only code that directly calls TwitterBot.HandleRegistration).
If the command line client should help implementing a real client it should also use the twitter API (like the TorMessenger would), I guess?
Hope I can finish the client today/tomorrow...

@vqhuy
Copy link
Member

vqhuy commented Sep 24, 2016

Oops, I misinterpreted your question. Sorry :(
I think we don't need to run a Twitter Bot in the command line client test, it could bypass the bot and just connect to the server directly via a unix socket connection.

If the command line client should help implementing a real client it should also use the twitter API (like the TorMessenger would)

Yes, if we decide to go to with a real client, we will need to use the twitter API (I think we can re-use the go-twitter package).

Ahh, sorry again :(

@liamsi
Copy link
Member Author

liamsi commented Sep 24, 2016

Thanks for your reply and no worries!

I think we don't need to run a Twitter Bot in the command line client test, it could bypass the bot and just connect to the server directly via a unix socket connection.

OK, then I start with that. Although I think, for this client to be actually useful, we would need it to got through the twitter bot. Otherwise the registration is simplified so much that someone looking at the go-test-client won't figure out the how-to implement a real client.

@liamsi liamsi mentioned this issue Sep 25, 2016
3 tasks
@masomel masomel modified the milestone: 0.1.0 Sep 29, 2016
@vqhuy vqhuy added this to the 0.1.0 milestone Nov 24, 2016
arlolra pushed a commit that referenced this issue Nov 27, 2016
 * Minimalistic test-client.  Part of #90

 * Currently registration & lookup is implemented.

 * Some differences to a real client implementation:

   * Client doesn't use (twitter-)bot for registration;

   * Client doesn't store and verify the hash chain;

   * Client uses testutils package (which doesn't verify the tls-cert).

 * Closes #93
@vqhuy
Copy link
Member

vqhuy commented Nov 28, 2016

Should we close this?

@arlolra
Copy link
Member

arlolra commented Nov 28, 2016

Yup

@arlolra arlolra closed this as completed Nov 28, 2016
@vqhuy
Copy link
Member

vqhuy commented Dec 2, 2016

TODO:

@liamsi
Copy link
Member Author

liamsi commented Dec 2, 2016

TODO:
[ ] Monitoring (see the bug in #138)

I opened #144 for this specific issue.

@liamsi liamsi closed this as completed Dec 2, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants