masterpassword-firefox icon indicating copy to clipboard operation
masterpassword-firefox copied to clipboard

we need a sync mechanism between the three implementations of masterpassword

Open promeneur opened this issue 9 years ago • 14 comments

today there are:

  • android mpw a stand alone app https://github.com/dkunzler/masterpassword
  • FF mpw an extent https://github.com/ttyridal/masterpassword-firefox
  • linux (java) mpw a stand alone app. i use it to create pw for app which need a pw such ssh for example

we need a sync mechanism between the three implementations of masterpassword.

why? because there are special cases we don't remember:

  • the site name we used with another pc to create a pw because we can manualy set the name
  • the id we used for a site to create a pw with another device

for example in my friend pc(linux) i add a user for me. i use FF and FF sync feature to get same FF as with my pc. i never found the password created with mpw in my pc because i never remembered the site name i used to login the FF sync account thus i never synced the 2 occurrences of FF.

and i don't speak about remembering of id and pw for masterpassword from a device to another device but this is another story.

promeneur avatar Mar 25 '17 10:03 promeneur

Absolutely. Issue #44 is key here

ttyridal avatar Mar 25 '17 14:03 ttyridal

OTOH as long as they all support .mpsites (mp-ff and maartens versions, at least) you should be able to manually sync.

ttyridal avatar Mar 25 '17 14:03 ttyridal

And then, if you're thinking about 'cloud' sync, that would need servers (= money).

ttyridal avatar Mar 25 '17 14:03 ttyridal

why a public server? why not just a private central place (which can be user's desktop) where to store a central mpsites file? a solution:

in my desktop FF-mpw uses unison to merge its mpfiles with the central mpsites file in my desktop mpw uses unison to merge its mpfiles with the central mpsites file

device 1 uses unison to merge its mpsites file with the central mpsites file ... .device n uses unison to merge its mpsites file with the central mpsites file

where device i can be a desktop, laptop, smartphone, tablet etc.

unison is a multi-platform tool : Windows, Linux, IOS, etc.

https://www.cis.upenn.edu/~bcpierce/unison/ https://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html Using Unison to Synchronize More Than Two Machines

promeneur avatar Mar 25 '17 17:03 promeneur

Right, never used unison, but it looks like a basic file-sync tool, with some support to merge simple text files.

With a common storage format, it should be possible to exchange .mpsites, but it would not handle any conflicts gracefully.

Letting the browser plugins behave like a desktop app and store settings at a known location might be possible (but would be outside the standard modell and probably yield ugly "this app may read and modify all your files" warnings). Don't know about mobile. There are restrictions that prevent apps from reading other apps' data.

Not tempted to implement some (obscure?) protocol

But the request for painless sync is noted.

ttyridal avatar Mar 25 '17 19:03 ttyridal

i forgot to mention that using unison you need for each site a file because unison merges files not contents of a file. many mail or calendar apps uses for each contact a file or for each events a file it is more robust that using one file to store all.

promeneur avatar Mar 26 '17 12:03 promeneur

That makes things even more complicated. For example in my Android implementation of mpw I store the Site information in the database. I only work with .mpsites files when importing or exporting. Having to work file based (and then for each site a separate file) would change the whole implementation and I don't know about performance. (I have one user that has over 2000 sites in his app, don't know if a file based approach works)

dkunzler avatar Mar 26 '17 12:03 dkunzler

while rigging for external sync-apps, whatever they're called unison, resilio or something else, sounds kind of tempting, I think we can kill that idea right away. No, generic, file based sync would resolve conflicts or multiway merges. --And it would be "awkward" for both mobile (if i understand correctly) and browser to work with filesystem permissions.

Let's nail a common, extensible format first. And as I said. The desire for a sync feature is noted.

(ps. 2000 unique sites.. wow)

ttyridal avatar Mar 26 '17 20:03 ttyridal

why not using FF sync mechanism about addon? if i understand all data of addons are synced by FF sync mechanism then this is FF which synchronizes FF mpw data between 2 occurrences of FF. same thing for chrome.

for a pc or android device you schedule a task every 15 mn for example to sync (2ways) the desktop and the plugin flavour.

promeneur avatar Apr 05 '17 12:04 promeneur

Chrome actually does sync mpw data if you have it enabled (chrome sign-in)

For Firefox this is available for webextensions after version 53.

It would be a natural step to enable this once the transition to webextensions is complete.

PS: this will not enable sync between firefox and chrome

ttyridal avatar Apr 05 '17 12:04 ttyridal

Hello

Perhaps a solution about standardization? perhaps a solution to store data wich are currently stored in .mpsites?

Do you hear about pass, the standard Unix password manager? https://www.passwordstore.org

  • multi-platform (linux,android, mac os, ms windows)
  • extension for FF and Chrome
  • synchronization
  • included password generator but you can use any password generator then masterpassword

promeneur avatar May 02 '18 07:05 promeneur

@ttyridal you said sync of data extent is available with FF 53.

we get FF 59 and stored sites are not synchronized to Android version. "stored sites" is empty.

promeneur avatar May 06 '18 11:05 promeneur

About "pass"

the advantage is: you concentrate your effort on the core app which is "generating password", you save hours of work about storage and synchronization.

pass is some kind of framework.

promeneur avatar May 06 '18 11:05 promeneur

@promeneur, I said it will be available for webextensions (ie the Firefox platform). Not that it will be available in the masterpassword extension. Still needs to be enabled in code.

And, as always, there are also drawbacks. ie, In Chrome there are storage limitations that are being felt by the MP-addon (limits number of sites) because it's using the (possibly) cloud backed storage.

ttyridal avatar May 06 '18 19:05 ttyridal