Re: [tor-dev] Proposal 247 (Hidden Service Vanguards) Overhaul and Proposal: Padding Negotiation

2015-09-13 Thread Mike Perry
Tim Wilson-Brown - teor:
> 
> > On 14 Sep 2015, at 09:07, Mike Perry 
> > wrote:
> > 
> > ...
> > 
> > 
> > 4. Security concerns and mitigations
> > 
> > 4.1. Mitigating fingerprinting of new HS circuits
> > 
> >  By pinning the middle nodes of rendezvous circuits, we make it
> >  easier for all hops of the circuit to detect that they are part of
> >  a special hidden service circuit with varying degrees of certainty.
> > 
> >   ...
> > 
> >  The most serious of these is the Guard fingerprinting issue. When
> >  proposal xxx-padding-negotiation is implemented, services that
> >  enable this feature should use those padding primitives to create
> >  fake circuits to random middle nodes that are not their guards, in
> >  an attempt to look more like a client.
> 
> How will this interact with the rate limiting in
> xxx-padding-negotiation section 4.1?
> 
> > On 12 Sep 2015, at 10:34, Mike Perry 
> > wrote:
> > 
> > 4.1. Rate limiting
> > 
> > ...
> > 
> > We recommend that three consensus parameters be used in the event
> > that the network is being overloaded from padding to such a degree
> > that padding requests should be ignored:
> > 
> >  * CircuitPaddingMaxRatio - The maximum ratio of padding traffic to
> >  non-padding traffic (expressed as a percent) to allow on a circuit
> >  before ceasing to pad. Ex: 75 means 75 padding packets for every
> >  100 non-padding packets.  - Default: 100 * CircuitPaddingLimitCount
> >  - The number of padding cells that must be transmitted before the
> >  ratio limit is applied.  - Default: 500 * CircuitPaddingLimitTime -
> >  The time period in seconds over which to count padding cells for
> >  application of the ratio limit.  - Default: 60
> > 
> > XXX: Should we cap padding at these rates, or fully disable it once
> > they're crossed?
> 
> 
> If the rate limiting is being applied, that will limit fake middle
> circuits (with few non-padding packets) to ~500 cells per minute
> (~4KBytes per second).

Hrmm.. More importantly, 500 cells is only roughly 250kb, and apparently
the average webpage size has ballooned to up to 1.6M:
http://www.websiteoptimization.com/speed/tweak/average-web-page/

I've boosted the default here to 5000, so we can give this case a chance
at pretending to fetch web pages.
 
> Does CircuitPaddingLimitCount reset after CircuitPaddingLimitTime?  (I
> can’t tell from the proposal, but I assume it has to reset, otherwise
> the limit is quite low, at 500 cells per fake circuit for its entire
> lifetime [plus whatever dribble it gets from non-padding cells].)

The count is meant to reset after CircuitPaddingLimitTime. I've
clarified this and pushed again to my padding_negotiation branch.
 
> Are those consensus parameters intended to be always set, or just set
> when there is an issue with padding?  (I can see arguments both ways,
> but having them always set could be useful as a precaution against a
> quick attack.)

The way consensus parameters work in the Tor client code is that they
have a hardcoded default value that is used if they are not present in
the consensus. If a consensus value is present, it overrides this
hardcoded value.

Hence it makes sense to set the defaults fairly liberally, and we'd only
reduce them in the consensus if we noticed overload/abuse at relays.


-- 
Mike Perry


signature.asc
Description: Digital signature
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] . tor-roster's geo diversity badge and self-ref relays

2015-09-13 Thread Virgil Griffith
We'll remove it.

-V

On Mon, 14 Sep 2015 at 05:20 Tom van der Woerdt  wrote:

>
> On 13 Sep 2015, at 22:09, teor  wrote:
>
>
> On 13 Sep 2015, at 18:18, Sean Saito  wrote:
>
> >"No Self-Referencing Relays"
>
> >I'm not sure what exactly you mean by that but I assume it is a MyFamily
>
> >config where a relay includes his own fingerprint. Why does that hurt?
>
> >The unnecessary descriptor space/bw?
>
>
>
> This is something Virgil wanted because he thought self-connections were
> ugly.  If the
>
> penalizing of self-connections is found to be uglier than the
> self-connections themselves, we're
>
> both fine with removing it.
>
>
> Can this be downgraded to an informational message? (or eliminated
> entirely?)
>
> Penalties can be quite discouraging, particularly for minor configuration
> variants.
>
> Tim
>
>
> I agree, and this one in particular is important to some operators: by
> allowing a relay to specify itself in the family, one can just have a
> single configuration file for all relays in a family.
>
> Tom
>
> ___
> tor-dev mailing list
> tor-dev@lists.torproject.org
> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev
>
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] Proposal: Padding Negotiation

2015-09-13 Thread Mike Perry
Tim Wilson-Brown - teor:
> Hi Mike,
> 
> Just a few questions about the proposal, inline below:
> 
> > On 12 Sep 2015, at 10:34, Mike Perry  wrote:
> > 
> > Here's a proposal describing some padding negotiation cell primitives that
> > should be useful to defend against website traffic fingerprinting, hidden
> > service circuit fingerprinting, and probably just about any other traffic
> > analysis attack under the sun.
> > 
> > The proposal is in my git remote at:
> > https://gitweb.torproject.org/user/mikeperry/torspec.git/tree/proposals/xxx-padding-negotiation.txt?h=padding_negotiation
> > 
> > ==
> > 
> > Filename: xxx-padding-negotiation.txt
> > Title: Padding Negotiation
> > Authors: Mike Perry
> > Created: 01 September 2015
> > Status: Draft
> > 
> > 
> > ...
> > 
> > 
> > 3. End-to-end circuit padding
> > 
> > For circuit-level padding, we need two types of additional features: the
> > ability to schedule additional incoming cells at one or more fixed
> > points in the future, and the ability to schedule a statistical
> > distribution of arbitrary padding to overlay on top of non-padding
> > traffic (aka "Adaptive Padding").
> > 
> > In both cases, these messages will be sent from clients to middle nodes
> > using the "leaky pipe" property of the 'recognized' field of RELAY
> > cells, allowing padding to originate from middle nodes on a circuit in a
> > way that is not detectable from the Guard node.
> > 
> > This same mechanism can also be used to request padding from the Guard
> > node itself, to achieve link-level padding without the additional
> > overhead requirements on middle nodes.
> > 
> > 3.1. Fixed-schedule padding message (RELAY_COMMAND_PADDING_SCHEDULE)
> > 
> > The fixed schedule padding will be encoded in a
> > RELAY_COMMAND_PADDING_SCHEDULE cell. It specifies a set of up to 80
> > fixed time points in the future to send cells.
> 
> Do we want to add a length field, for schedules with less than 80 time points?
> Or is this unnecessary?

At first, I thought this was unnecessary, as it is completely acceptable
to leave unused fields as 0s in my definition. Since Trunnel should make
working with variable fields more safe and less cumbersome, I've
simplified this to use variable lengths.

> > XXX: 80 timers is a lot to allow every client to create. We may want to
> > have something that checks this structure to ensure it actually
> > schedules no more than N in practice, until we figure out how to
> > optimize either libevent or timer scheduling/packet delivery. See also
> > Section 4.3.
> > 
> > The RELAY_COMMAND_PADDING_SCHEDULE body is specified in Trunnel as
> > follows:
> > 
> >struct relay_padding_schedule {
> >   /* Number of microseconds before sending cells (cumulative) */
> >   u32 when_send[80];
> > 
> >   /* Number of cells to send at time point sum(when_send[0..i]) */
> >   u16 num_cells[80];
> > 
> >   /* Adaptivity: If 1, and server-originating cells arrive before the
> >  next when_send time, then decrement the next non-zero when_send
> >  index, so we don't send a padding cell then, too */
> >   u8 adaptive IN [0,1];
> 
> Is this the definition of “adaptivity" that we want?
>
> I can see that it works in the scenario where a client wants a minimum of
> X cells delivered at-or-before time T (adaptively), where T is a single 
> schedule
> arbitrarily far in the future.

This cell is meant to request a one-shot amount of padding, not a
periodic cycle. Anything periodic like this should use Adaptive padding.

> But if a client wants a minimum of X cells delivered every T microseconds
> (adaptively), then there’s no way to reliably specify that using this scheme. 
> If
> 10*X cells originate at the server due to regular traffic in the first 
> interval, that will
> cause the next 10 intervals to be skipped.
> 
> I can see that the histograms work around this issue by refilling with the 
> original
> figures, but I’m not sure that works for fixed-point padding.

I believe that we should ensure that the Adaptive Padding machine can
specify this and any other type of periodic padding. If it can't, we
should generalize it further, not add another primitive for specifying
periodic padding.

In fact, I've pushed updates to the adaptive padding rules in order to
allow three different versions of what you've asked, and provided the
example machine specifications for these examples. Please let me know if
you feel that we still need further flexibility to cover another related
example. You probably want a pen and paper handy to draw the state
machines and their transitions out as you read through the rules.


Example 1: X cells delivered over T microseconds, spread evenly. If a
non-padding cell is sent, padding is skipped for the next T/X
microseconds.

 num_machines = 1;

 machines[0].transition_burst_events = 0;

 machines[0].burst.histogram_len = 2;
 machines[0].burst.histogram = {1, 0};

 machines[0].burst.trans

Re: [tor-dev] Proposal 247 (Hidden Service Vanguards) Overhaul and Proposal: Padding Negotiation

2015-09-13 Thread Tim Wilson-Brown - teor

> On 14 Sep 2015, at 09:07, Mike Perry  wrote:
> 
> ...
> 
> 
> 4. Security concerns and mitigations
> 
> 4.1. Mitigating fingerprinting of new HS circuits
> 
>  By pinning the middle nodes of rendezvous circuits, we make it
>  easier for all hops of the circuit to detect that they are part of a
>  special hidden service circuit with varying degrees of certainty.
> 
>   ...
> 
>  The most serious of these is the Guard fingerprinting issue. When
>  proposal xxx-padding-negotiation is implemented, services that enable
>  this feature should use those padding primitives to create fake circuits
>  to random middle nodes that are not their guards, in an attempt to look
>  more like a client.

How will this interact with the rate limiting in xxx-padding-negotiation 
section 4.1?

> On 12 Sep 2015, at 10:34, Mike Perry  wrote:
> 
> 4.1. Rate limiting
> 
> ...
> 
> We recommend that three consensus parameters be used in the event that
> the network is being overloaded from padding to such a degree that
> padding requests should be ignored:
> 
>  * CircuitPaddingMaxRatio
>- The maximum ratio of padding traffic to non-padding traffic
>  (expressed as a percent) to allow on a circuit before ceasing
>  to pad. Ex: 75 means 75 padding packets for every 100 non-padding
>  packets.
>- Default: 100
>  * CircuitPaddingLimitCount
>- The number of padding cells that must be transmitted before the
>  ratio limit is applied.
>- Default: 500
>  * CircuitPaddingLimitTime
>- The time period in seconds over which to count padding cells for
>  application of the ratio limit.
>- Default: 60
> 
> XXX: Should we cap padding at these rates, or fully disable it once
> they're crossed?


If the rate limiting is being applied, that will limit fake middle circuits 
(with few non-padding packets) to ~500 cells per minute (~4KBytes per second).

Does CircuitPaddingLimitCount reset after CircuitPaddingLimitTime?
(I can’t tell from the proposal, but I assume it has to reset, otherwise the 
limit is quite low, at 500 cells per fake circuit for its entire lifetime [plus 
whatever dribble it gets from non-padding cells].)

Are those consensus parameters intended to be always set, or just set when 
there is an issue with padding?
(I can see arguments both ways, but having them always set could be useful as a 
precaution against a quick attack.)

Tim

Tim Wilson-Brown (teor)

teor2345 at gmail dot com
PGP: 968F094B (ABFED1AC & A39A9058 expire 15 Sep 2015)

teor at blah dot im
OTR CAD08081 9755866D 89E2A06F E3558B7F B5A9D14F (From 1 Sep 2015)



signature.asc
Description: Message signed with OpenPGP using GPGMail
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] Bridge Guards (prop#188) & Bridge ORPort Reachability Tests

2015-09-13 Thread Tim Wilson-Brown - teor

> On 12 Sep 2015, at 17:26, isis  wrote:
> 
> ...
> 
> However, for "double onion services" — or whatever we're calling the thing 
> that
> is (historical) hidden services 2.0 — your point is a good one; I'm starting 
> to
> realise more and more that defences for "double onion services"¹ are possibly
> defences for bridges and vice versa.
> 
> ...
> 
> ¹ Sorry, but — after having to type that twice — that name sucks.

“double onion services” - I see what you mean.

What about “dual onion services”?
Or even “dual onion”?

It’s shorter, and means the same thing.

I’ll stop bikeshedding now.

Tim

Tim Wilson-Brown (teor)

teor2345 at gmail dot com
PGP: 968F094B (ABFED1AC & A39A9058 expire 15 Sep 2015)

teor at blah dot im
OTR CAD08081 9755866D 89E2A06F E3558B7F B5A9D14F (From 1 Sep 2015)



signature.asc
Description: Message signed with OpenPGP using GPGMail
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


[tor-dev] Proposal 247 (Hidden Service Vanguards) Overhaul

2015-09-13 Thread Mike Perry
I spent some time trying to clean up proposal 247 based on everyone's
comments, as well as based on my own thoughts. Please have a look if you
commented on the original proposal, and complain if I've not taken your
thoughts into account.

(Aaron: In particular, I made several tradeoffs in favor of performance
and DoS resistance that may be at odds with some of your suggestions,
but I think the end result is still OK after looking into the Sybil
rates and thinking about the adversary model in more detail. You may
disagree).

I've attached my updated version of the proposal inline in this mail,
but the canonical updated proposal is in my remote at:
https://gitweb.torproject.org/user/mikeperry/torspec.git/tree/proposals/247-hs-guard-discovery.txt?h=guard_discovery_dev

Here's a summary of the changes (which are also listed in Git):

 * Try to make a coherent threat model and specify its assumptions
 
 * Fold in my comments about using disjoint sets ("buckets") for the
   third level guard.

 * Make the parameter discussion subsection its own section, and include
   tables with far more detail for the Sybil success rates.

 * Put the rotation period in a separate subsection from the number of
   guards
 
 * Switch to using min(X,X) and max(X,X) for the distribution for the
   second and third layer guard lifespans, respectively. Add a
   subsection describing this distribution (3.2.3)

 * Changed the default parameters based on these tables, and based on my own
   intuition about Tor's performance properties.

 * Move the load balancing, torrc, and other performance considerations to
   their own section (Section 5).
 
 * Move "3.2. Distinguishing new HS circuits from normal HS circuits" to
   section 4.1.
 
 * Fold in some of "3.3. Circuit nodes can now be linked to specific hidden
   services" into 4.1. Some of it I just removed, though, because I did not
   find it credible.
 
 * Added Roger's concerns about guard linkability to Section 4.2.
 
 * Added a denial of service subsection to Section 4.3.



Filename: 247-hs-guard-discovery.txt
Title: Defending Against Guard Discovery Attacks using Vanguards
Author: George Kadianakis
Created: 2015-07-10
Status: Draft

0. Motivation

  A guard discovery attack allow attackers to determine the guard
  node of a Tor client. The hidden service rendezvous protocol
  provides an attack vector for a guard discovery attack since anyone
  can force an HS to construct a 3-hop circuit to a relay (#9001).

  Following the guard discovery attack with a compromise and/or
  coercion of the guard node can lead to the deanonymization of a
  hidden service.

1. Overview

  This document tries to make the above guard discovery + compromise
  attack harder to launch. It introduces an optional configuration
  option which makes the hidden service also pin the second and third
  hops of its circuits for a longer duration.

  With this new path selection, we force the adversary to perform a
  Sybil attack and two compromise attacks before succeeding. This is
  an improvement over the current state where the Sybil attack is
  trivial to pull off, and only a single compromise attack is required.

  With this new path selection, an attacker is forced to do a one or
  more node compromise attacks before learning the guard node of a hidden
  service. This increases the uncertainty of the attacker, since
  compromise attacks are costly and potentially detectable, so an
  attacker will have to think twice before beginning a chain of node
  compromise attacks that he might not be able to complete.

1.1. Visuals

  Here is how a hidden service rendezvous circuit currently looks like:

 -> middle_1 -> middle_A
 -> middle_2 -> middle_B
 -> middle_3 -> middle_C
 -> middle_4 -> middle_D
   HS -> guard   -> middle_5 -> middle_E -> Rendezvous Point
 -> middle_6 -> middle_F
 -> middle_7 -> middle_G
 -> middle_8 -> middle_H
 ->   ...->  ...
 -> middle_n -> middle_n

  this proposal pins the two middles nodes to a much more restricted
  set, as follows:

  -> guard_3A_A
 -> guard_2_A -> guard_3A_B
  -> guard_3A_C -> Rendezvous Point
   HS -> guard_1
  -> guard_3B_D
 -> guard_2_B -> guard_3B_E
  -> guard_3B_F -> Rendezvous Point


  Note that the third level guards are partitioned into buckets such that
  they are only used with one specific second-level guard. In this way,
  we ensure that even if an adversary is able to execute a Sybil attack
  against the third layer, they only get to learn one of the second-layer
  Guards, and not all of them. This prevents the adversary from gaining
  the ability to take their pick 

Re: [tor-dev] . tor-roster's geo diversity badge and self-ref relays

2015-09-13 Thread Tom van der Woerdt

> On 13 Sep 2015, at 22:09, teor  wrote:
> 
> 
>> On 13 Sep 2015, at 18:18, Sean Saito  wrote:
>> 
>> >"No Self-Referencing Relays"
>> 
>> >I'm not sure what exactly you mean by that but I assume it is a MyFamily
>> 
>> >config where a relay includes his own fingerprint. Why does that hurt?
>> 
>> >The unnecessary descriptor space/bw?
>> 
>>  
>> 
>> This is something Virgil wanted because he thought self-connections were 
>> ugly.  If the
>> 
>> penalizing of self-connections is found to be uglier than the 
>> self-connections themselves, we're
>> 
>> both fine with removing it.
>> 
> 
> Can this be downgraded to an informational message? (or eliminated entirely?)
> 
> Penalties can be quite discouraging, particularly for minor configuration 
> variants.
> 
> Tim

I agree, and this one in particular is important to some operators: by allowing 
a relay to specify itself in the family, one can just have a single 
configuration file for all relays in a family. 

Tom

___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] . tor-roster's geo diversity badge and self-ref relays

2015-09-13 Thread teor

> On 13 Sep 2015, at 18:18, Sean Saito  wrote:
> 
> >"No Self-Referencing Relays"
> 
> >I'm not sure what exactly you mean by that but I assume it is a MyFamily
> 
> >config where a relay includes his own fingerprint. Why does that hurt?
> 
> >The unnecessary descriptor space/bw?
> 
>  
> 
> This is something Virgil wanted because he thought self-connections were 
> ugly.  If the
> 
> penalizing of self-connections is found to be uglier than the 
> self-connections themselves, we're
> 
> both fine with removing it.
> 

Can this be downgraded to an informational message? (or eliminated entirely?)

Penalties can be quite discouraging, particularly for minor configuration 
variants.

Tim

Tim Wilson-Brown (teor)

teor2345 at gmail dot com
pgp 0xABFED1AC
https://gist.github.com/teor2345/d033b8ce0a99adbc89c5

teor at blah dot im
OTR D5BE4EC2 255D7585 F3874930 DB130265 7C9EBBC7___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] Let's identify which measurement-related tools need work when relays switch from RSA identities to ed25519 identities

2015-09-13 Thread Damian Johnson
> It's true, dropping the fingerprint is quite invasive and might break
> things.  But that's why we're making plans now to make this transition
> as smooth as possible.
>
> However, I don't think that we can get away by just replacing the
> existing 20 byte long RSA key digest with a 20 byte long hash of the
> new, 32 byte long ed25519 key.  There are probably cryptographic
> reasons for that.  But in addition to that, there should be a time
> when relays use both fingerprints in parallel so that directory
> authorities and other tools can build a map from old to new
> identities.  Otherwise, relays would lose all their history only
> because they are switching from RSA to ed25519, and wouldn't that be
> sad?  There might be more reasons that I'm currently not thinking of.
>  But: I'm not making this call, I'm just thinking about the possible
> impact of this change and which code needs to be updated.
>
> How about we talk more about this in Berlin together with Nick?  Maybe
> take a look at the list I wrote and think of other code that will need
> work when this change actually takes place?

Certainly, sounds good! For what it's worth my concern is about the
fingerprint's longstanding role as the relay identifier. Some spots
off the top of my head...

* The control spec allows you to query descriptors by fingerprint or nickname.
* Circuit events and most other things citing relays do so by
fingerprint or fingerprint~nickname.
* Atlas, Globe, and just about every tool that allows you to look up
relay information does so by fingerprint.
* In Stem anything related to identifying a relay does so by fingerprint.

No doubt there's many, many other things that'll break too. This is
the main identifier of a relay and I'd expect mucking with it to break
all the things. Hence my interest in an in-place replacement instead.
;)

Cheers! -Damian
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] Let's identify which measurement-related tools need work when relays switch from RSA identities to ed25519 identities

2015-09-13 Thread Karsten Loesing
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 08/09/15 18:16, Damian Johnson wrote:
>>> Hi Karsten. Quick question: with the switchover are relay
>>> fingerprints going away? That is to say, server descriptors no
>>> longer have a...
>>> 
>>> fingerprint D203 4DDF 1275 A234 4F66 9935 A3EF B908 FFC7 AE9A
>>> 
>>> ... line, and router status entries don't have it on their
>>> dir-source?
> If not, what in particular are being dropped?
>>> 
>>> Cheers! -Damian
>> 
>> yes, I think that's the plan.  Please see proposal 220, Sections
>> 8 and 9 for some more details.
> 
> Thanks Karsten. Now that I know this isn't a completely foolish 
> question adding tor-dev@ back in.
> 
> If we're dropping the fingerprint that's a lot more invasive. 
> Fingerprints are relay's canonical identity, and simply dropping
> them will break... a lot. I'd suggest instead relays should
> continue to have a fingerprint but that it's the 40 character hex
> hash of the ed25519 identity.

It's true, dropping the fingerprint is quite invasive and might break
things.  But that's why we're making plans now to make this transition
as smooth as possible.

However, I don't think that we can get away by just replacing the
existing 20 byte long RSA key digest with a 20 byte long hash of the
new, 32 byte long ed25519 key.  There are probably cryptographic
reasons for that.  But in addition to that, there should be a time
when relays use both fingerprints in parallel so that directory
authorities and other tools can build a map from old to new
identities.  Otherwise, relays would lose all their history only
because they are switching from RSA to ed25519, and wouldn't that be
sad?  There might be more reasons that I'm currently not thinking of.
 But: I'm not making this call, I'm just thinking about the possible
impact of this change and which code needs to be updated.

How about we talk more about this in Berlin together with Nick?  Maybe
take a look at the list I wrote and think of other code that will need
work when this change actually takes place?

All the best,
Karsten


> On a side note it would be nice to have a spec patch before
> changing things this time. Sections 8 and 9 are a fine summary, but
> it's not clear to me precisely how the descriptors are changing
> from it. They certainly don't say to me "we're dropping the
> fingerprint field". If that change went out without a spec patch
> first I'd borrow Mr. Potato Head's angry eyes to stare at its
> author.
> 
> Cheers! -Damian ___ 
> tor-dev mailing list tor-dev@lists.torproject.org 
> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev
> 

-BEGIN PGP SIGNATURE-
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org

iQEcBAEBAgAGBQJV9YYpAAoJEJD5dJfVqbCr5bQIAMDFa02wnrxpL+qCiXBHCJ+g
RAIZHgKWOUSO35dAyLDpDbnRWLbTMOlXgxrdbBNLzzXrs+9jT9Ivz2ZEHPnSwt88
P0f396ZU/QvpT4M4uZXLV/Nzq0S1+OqjK/brDXMNwZaKuJKF8rjtvJvVb4s1HQVD
ubf8EV1vz4/7XS+yPKanZWdnFnBTCsT/56D0pcEyntk3evLElJCeC1f5fMXkrzLO
Iu8ZfRoNgAMJ7EbKH6SucyExpsY0xfSOSl+E06ZVYH20AuT/ZBT88S/Yqv0vTduW
vY10tSrigm5/UsoCV5sTNG/DMq5F19MPfYts7N05NM5iOEFIkIulD1AOPBhVj34=
=nWI2
-END PGP SIGNATURE-
___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev


Re: [tor-dev] . tor-roster's geo diversity badge and self-ref relays

2015-09-13 Thread Sean Saito
Hi nusenu,


>Do you consider in-family diversity so important - even though all of
>them are run by a single entity anyway?
> How about having a badge for tor network wide diversity?
> I'd consider the tor network's overall diversity far more important than
> in-family diversity because clients won't use more than one relay of a
> given family anyway.

Entire-network diversity is obviously more important than within-operator 
diversity---no doubt 
about that.   We are doing within-operator diversity simply because the it's 
easier to 
measure/understand.  I agree that measuring a family's relay diversity with 
respect to the 
entire Tor network is would be supplementary, maybe even strictly better. I am 
already logging 
relevant data, namely the number of relays per country and total CW per country 
(as you 
suggested previously). The former stastic could be used for badges like "First 
relay in country 
X."

>More than 4/5 of the family's CW is located in countries with a cw lower
>than 2%* (currently means non-top 7 country) and ASes lower than 1.5%*
>(currently means non-top 8 AS)?
>
>That implies some degree of in-family diversity since a big family would
>have to spread across multiple countries/ASes

Although there have been some interesting discussions about which ASes to 
prioritize in putting 
new relays, an actual concrete numerical measure is thus far an unsolved 
problem.  Virgil and I 
have talked about using a new tool (http://labs.apnic.net/vizas/) to observe 
which ASes have 
more interconnections and award bonus points to new relays on them.  When these 
measures become 
better established definitely in favor of making badges for them (perhaps even 
replacing the 
within-operator diversity badges?).

>"No Self-Referencing Relays"
>I'm not sure what exactly you mean by that but I assume it is a MyFamily
>config where a relay includes his own fingerprint. Why does that hurt?
>The unnecessary descriptor space/bw?

This is something Virgil wanted because he thought self-connections were ugly.  
If the 
penalizing of self-connections is found to be uglier than the self-connections 
themselves, we're 
both fine with removing it.

Hope this answers your questions. Thanks for the feedback!


Best,
Sean





___
tor-dev mailing list
tor-dev@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev