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

Issue 678347 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

Better Web Push Decryption Debugging

Reported by matt.t.g...@gmail.com, Jan 4 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36

Steps to reproduce the problem:
1. Create a script that sends a push message to a page, but alter the auth value to ensure the encryption of the payload is incorrect.
2. No sign of the push being received by Chrome despite the request being sent and responding with 200 status code.

What is the expected behavior?
The developer knows the push was received and that there was an issue decrypting the payload

What went wrong?
Chrome shows nothing. Firefox display a helpful error message in the console to bring attention to the developer that the message had an issue.

Did this work before? N/A 

Does this work in other browsers? Yes

Chrome version: 55.0.2883.87  Channel: stable
OS Version: 
Flash Version:
 
Cc: sureshkumari@chromium.org
Labels: Needs-Feedback
Reporter@ could you please provide a sample Html file to test the issue further.

Thanks..

Comment 2 by peter@chromium.org, Jan 6 2017

Cc: peter@chromium.org
Labels: -Needs-Feedback
Status: Available (was: Unconfirmed)
We cannot signal back to the application server that decryption failed, so the only actionable change here would be to surface encryption errors in the console of pages controlled by the applicable Service Worker.

Is that the improvement you'd like to see, Matt? That's not too hard.
Yes thats exactly what I was looking for - a log in the console.
Project Member

Comment 4 by bugdroid1@chromium.org, Jun 27 2017

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

commit a376e98c0d7990ca1aa4fb459aad03e9d8d0496d
Author: Peter Beverloo <peter@chromium.org>
Date: Tue Jun 27 17:16:10 2017

Move GCMDecryptionResult to its own file

It's used in places beyond the GCMEncryptionProvider now, and might be
exposed to GCM app handlers in the future, so let's factor it out.

BUG=678347

Change-Id: I2301c05b403a4ec52d04e45616988ff40f270fde
Reviewed-on: https://chromium-review.googlesource.com/550155
Commit-Queue: Peter Beverloo <peter@chromium.org>
Reviewed-by: Anita Woodruff <awdf@chromium.org>
Cr-Commit-Position: refs/heads/master@{#482657}
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/chrome/browser/push_messaging/push_messaging_service_impl.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/crypto/BUILD.gn
[add] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/crypto/gcm_decryption_result.cc
[add] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/crypto/gcm_decryption_result.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/crypto/gcm_encryption_provider.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/crypto/gcm_encryption_provider.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/crypto/gcm_encryption_provider_unittest.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/fake_gcm_client.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/fake_gcm_client.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/fake_gcm_driver.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/fake_gcm_driver.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_client.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_client_impl.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_client_impl.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_driver.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_driver.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_driver_android.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_driver_android.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_driver_desktop.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_driver_desktop.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_stats_recorder_android.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_stats_recorder_android.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_stats_recorder_android_unittest.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_stats_recorder_impl.cc
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_stats_recorder_impl.h
[modify] https://crrev.com/a376e98c0d7990ca1aa4fb459aad03e9d8d0496d/components/gcm_driver/gcm_stats_recorder_impl_unittest.cc

Project Member

Comment 5 by bugdroid1@chromium.org, Jun 28 2017

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

commit e5eef717357f80beb3144877c8109cf6bc9e3a5e
Author: Peter Beverloo <peter@chromium.org>
Date: Wed Jun 28 14:01:55 2017

More detailed errors for webpush-encryption-08 failures

This splits the INVALID_BINARY_HEADER failure in four separate failures
that explain in greater detail why the header is invalid.

BUG=678347

Change-Id: I868ad7cf44ddf353951e7cfc78d6fecac56f4df0
Reviewed-on: https://chromium-review.googlesource.com/550136
Commit-Queue: Peter Beverloo <peter@chromium.org>
Reviewed-by: Anita Woodruff <awdf@chromium.org>
Cr-Commit-Position: refs/heads/master@{#482974}
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/components/gcm_driver/crypto/gcm_decryption_result.cc
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/components/gcm_driver/crypto/gcm_decryption_result.h
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/components/gcm_driver/crypto/gcm_encryption_provider.cc
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/components/gcm_driver/crypto/message_payload_parser.cc
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/components/gcm_driver/crypto/message_payload_parser.h
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/components/gcm_driver/crypto/message_payload_parser_unittest.cc
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/components/gcm_driver/gcm_driver.cc
[modify] https://crrev.com/e5eef717357f80beb3144877c8109cf6bc9e3a5e/tools/metrics/histograms/enums.xml

Project Member

Comment 6 by sheriffbot@chromium.org, Jun 28 2018

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Owner: peter@chromium.org
Status: Assigned (was: Untriaged)
Peter, you worked on this bug previously. It looks done to me, is there anything also you need to do before marking it fixed?

Sign in to add a comment