Cloud Sync
The same profile, on your other computer
A profile is a browser environment, and an environment you cannot move is a machine you cannot replace. Cloud Sync carries a profile's stored browser state between your own computers. Encryption happens before any of it leaves the machine it came from.
Your first computer
Closes the profile, captures its browser data
Encrypted snapshot
Encrypted on your machine with the workspace key, before it is uploaded
Your second computer
Opens the profile, restores the same browser state
One device at a time. While a synced profile is open, it holds a short lease on itself. Another device that tries to open it is told which device has it, rather than quietly forking the session into two versions that can never be reconciled.
Moving a browser environment by hand does not work
Copying a browser directory between machines loses the parts that matter and corrupts the parts that do not.
Copying files between machines
- Copying a live browser directory while the browser is still using it
- Cookies that were encrypted against the other machine's credential store
- No idea which copy is newer once two machines have both been used
- Session state that has to be rebuilt by signing in again everywhere
- Nothing stopping two people opening the same environment at once
With PowerOps
- Captured when the profile closes, so the state is consistent rather than mid-write
- Encrypted on your machine before it is uploaded
- Restored automatically when the same profile opens elsewhere
- Three independent categories, switchable per workspace and per profile
- A lease, so two devices never edit one session into two versions
How a profile travels
Three steps, and the snapshot is encrypted before it leaves your machine.
- 1
Close, then capture
When the profile closes, PowerOps reads the categories you enabled out of the browser directory. That state is only coherent once the browser has exited.
- 2
Encrypt, then upload
The snapshot is encrypted on your machine with the workspace key. What travels is ciphertext, and the service never replaces a revision that already exists.
- 3
Open, and restore
Opening the profile on another of your devices takes the lease, fetches the latest revision, decrypts it locally and restores it before the browser starts. That is what Preparing… means.
What syncs
Three categories, each one a choice
Three switches, for the whole workspace or for one profile. Everything else in a browser directory stays on the machine it belongs to.
Cookies & sessions
The signed-in state of the platforms a profile manages. This is the category that makes a profile portable at all.
Local Storage
Site data the browser keeps in Local Storage. Preferences, drafts and client-side state all live here. Session Storage is not included.
IndexedDB
Site data the browser keeps in IndexedDB, which modern web applications use for anything larger.
Per profile, the mode is one of three: follow the workspace settings, use its own, or never sync. Never means never, even when Cloud Sync is on for everyone else.
Encryption
What the encryption covers, and what it does not
Session cookies are the most sensitive thing a browser holds, so a snapshot is encrypted on your machine before it is uploaded and decrypted on the machine that opens the profile. The key belongs to the workspace, PowerOps creates it on the first machine that needs it, and syncing never requires the service to open a snapshot.
The limit, stated rather than buried: this is not end-to-end encryption. The service keeps a copy of the workspace key, so that a new computer receives it when an account that belongs to the workspace signs in there, with nothing to type and no key to lose. A service that holds both the key and the data is able to decrypt it, so your synced sessions are protected by your ArticleOps account and by the service itself.
- Snapshots are encrypted on your machine before they are uploaded
- The workspace key is created on a device, and the service keeps a copy for your other computers
- Every device registers with its own key, and every request it makes is signed
- A stored revision is immutable. Nothing uploaded later can silently replace it
- Snapshots are scoped to the workspace they came from, structurally, not by a check
Live states
You can see the sync happening
Restoring and capturing take time, so PowerOps names the step it is on instead of showing a spinner.
- 1Preparing…
Restoring synced browser state
- 2Opening…
Launching Orbit Browser with this profile's identity
- 3Open
The browser is running
- 4Closing…
Shutting the browser down cleanly
- 5Syncing…
Capturing and encrypting what changed
- 6Synced
Safe to open anywhere else
A seventh state, Locked, appears when another of your devices is holding the profile open. It names that device.
What Cloud Sync is careful about
One device at a time
A lease is held while the profile is open, and another device is told which one has it.
Crash recovery
The lease expires on its own, so a device that went offline does not hold a profile hostage.
Capture on close
Browser state is read after the browser has exited, which is the only moment it is consistent.
Yours to switch off
On by default. An owner or admin can switch it off for the whole organisation, and any profile can be excluded on its own.
A connection to open
While Cloud Sync is on, a profile will not open if the service cannot be reached, because PowerOps cannot tell whether another computer has it.
Profiles arrive by themselves
A computer signed in to the same workspace receives the list of profiles without anything being exported or imported.
Cloud Sync, answered
What exactly is synced?
Three categories, each an independent switch: cookies and sessions, Local Storage, and IndexedDB. Session Storage is not carried, because it belongs to a tab and the browser discards it when it closes. Nothing else in a profile's browser directory is uploaded. Caches, history and the profile's own database all stay on the machine.
Can PowerOps read my session cookies?
It does not need to, but it is not prevented from doing so, and we would rather say that plainly. A snapshot is encrypted on your machine before it is uploaded and decrypted on the machine that opens the profile, so syncing never needs the service to open one. But Cloud Sync is not end-to-end encryption: the service keeps a copy of the workspace key, so that a new computer receives it when an account that belongs to the workspace signs in there, and a service that holds both the key and the data is able to decrypt it. What protects your synced sessions is your ArticleOps account and the security of the service, not a key held by your devices alone.
Can two devices use a synced profile at the same time?
No, deliberately. While a synced profile is open it holds a short lease. Another device that tries to open it sees Locked and the name of the device holding it. Two devices editing one browser session would produce two versions of the truth that could never be merged.
Does a new device automatically see my synced profiles?
Yes. A computer signed in to the same workspace receives the list of profiles by itself within a few seconds, and Refresh on the Profiles page asks for it straight away. Each profile's session is restored the first time it opens there. The list of profiles is shared whether Cloud Sync is on or off. The sessions need it on.
What happens if the connection drops mid-sync?
The session is not lost. If the upload cannot be sent when a profile closes, the session stays on that computer, the profile's Cloud Sync status reads Sync failed, and PowerOps tries again by itself while it is running. It does not replace the local session with an older copy from the cloud, and a stored revision is never overwritten once it exists. Opening is different: while Cloud Sync is on, a profile will not open until the service can be reached, because PowerOps cannot tell whether another computer has it open.
Is Cloud Sync required?
No. It is switched on by default, and an owner or admin of your organisation can switch it off for every workspace at once in Settings. Each profile can also follow that setting, use its own, or never sync at all.
Move a browser environment, not a folder
Cloud Sync is on by default. Choose what travels, and open the same profile on your other computer.