Opened 2 years ago

Last modified 7 weeks ago

#21814 new task

Reduce binary size for client-only tor

Reported by: arthuredelstein Owned by:
Priority: Medium Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: 034-triage-20180328, 034-removed-20180328, 035-roadmap-subticket, 035-triaged-in-20180711, ex-sponsor-19, ex-sponsor19
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description (last modified by arthuredelstein)

Uncompressed, the Tor executable and associated libs as bundled in Tor Browser is 7.7 MB. If we want other browsers to adopt Tor, it would be good to make it a lot smaller if possible. What is responsible for the bulk? Can we cut out unused code from libcrypto and other libraries? Or can we reuse some shared libraries from the browser? Would it help to chop out unused code that implements relays, hidden services, etc.?

Child Tickets

TicketStatusOwnerSummaryComponent
#25610closeddgouletmodule: Modularized directory authority subsystemCore Tor/Tor
#26631closednickmAllow Tor to build with NSS instead of OpenSSLCore Tor/Tor

Change History (23)

comment:1 Changed 2 years ago by nickm_mobile

Milestone: Tor: 0.3.2.x-final

comment:2 Changed 2 years ago by nickm

Summary: can we make a thin Tor proxy?Reduce binary size for client-only tor

comment:3 Changed 2 years ago by arthuredelstein

Description: modified (diff)

comment:4 Changed 2 years ago by nickm

Sponsor: Sponsor8-can

comment:5 Changed 23 months ago by nickm

Milestone: Tor: 0.3.2.x-finalTor: 0.3.3.x-final

comment:6 Changed 18 months ago by nickm

Milestone: Tor: 0.3.3.x-finalTor: 0.3.4.x-final

Deferring various "new"-status enhancement tickets to 0.3.4

comment:7 Changed 16 months ago by nickm

Keywords: 034-triage-20180328 added

comment:8 Changed 16 months ago by nickm

Keywords: 034-removed-20180328 added

Per our triage process, these tickets are pending removal from 0.3.4.

comment:9 Changed 16 months ago by nickm

Milestone: Tor: 0.3.4.x-finalTor: 0.3.5.x-final

comment:10 Changed 13 months ago by nickm

Keywords: 035-roadmap-subticket added
Parent ID: #26630

comment:11 Changed 13 months ago by chelseakomlo

What is the actionable work for this ticket? Should subtasks be created (or existing subtasks linked here)?

For example, #26631 could be a good candidate subtask, or subtasts created from a recent modularization session: https://trac.torproject.org/projects/tor/wiki/org/meetings/2018Rome/Notes/TorModularization.

Should there be some description here about what a sufficient reduction in size would be?

comment:12 Changed 13 months ago by nickm

Subtasks would be good -- any significant improvement would be valuable. We haven't committed to a specific size, so IMO we should begin by looking to see where the binary size is actually going, and see whether there are low-hanging fruit.

comment:13 Changed 13 months ago by nickm

Keywords: 035-triaged-in-20180711 added

comment:14 Changed 10 months ago by nickm

Milestone: Tor: 0.3.5.x-finalTor: 0.3.6.x-final

We've done a fair bit of this; any more can come in 0.3.6

comment:15 Changed 9 months ago by gaba

Sponsor: Sponsor8-canSponsor19

comment:16 Changed 9 months ago by nickm

Milestone: Tor: 0.3.6.x-finalTor: 0.4.0.x-final

Tor 0.3.6.x has been renamed to 0.4.0.x.

comment:17 Changed 7 months ago by arma

Sponsor: Sponsor19Sponsor8

I think this is a great ticket to work on, but it is not in the critical path to getting the anti-censorship team back up and going, so I'm going to remove the Sponsor19 tag.

This change doesn't mean we should not do this ticket -- just that we should decide on its priority compared to all the other tickets we also think we should do to make Tor better.

comment:18 Changed 6 months ago by gaba

Sponsor: Sponsor8

comment:19 Changed 6 months ago by nickm

Milestone: Tor: 0.4.0.x-finalTor: unspecified
Sponsor: SponsorM-can

comment:20 Changed 6 months ago by nickm

Sponsor: SponsorM-canSponsor19-can

comment:21 Changed 6 months ago by nickm

Parent ID: #26630

comment:22 Changed 7 weeks ago by gaba

Keywords: ex-sponsor-19 added

Adding the keyword to mark everything that didn't fit into the time for sponsor 19.

comment:23 Changed 7 weeks ago by gaba

Keywords: ex-sponsor19 added
Sponsor: Sponsor19-can

Remove sponsor 19 and add a keyword ex-sponsor19 to mark all the tickets that could have been in the scope of the sponsor.

Note: See TracTickets for help on using tickets.