New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 706017 link

Starred by 5 users

Issue metadata

Status: Archived
Owner:
Closed: May 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocked on:
issue 711454
issue 711458
issue 712580
issue 713454
issue 713556
issue 714075

Blocking:
issue 688900



Sign in to add a comment

Show encryption migration UI to ask existing users to update cryptohome.

Project Member Reported by fukino@chromium.org, Mar 28 2017

Issue description

We are going to change the cryptohome's encryption from eCryptfs to ext4 crypto (Dircrypto).
The migration is necessary for users who want to run the latest Android system.

When an existing user sign in to the device and cryptohome is encrypted in old format, we should show a UI to ask the user to migrate the encryption and tell the user the migration progress.
 

Comment 1 by fukino@chromium.org, Mar 28 2017

Blocking: 688900
Project Member

Comment 2 by bugdroid1@chromium.org, Mar 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/39ee152a5b5021ca5489011cca1262c283c7d180

commit 39ee152a5b5021ca5489011cca1262c283c7d180
Author: fukino <fukino@chromium.org>
Date: Wed Mar 29 05:55:09 2017

Add a screen to migrate filesystem encryption from eCryptfs to ext4 crypto.

Background:
  We are going to change the cryptohome's encryption from eCryptfs to ext4 crypto (Dircrypto).
  The migration is necessary for users who want to run the latest Android system.

What we need to do:
  When an existing user sign in to the device and the user's cryptohome is
  encrypted in old format, we should show a UI to ask the user to
  migrate the encryption.

Implementation detail:
  If we request cryptohome's MountEx with force_dircrypto=true and the existing user's
  cryptohome is encrypted in old format, Chrome will receive an error
  CRYPTOHOME_ERROR_MOUNT_OLD_ENCRYPTION.
  (At this moment, I added a flag in fake_cryptohome_client to return this error.)
  On receiving this error, ExistingUserController shows the migration UI through WizardController.

I'll implement the actual migration process inside the added UI in a separate CL.

BUG= 706017 
TEST=on Linux, run chrome (for ChromeOS) with --test-encryption-migration-ui --login-manager and sign in to an existing user should show a simple UI saying "Encryption Migration UI".
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2779933002
Cr-Commit-Position: refs/heads/master@{#460295}

[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/BUILD.gn
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/existing_user_controller.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/oobe_screen.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/oobe_screen.h
[add] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/screens/encryption_migration_screen.cc
[add] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/screens/encryption_migration_screen.h
[add] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/screens/encryption_migration_screen_view.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/screens/screen_exit_code.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/wizard_controller.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/wizard_controller.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/chromeos/login/wizard_controller_browsertest.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/resources/chromeos/login/login.js
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/resources/chromeos/login/login_non_lock_shared.js
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/resources/chromeos/login/login_screens.html
[add] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/resources/chromeos/login/screen_encryption_migration.html
[add] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/resources/chromeos/login/screen_encryption_migration.js
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/ui/BUILD.gn
[add] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[add] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/ui/webui/chromeos/login/oobe_ui.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chrome/browser/ui/webui/chromeos/login/oobe_ui.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/chromeos_switches.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/chromeos_switches.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/dbus/fake_cryptohome_client.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/login/auth/auth_status_consumer.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/login/auth/auth_status_consumer.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/login/auth/cryptohome_authenticator.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/login/auth/cryptohome_authenticator.h
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/login/auth/login_performer.cc
[modify] https://crrev.com/39ee152a5b5021ca5489011cca1262c283c7d180/chromeos/login/auth/login_performer.h

Project Member

Comment 3 by bugdroid1@chromium.org, Mar 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2c22b15a9fcf87047dbd6655037f09eb7232cc85

commit 2c22b15a9fcf87047dbd6655037f09eb7232cc85
Author: fukino <fukino@chromium.org>
Date: Fri Mar 31 04:32:03 2017

Implement a basic UI flow for cryptohome encryption migration.

This CL implements the basic flow: On clicking "Upgrade", the handler
calls cryptohome API to start migration, updates the progress bar on
the UI, and tell the user that the migration is finished.

This includes following changes:
- Pass user_context from the authenticator to screen handler to use it for cryptohome migration API.
- Add <encryption-migration> Polymer element which has the actual migration UI.
- Modify FakeCryptohomeClient to send progress callbacks while migrating.

Note that all strings are just place holders for now (UX team is working on the strings).
They are not populated as i18n-content not to be translated.

BUG= 706017 
TEST=on Linux, run chrome (for ChromeOS) with --test-encryption-migration-ui --login-manager and sign in to an existing user should show a UI. Pressing "Upgrade" shows progress bar and a screen which says it finished successfully.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2784273003
Cr-Commit-Position: refs/heads/master@{#461029}

[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/chromeos/login/existing_user_controller.h
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/chromeos/login/screens/encryption_migration_screen.cc
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/chromeos/login/screens/encryption_migration_screen.h
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/chromeos/login/screens/encryption_migration_screen_view.h
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/resources/chromeos/login/custom_elements_login.html
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/resources/chromeos/login/custom_elements_login.js
[add] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/resources/chromeos/login/encryption_migration.css
[add] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/resources/chromeos/login/encryption_migration.html
[add] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/resources/chromeos/login/encryption_migration.js
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/resources/chromeos/login/screen_encryption_migration.html
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/resources/chromeos/login/screen_encryption_migration.js
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chromeos/dbus/fake_cryptohome_client.cc
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chromeos/dbus/fake_cryptohome_client.h
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chromeos/login/auth/auth_status_consumer.cc
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chromeos/login/auth/auth_status_consumer.h
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chromeos/login/auth/cryptohome_authenticator.cc
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chromeos/login/auth/login_performer.cc
[modify] https://crrev.com/2c22b15a9fcf87047dbd6655037f09eb7232cc85/chromeos/login/auth/login_performer.h

Comment 4 by fukino@chromium.org, Mar 31 2017

Cc: dspaid@chromium.org hashimoto@chromium.org uekawa@chromium.org kinaba@chromium.org
Project Member

Comment 5 by bugdroid1@chromium.org, Apr 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1b5ebe9539b3bd7e074075a2de5a355944ba07e8

commit 1b5ebe9539b3bd7e074075a2de5a355944ba07e8
Author: fukino <fukino@chromium.org>
Date: Fri Apr 07 05:35:30 2017

Force encryption migration if the device supports ARC.

This CL includes following changes:

* Add |is_forcing_dircrypto| to UserContext to pass the configuration
  from ExistingUserController to CryptohomeAuthenticator.
  The flag affects MountParameter for MountEx API.
* If a regular user signs in and ARC is available, ExistingUserController
  flips the flag to ensure that the cryptohome is encrypted in
  dircrypto.
* Add a user-facing flag to enable the migration, since the backend of
  the migration procedure is not completely ready yet.
* If a user choose "SKIP" in the migration screen, the screen handler
  let the user sign in by using previously-used UserContext and LoginPerformer,
  and dripping the |is_forcing_dircrypto| flag.

BUG= 706017 
TEST=manually tested following cases on samus with ARC support.
1) Enable the flag in owner profile, create a cryptohome in ecryptfs, and sign in to the new profile. It showed migration screen.
2) Clicking "SKIP" on the screen shows the user's desktop.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2798023005
Cr-Commit-Position: refs/heads/master@{#462773}

[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/about_flags.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/chromeos/login/existing_user_controller.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/chromeos/login/screens/encryption_migration_screen.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/chromeos/login/screens/encryption_migration_screen.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/chromeos/login/screens/encryption_migration_screen_view.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/flag_descriptions.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/flag_descriptions.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/resources/chromeos/login/screen_encryption_migration.js
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chromeos/chromeos_switches.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chromeos/chromeos_switches.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chromeos/cryptohome/cryptohome_parameters.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chromeos/cryptohome/homedir_methods.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chromeos/login/auth/cryptohome_authenticator.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chromeos/login/auth/user_context.cc
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/chromeos/login/auth/user_context.h
[modify] https://crrev.com/1b5ebe9539b3bd7e074075a2de5a355944ba07e8/tools/metrics/histograms/histograms.xml

Project Member

Comment 6 by bugdroid1@chromium.org, Apr 9 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fbd1dfec1f46320180425e602cb2751978813ecb

commit fbd1dfec1f46320180425e602cb2751978813ecb
Author: fukino <fukino@chromium.org>
Date: Sun Apr 09 21:56:35 2017

Resume encryption migration immediately if the previous migration is incomplete.

The previous migration can be incomplete. This can happen when, for example,
the user shut down the device during the migration.
In this case, MountEx returns a dedicated error: MOUNT_ERROR_PREVIOUS_MIGRATION_INCOMPLETE.
If Chrome get this error, the migration should start immediately without
asking the user's choice, as the user can not skip the migration.

BUG= 706017 
TEST=manually tested by modifying fake_cryptohome_client to return the error.

Review-Url: https://codereview.chromium.org/2801873007
Cr-Commit-Position: refs/heads/master@{#463151}

[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chrome/browser/chromeos/login/existing_user_controller.h
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chrome/browser/chromeos/login/screens/encryption_migration_screen.cc
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chrome/browser/chromeos/login/screens/encryption_migration_screen.h
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chrome/browser/chromeos/login/screens/encryption_migration_screen_view.h
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chromeos/login/auth/auth_status_consumer.cc
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chromeos/login/auth/auth_status_consumer.h
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chromeos/login/auth/cryptohome_authenticator.cc
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chromeos/login/auth/cryptohome_authenticator.h
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chromeos/login/auth/login_performer.cc
[modify] https://crrev.com/fbd1dfec1f46320180425e602cb2751978813ecb/chromeos/login/auth/login_performer.h

Project Member

Comment 7 by bugdroid1@chromium.org, Apr 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/607e4843c7c95c472dc00bb54127a8010fbbe826

commit 607e4843c7c95c472dc00bb54127a8010fbbe826
Author: fukino <fukino@chromium.org>
Date: Wed Apr 12 05:24:01 2017

Check the available storage size before starting encryption migration.

When the device storage is critically low (<10MB), we should not start migration.
Instead, we should tell the user that the migration needs some space, and let the
user log in to Desktop.
After the user signs in to the Desktop, the user will see an existing system
notification which says that the device storage is critically low.

BUG= 706017 
TEST=manually tested the new screen by modifying kMinimumAvailableStorage to a big value.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2811713002
Cr-Commit-Position: refs/heads/master@{#463935}

[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/chromeos/login/screens/encryption_migration_screen.cc
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/chromeos/login/screens/encryption_migration_screen.h
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/chromeos/login/screens/encryption_migration_screen_view.h
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/resources/chromeos/login/encryption_migration.html
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/resources/chromeos/login/encryption_migration.js
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/resources/chromeos/login/screen_encryption_migration.js
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[modify] https://crrev.com/607e4843c7c95c472dc00bb54127a8010fbbe826/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h

Project Member

Comment 8 by bugdroid1@chromium.org, Apr 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/98210114c0ce20499946176a3d9cdabbe6c2e701

commit 98210114c0ce20499946176a3d9cdabbe6c2e701
Author: fukino <fukino@chromium.org>
Date: Thu Apr 13 02:29:42 2017

Wait for the battery level before starting encryption migration.

To avoid unexpected shutdowns during migration, we should ensure that the
battery level is enough before starting migration.

The expected behavior is as follows:
1) When "Upgrade" button is pressed and battery is enough,
start migration immediately.
2) When "Upgrade" button is pressed and battery is low,
ask the user to charge the device on the UI, disable the "Upgrade" button,
and start migration once the battery level gets enough.
3) When resuming previous migration and battery is enouch,
start migration immediately.
4) When resuming previous migration and battery is low,
ask the user to charge the device on the UI, hide all action buttons,
and start migration once the battery gets enough.

BUG= 706017 
TEST=manually tested the described expected behaviors.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2818433002
Cr-Commit-Position: refs/heads/master@{#464251}

[modify] https://crrev.com/98210114c0ce20499946176a3d9cdabbe6c2e701/chrome/browser/resources/chromeos/login/encryption_migration.html
[modify] https://crrev.com/98210114c0ce20499946176a3d9cdabbe6c2e701/chrome/browser/resources/chromeos/login/encryption_migration.js
[modify] https://crrev.com/98210114c0ce20499946176a3d9cdabbe6c2e701/chrome/browser/resources/chromeos/login/screen_encryption_migration.js
[modify] https://crrev.com/98210114c0ce20499946176a3d9cdabbe6c2e701/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[modify] https://crrev.com/98210114c0ce20499946176a3d9cdabbe6c2e701/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h

Comment 9 by fukino@chromium.org, Apr 13 2017

Blockedon: 711454
Blockedon: 711458
Project Member

Comment 11 by bugdroid1@chromium.org, Apr 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3a85b3f42dd3103139419a68ee5e78b5c35596c4

commit 3a85b3f42dd3103139419a68ee5e78b5c35596c4
Author: fukino <fukino@chromium.org>
Date: Thu Apr 13 22:51:09 2017

cros: Update design of encryption migration UI for ext4 dircrypto.

This CL includes following changes:
- Update the layout/color/image to match the latest spec.
- Make all strings internationalized.
- Send "Charging" state from C++ side as the information is needed in the latest design.
- Send formatted size of available/necessary storage space as the information is needed in the latest design.
- Drop the final screen, since we should restart immediately on successful migration.

BUG= 706017 
TEST=manually tested each screen.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2819613003
Cr-Commit-Position: refs/heads/master@{#464586}

[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/app/chromeos_strings.grdp
[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/resources/chromeos/login/encryption_migration.css
[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/resources/chromeos/login/encryption_migration.html
[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/resources/chromeos/login/encryption_migration.js
[add] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/resources/chromeos/login/images/security_update_1x.png
[add] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/resources/chromeos/login/images/security_update_2x.png
[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/resources/chromeos/login/screen_encryption_migration.js
[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.cc
[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/ui/webui/chromeos/login/encryption_migration_screen_handler.h
[modify] https://crrev.com/3a85b3f42dd3103139419a68ee5e78b5c35596c4/chrome/browser/ui/webui/chromeos/login/oobe_ui.cc

Comment 12 by uekawa@google.com, Apr 18 2017

Blockedon: 712580
Blockedon: 713454
Blockedon: 714075

Comment 15 by uekawa@google.com, Apr 24 2017

Cc: abodenha@chromium.org arthurhsu@chromium.org fukino@chromium.org alberto@chromium.org jennschen@chromium.org mitsuji@chromium.org
 Issue 590808  has been merged into this issue.
Labels: ArcExt4Migration
Blockedon: 713556

Comment 18 by uekawa@google.com, May 24 2017

Labels: M-60
done?
Status: Fixed (was: Started)
Yes. The implementation is done. I'm tracking reported issues in separate bugs.

Comment 20 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment