A method for providing recommendations, the method performed by a verification and reward issuance engine comprising a blockchain networking system and a computing device coupled to the blockchain networking system, the method comprising:
- broadcasting at least one recommendation request to a plurality of second users, on receiving the at least one recommendation request from at least one first user;
- receiving and verifying at least one input from at least one second user of the plurality of second users in response to the broadcasted at least one recommendation request, wherein the verifying at least one input received from the at least one second user includes:
- enabling a plurality of computing nodes of the blockchain networking system to verify the received at least one input and trustworthiness of the at least one second user from whom the at least one input is received, and
- checking if a number of computing nodes verified the received at least one input and trustworthiness of the at least one second user satisfies a threshold, wherein the threshold is varied dynamically based on the number of plurality of computing nodes in the blockchain networking system,
- wherein the plurality of computing nodes verifies the received at least one input and the trustworthiness of the at least one second user from whom the at least one input is received using a proof of work consensus method, wherein the verifying the received at least one input and the trustworthiness of the at least one second user from whom the at least one input is received includes:
- generating decrypted data using the at least one RP-ID of the at least one second user;
- checking if the decrypted data includes the user details associated with the at least one second user;
- verifying that the at least one second user is not a legitimate user and rejecting the at least one input received from the at least one second user if the decrypted data does not include the user details associated with the at least one second user;
- and
- verifying that the at least one second user is a legitimate user, and accepting the at least one input received from the at least one user;
- and
- providing, by a recommendation engine coupled to the verification and reward issuance engine, at least one recommendation to the requested at least one first user using the verified at least one input and previous recommendations,
- wherein the providing, by the recommendation engine, the at least one recommendation includes:
- maintaining a plurality of recommendations and associated recommendation details across multiple tiers of recommendations indicating priority for the plurality of recommendations, wherein the plurality of recommendations are the previous recommendations corresponding to previous recommendation requests;
- receiving the at least one recommendation request of the at least one first user, and the at least one verified input corresponding to the received at least one recommendation request as at least one latest recommendation from the verification and reward issuance engine;
- updating the plurality of recommendations and the associated recommendation details maintained across the multiple tiers of recommendations using the received at least one verified input;
- and
- providing the at least one recommendation to the requested at least one first user from the updated plurality of recommendations maintained across the multiple tiers of recommendations, and
- wherein the updating the plurality of recommendations maintained across the multiple tiers of recommendations includes:
- determining if the received at least one verified input matches with at least one recommendation of the plurality of recommendations maintained across the multiple tiers of recommendations;
- determining a tier of recommendations associated with the at least one recommendation if the corresponding at least one recommendation matches with the received at least one verified input;
- identifying the determined tier of recommendations as a current tier for the received at least one verified input;
- determining an updated tier for the received at least one verified input using the RPs associated with the at least one verified input, and a RP threshold criteria associated with the identified current tier, wherein the updated tier is at least one of a succeeding tier and a preceding tier of the current tier of recommendations, and the same current tier;
- and
- transferring the at least one recommendation matching the received at least one verified input from the current tier of recommendations to the updated tier of recommendations if the determined updated tier is at least one of the succeeding and preceding tiers of the current tier of recommendations.