New feature: better know the requirements to join

Here is the new API method: /wot/requirements/[pubkey]

This method will inform, for each identity matching given pubkey, what the identity lacks to become a member, i.e. what are its requirements.

http://metab.ucoin.io/wot/requirements/G2CBgZBPLe6FSFUgpx2Jf1Aqsgta6iib3vmDRA1yLiqU


{
  "identities": [
    {
      "uid": "aaa",
      "meta": {
        "timestamp": 1443121769
      },
      "outdistanced": [
        "2sq8bBDQGK74f1eD3mAPQVgHCmFdijZr9nbv16FwbokX",
        "37qBxM4hLV2jfyYo2bNzAjkeLngLr2r7G2HpdpKieVxw",
        "6yyrGr5FuXKkWTbAiYijfKG62zP4pWPfiipgnzWh5WKs",
        "8Fi1VSTbjkXguwThF4v2ZxC5whK7pwG2vcGTkPUPjPGU",
        "8ML26qB3pfydANsBDMzebNh3GQyFKwheV8BnuGRDHJFy",
        "ATkjQPa4sn4LBF69jqEPzFtRdHYJs6MJQjvP8JdN7MtN",
        "CMDDoaXSKysTv87p6iXnxF55i3hxzam9bGqWT6v1MRfr",
        "Cyz2r3Gs1ppCeVMrREm9uWrEsLf2jP1oAypsn8838J9i",
        "DKqZ9LqCtHRQD3WWZWJNaStxiqNm46Q64Pg6eaixrzRL",
        "EPs9qX7HmCDy6ptUoMLpTzbh9toHu4au488pBTU9DN6y",
        "FADxcH5LmXGmGFgdixSes6nWnC4Vb4pRUBYT81zQRhjn",
        "HRczD5uRVHWV2xXTd3t3U6RYgWNXyvUUXvsMeVrcMuCS",
        "HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk",
        "J78bPUvLjxmjaEkdjxWLeENQtcfXm7iobqB49uT1Bgp3"
      ],
      "certifications": 0,
      "membershipMissing": true
    }
  ]
}

Note 3 things:

  • certifications returns the number of certifications of the identity, it has to be compared with sigQty parameter
  • membershipMissing informs only if the node has a join membership, it does not tell if it has expired for example
  • outdistanced returns the public keys of members that are too far from identity

This method has been made to help newcomers understand what they need left to become members.

2 Likes

Great !
May be it should be more useful to have the pubkeys of the members that are at the good distance to certify the identity. Then the client can propose this list to ask for certifications.

And the list of “in the distance” members is shorter than the “outdistanced” ones (the rest of the network).
IMHO.

And, by the way, could we have UIDs with pubkeys. More useful to humans.

1 Like

Yes, but finding potential paths should be a higher level service, because it supposes:

  • for each outdistanced member
    • find the members that are distance 1 from him
    • find the members that are distance n from him
    • where n = max - 1.

So the result will be almost anyone (only one distance is substracted). I don’t think it is worth a computation for uCoin. Maybe higher services will be interesting, however, if it had to find potential members in a given area, for example that lives in our city.

Yes.

1 Like