dtube / DTubeGo

DTube mobile client created in dart and flutter!
GNU General Public License v3.0
34 stars 15 forks source link

Social Login with centralized private key management #70

Open brishtiteveja opened 3 years ago

brishtiteveja commented 3 years ago

For users who are new to crypto and are not willing to manage their own keys. A easy login via "Gmail"/"Facebook" (etc. in future) using cloud firebase. We can store encrypted/non-encrypted private keys on firebase storage..

User signs in through Gmail/Facebook sigining ... app communicates to firebase, gets the private key and signs in as usual (User does not know the background process.. all they are doing is logging in via google/facebook as they do on other platforms). However, where does these dtube account (new user - public/private key pair) come into existence? We, as account maintainers/administrators/leaders can make sample accounts beforehand which we map to the users' gmail/facebook account.. and keep the information on firebase database.

Pro: Essentially anyone who has Gmail/Youtube/Facebook/Instagram/ (virtually everyone !) can have a dtube account in one click. Con: User's private key is in the hand of administrator (trust issue). To mitigate trust issue.. we can create rule (in code) that if User account gathers more than 500/1000 DTC.. user will have to create a separate account on his/her own and transfer the DTC. Basically, managed account can have at max 500/1000 DTC..

tibfox commented 3 years ago

Great idea and concept! Let's do this man. Only thing is of course again the main site because they don't have the opportunity to login there right now but that's no big deal in my opinion. If we execute that first the website only needs to implement an oauth which should be pretty simple right? I will wrap my head around that but as far as it looks I am all in for that dude