q9656296 - Integrate Incognito into Telegram (PoC)

Hello everyone!

I’m pretty sure you came across @andrey 's article Integrate Incognito into Signal and other messengers.

When I saw this article, I carefully studied the comments and found a post from @andireuter (about integration Incognito into Signal), which inspired me to integrate Incognito into one of the top messengers. And, so I chose Telegram - the most popular (as for me). I carefully studied the documentation and discussed with my team a plan to implement it.

For some time we didn’t even dare to publicly declare that we were starting to do this project. Therefore, today we already have something to show. And we plan to add more in the next couple of days.

Regarding @andireuter’s post: I think we are solving the same privacy problems but in different messengers. We also would like to make Incognito a default privacy wallet in the Telegram. And the first crypto wallet as well.

What is the solution?

We’re moving @andrey’s idea forward and plan to implement the basic functionality of the Incognito wallet in the Telegram:

  • User registration or import of an existing Incognito account. > Adding an Incognito button (after clicking on the “Burger” button in the Telegram)
  • Assigning a wallet to the user when logging into Telegram > binding the public key to the userid
  • Display of user balance
  • User keys manager: Export private key > Copy keys, view keys, import existing keys
  • Ability to create or import multiple Incognito accounts.
  • Sending currency to another user using his wallet address

Based on our discussions with the team, we have described the basic test cases:

Opening:

  • New user can register on Telegram and open Incognito modal window
  • User can login and open Incognito modal window
  • User gets an Incognito account automatically
  • User, that already has an Incognito account, can open an Incognito

Assets:

  • Account Anon is default
  • Balances are viewed on the main page
  • Button “Accounts” is visible on user’s dashboard
  • User can open “Accounts”
  • User can choose an account and view balance

Keys:

  • Button “Keys” is visible on user’s dashboard
  • User can open “Keys”
  • List of accounts is visible
  • Details for each account can be opened
  • Account details include “Your incognito address”
  • Account details include “Private key”
  • Account details include “Public key”
  • Account details include “Readonly key”
  • Account details include “Validator key”
  • “Your incognito address” can be copied
  • “Private key” can be copied
  • “Public key” can be copied
  • “Readonly key” can be copied
  • “Validator key” can be copied

Import:

  • “Import” can be opened
  • “Import” has a field “Keychain name”
  • “Import” has a field “Private Key”
  • “Import” has a button “Import keychain”
  • User can enter a name for Private Key
  • User can enter Private Key
  • User can click on “Import keychain”
  • After clicking on “Import keychain” button, the user is transferred to the “Keys” section
  • After importing keychain, new account is visible in the list

Transfer:

  • User can go back to the previous section

Trade:

  • Button “Trade” is visible on user’s dashboard
  • User can open “Trade”
  • Account Anon is default
  • “Trade” has 2 fields for entering count of coins
  • Currency indicated next to fields
  • User can click on currency and choose another currency from list
  • “Trade” has a button “Order”
  • After trade, balance of currency to increase

Send:

  • Clicking on any currency in “Assets” opens the “Transfer” window
  • The current balance of the selected currency is indicated
  • Button “Send” is visible
  • Clicking on the “Send” button opens the “Offer”
  • “Offer” has a field “Amount”
  • “Offer” has a field “To”
  • “Offer” has a field “Fee”
  • “Offer” has a field “Note (optional)”
  • Only numbers are allowed in “Amount” field
  • Field “To” must contain the recipient’s wallet address
  • Field “Fee” shows shipping charges
  • Field “Fee” is optional test field
  • Button “Send anonymously” is visible
  • User can send currency
  • After sending the currency, the account of the currency that was forwarded decreased
  • After sending the currency, the recipient’s balance has increased

What do we have today?

image

Who we are?

I’m Alex, Chief R&D Officer at 482.solutions. Blockchain & Crypto Enthusiast.

482.solutions is a software engineering provider specializing in innovative solutions using decentralized technologies.

The key competency of 482.solutions is creating solutions for “Industry 4.0” issues: Blockchain, Future of Energy, Digital Identity, Decentralized Asset Management, Financial Products, and Services.

Why do we care?

We harness decentralized technology solutions that empower business and society evolution to reach a global impact. Therefore, we are going to popularize Blockchain as a technology through integration to the well-known Apps.

What’s our plan?

As described above, we are going to implement Incognito into Telegram and provide users with such Functionality:

  • User registration or import of an existing Incognito account. > Adding an Incognito button (after clicking on the “Burger” button in the Telegram)
  • Assigning a wallet to the user when logging into Telegram > binding the public key to the userid
  • Display of user balance
  • User keys manager: Export private key > Copy keys, view keys, import existing keys
  • Ability to create or import multiple Incognito accounts.
  • Sending currency to another user using his wallet address
15 Likes

Hey @q9656296, welcome to the Builder ecosystem! :slight_smile: :tada: Please give my warm greeting to your team! :black_heart:

It’s so exciting to see your proposal to integrate Incognito to Telegram. Most of our current users are using Telegram as well, so we hope that this project will get a huge tractions from the community, and contribute to the mission that help spread a word about Incognito widely :muscle:

By the way, I think that it would be very helpful if your team can add some ship date to the plan, so everyone can keep track on your progress. Thanks!

6 Likes

Incognito will take over the world!

We can only thank you!

3 Likes

OMG! This is by far my favorite project :smile:.

If you are going to make a fork of Telegram, I suggest forking it from Telegram FOSS, which is just the original Telegram, but without Google services.

Also, if you need to contact the Telegram Support Force (TSF), feel free to DM me: @SenorBinario.

8 Likes

I love this design. The best project :heart_eyes:

3 Likes

Thank you Ducky!
Sure, I’ll add this info soon.

Today we have:

  1. Design: Figma
  2. Posted on subdomain 482: telegram.482.solutions; You can check the progress here
  3. Started work with Telegram’s API;
  4. Several screens are already done: balance screen, accounts, keys registered for this account;
  5. Started backend development.
4 Likes

Thank you so much!

Thanks for the updates, Alex! And yes, please add the info to your original post once your team figures it out. Many thanks! :muscle:

1 Like

Every day we are developing this project.
Earlier we have already laid out what we want to do, it’s time to tell what has already been done:

  1. Drawn and implemented design
  2. Prepared server for deploying the Frontend part of the project
  3. Successfully deployed Frontend part of the project to the server
  4. Completed visual work of the Frontend part (for sprint 1)
  5. Configured the Backend part of the project (boilerplate)
  6. Work has begun on the integration of the Backend and Frontend parts:
  7. Added new user registration functionality;
  8. The system of user import from the Incognito system is connected;
  9. Implemented the withdrawal of the balance for the selected account;
  10. The withdrawal of all former cryptocurrencies with which this account interacted is ready.

Next, we plan to implement such functionality:

  1. Binding the public key to the userid;
  2. Sending cryptocurrency to another user who also linked the public key to his account;
  3. Removal of previously registered keys;
  4. Deleting previously imported accounts;
  5. A separate page of information about the project and about us.
7 Likes

Another update. A short review of the work done and plans for the project.
Done:

  1. Create modal layout;
  2. Connect database;
  3. Create API methods;
  4. Integrate Auth API method on frontend;
  5. Integrate “get Account” API method on frontend;
  6. Integrate “delete Account” API method on frontend;
  7. Integrate “import Account” API method on frontend;
  8. Implement auth methods on backend;
  9. Implement balance methods on backend;
  10. Implement import / create / delete methods on backend;
  11. Create Digital Ocean droplet;
  12. Make subdomain telegram.482.solutions;
  13. Connect HTTPS;
  14. Create Digital Ocean droplet for INCOGNITO-server.

To be done:

  1. Deploy Telegram UI to public server;
  2. Deceptive pages (telegram.482.solutions was filtered by Google Safe Browsing);
  3. Create CD (Jenkins + webhook + master branch);
  4. Implement trade page;
  5. Binding the public key to the userid;
  6. Sending a crypto from one to another user who also linked the public key to his account;
9 Likes

Latest update: was done last week

Frontend | Implemented “about” modal for Incognito:

  1. Added “About Incognito” label at the bottom of the main incognito modal
  2. Implemented “About” modal for Incognito
  • Updated Auth function
  • Updated Delete function
  • Implemented transfer method

What we plan to do this week:

  • Implement trade page in the UI (Mocked)
  • Implement find user modal for transfer
  • Implement pre-commit script for UI repository
  • Implement trade method

Frontend | Review and change Readme:

    1. To add information about Incognito project to Readme.md
    1. Add Flow to set up project’s config file for Development
    1. Add Flow to set up project’s config file for Production

API tests for controller “User”:

  • API tests for authUser
  • API tests for deleteAccount
  • API tests for getBalance
  • API tests for updateAccount
8 Likes

*copied from the signal integration post,

Pure awesomeness! I’ve been waiting for Pp2p (private peer to peer) finance to be flawlessly integrated into Pp2p communication. Can’t wait for this revolutionary reality to manifest!:pray::heart:

*I’m really hoping to have something wholistic integrating things like messaging, finance, marketplace, social, etc. Under one roof (much like the Chinese WeChat only without the technocratic big brother), I was excited for openbazzar and haven yet for some reason it didn’t take off and is full of fake users and dropshipping garbage… I’m not sure why but if anyone finds out how to do this properly it will be a game changer. If I can help in anyway (vision/strategy/etc), I’m game💙

3 Likes

Hello guys! I want to share the latest update with you!
We have finished our PoC!
Here is a short video instruction How To Use. And you can check our PoC here.

In order to avoid unforeseen errors, please do not use your real wallet incognito. Create a new one and test! Let’s test, improve and popularize this together!

3 Likes