• xingx@chromium.org's avatar
    Implement client side tamper detection logic. · f71582a1
    xingx@chromium.org authored
    The Chrome data reduction feature relies on HTTP headers to 
    work correctly and efficiently with the data reduction 
    proxy. This include both standard HTTP headers (like Via) 
    and custom headers (like Chrome-Proxy). Tampering on these 
    headers could lead to miserable user experience, taking 10s 
    to load some pages, for example.
    
    In the past, we have seen such headers being stripped by 
    middle box proxies (for example, the WWW-Authenticate header 
    was stripped by some carrier). It has been known that mobile 
    carriers are doing HTTP traffic optimizations. We also want 
    to know whether mobile carriers are trying to "optimize" the 
    already optimized data reduction proxy response body, which 
    might lead to higher cost to users.
    
    
    We propose a mechanism in Chromium to enable us to learn the 
    scale and the types of such tampers. In short, the mechanism 
    will check whether a predefined set of HTTP response headers 
    and the response body have been changed in a way that could 
    affect the data reduction proxy. It will detect such changes 
    by using pre-calculated header (and probably content) hashes 
    sent by the server. Chromium will report through UMA the 
    count of each tamper types has happened. This will only be 
    enabled for a fraction of the data reduction proxy users.
    
    BUG=381907
    
    Review URL: https://codereview.chromium.org/338483002
    
    Cr-Commit-Position: refs/heads/master@{#288492}
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288492 0039d316-1c4b-4281-b951-d872f2087c98
    f71582a1
histograms.xml 2 MB
The source could not be displayed because it is larger than 1 MB. You can load it anyway or download it instead.