[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #25985 [Obfuscation/Snowflake]: Add AMP cache as another domain fronting option with Google
#25985: Add AMP cache as another domain fronting option with Google
-----------------------------------+------------------------
Reporter: twim | Owner: (none)
Type: project | Status: new
Priority: Medium | Milestone:
Component: Obfuscation/Snowflake | Version:
Severity: Normal | Resolution:
Keywords: | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
-----------------------------------+------------------------
Comment (by dcf):
Replying to [comment:11 twim]:
> Replying to [comment:10 dcf]:
> > I think this AMP cache idea is really viable and can be implemented
quickly. twim, do you have the time and interest to work on an
implementation in Snowflake?
>
> Yes, I think I can do that.
That's great. I can devote some time to assistance.
Do you have the infrastructure you need for testing? It looks like you
have a way to make your own subdomains. The broker has automatic Let's
Encrypt certificate support, but it requires you to have ports 443 and 80
free. If you don't have a spare server set up, I may be able to get you
one.
> > 5. In the `<-time.After(time.Second * ClientTimeout)` case, we may
have to think of some other way to signal a timeout, in case the AMP cache
doesn't pass the status 502 (`StatusGatewayTimeout`) unmodified.
>
> Another idea I got here about it is to always reply with 200, so any
changes to AMP will less likely break things. Thus we can abstract RPC
away from HTTP in a way and use different pluggable roundtrippers (like
POST, AMP). It would make it easier to plug other OSSes.
Always using 200 for AMP is fine with me. If you need to add another layer
around the existing JSON, that's fine. I don't want to overhaul the
existing `/client` behavior though.
> > (Side note: if AMP provides a way to pass JSON through unmodified
(maybe the `r` does this?), that would be ideal.)
> JSON is probably fine if wrapped into <pre> but I haven't test it yet. I
don't feel like using JSON will be as safe as Base64 in terms of
survivability against modifications.
I'm thinking about the [https://www.ampproject.org/docs/fundamentals/spec
#the-amp-html-format <script type="application/ld+json">] block. Perhaps
we can stuff arbitrary data in there and the AMP cache won't touch it. But
realistically speaking, base64 in the page body is likely good enough.
{{{
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "NewsArticle",
"headline": "Article headline",
"image": [
"thumbnail1.jpg"
],
"datePublished": "2015-02-05T08:00:00+08:00"
}
</script>
}}}
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/25985#comment:12>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs