Interface ExtraInfoDescriptor
 All Superinterfaces:
Descriptor
,Serializable
 All Known Subinterfaces:
BridgeExtraInfoDescriptor
,RelayExtraInfoDescriptor
Relays publish extrainfo descriptors as an addendum to server
descriptors (ServerDescriptor
) to report extraneous information
to the directory authorities that clients do not need to download in
order to function. This information primarily consists of statistics
gathered by the relay about its usage and can take up a lot of
descriptor space. The separation of server descriptors and extrainfo
descriptors has become less relevant with the introduction of
microdescriptors (Microdescriptor
) that are derived from server
descriptors by the directory authority and which clients download
instead of server descriptors, but it persists.
Bridges publish extrainfo descriptors to the bridge authority for the same reason, to include statistics about their usage without increasing the directory protocol overhead for bridge clients. In this case, the separation of server descriptors and extrainfo descriptors is slightly more relevant, because there are no microdescriptors for bridges, so that bridge clients still download server descriptors of bridges they're using. Another reason is that bridges need to include information like details of all the transports they support in their descriptors, and bridge clients using one such transport are not supposed to learn the details of the other transports.
It's worth noting that all contents of extrainfo descriptors are written and signed by relays and bridges without a third party verifying their correctness. The (bridge) directory authorities may decide to exclude dishonest servers from the network statuses they produce, but that wouldn't be reflected in extrainfo descriptors.
 Since:
 1.0.0

Method Summary
Modifier and TypeMethodDescriptionGet statistics on bridge client IP addresses by country with map keys being country codes and map values being the number of unique IP addresses that have connected from that country rounded up to the nearest multiple of 8, or null if no such statistics are included.Get statistics on bridge client IP addresses by transport with map keys being pluggable transport names, e.g.,"obfs2"
or"obfs3"
for known transports,"<OR>"
for the default onion routing protocol, or"<??>"
for an unknown transport, and map values being the number of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included.Get statistics on bridge client IP addresses by IP version with map keys being protocol families, e.g.,"v4"
or"v6"
, and map values being the number of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included.long
Get the time in milliseconds since the epoch when the included bridge statistics interval ended, or 1 if no such statistics are included.long
Get the interval length of the included bridge statistics in seconds, or1L
if no such statistics are included.int
Get the mean number of circuits included in any of the cell statistics deciles, or1
if no such statistics are included.Get the mean number of processed cells per circuit by circuit decile starting with the loudest decile at index 0 and the quietest decile at index 8, ornull
if no such statistics are included.Get the mean number of cells contained in circuit queues by circuit decile starting with the loudest decile at index 0 and the quietest decile at index 8, ornull
if no such statistics are included.long
Get the time in milliseconds since the epoch when the included cell statistics interval ended, or1L
if no such statistics are included.long
Get the interval length of the included cell statistics in seconds, or1L
if no such statistics are included.Get the mean times in milliseconds that cells spend in circuit queues by circuit decile starting with the loudest decile at index 0 and the quietest decile at index 8, ornull
if no such statistics are included.int
Get the number of connections on which this server read and wrote less than 2 KiB/s in a 10second interval, or1
if no such statistics are included.int
Get the number of connections on which this server read and wrote at least 2 KiB/s in a 10second interval but not 10 times more in either direction, or1
if no such statistics are included.int
Get the number of connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in read direction than in write direction, or 1 if no such statistics are included.long
Get the time in milliseconds since the epoch when the included statistics on bidirectional connection usage ended, or1L
if no such statistics are included.long
Get the interval length of the included statistics on bidirectional connection usage in seconds, or1L
if no such statistics are included.int
Get the number of connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in write direction than in read direction, or1
if no such statistics are included.Get the SHA1 descriptor digest, encoded as 40 lowercase (relay descriptors) or uppercase (bridge descriptors) hexadecimal characters, that is used to reference this descriptor from a server descriptor.Get the SHA256 descriptor digest, encoded as 43 base64 characters without padding characters, that may be used to reference this descriptor from a server descriptor.Get the directory request read history contained in this descriptor, ornull
if no such history is contained.long
Get the time in milliseconds since the epoch when the included directory request statistics interval ended, or1L
if no such statistics are included.long
Get the interval length of the included directory request statistics in seconds, or 1 if no such statistics are included.Get statistics on directory requests for v2 network statuses to the server's directory port with map keys being statistic keys and map values being statistic values like counts or quantiles, ornull
if no such statistics are included (which is the case with recent Tor versions).Get statistics on unique IP addresses requesting v2 network statuses with map keys being country codes and map values being numbers of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included (which is the case with recent Tor versions).Get statistics on directory requests for v2 network statuses with map keys being country codes and map values being request numbers rounded up to the nearest multiple of 8, ornull
if no such statistics are included (which is the case with recent Tor versions).Get statistics on responses to directory requests for v2 network statuses with map keys being response strings and map values being response numbers rounded up to the nearest multiple of 4, ornull
if no such statistics are included (which is the case with recent Tor versions).double
Get the share of requests for v2 network statuses that the server expects to receive from clients, or 1.0 if this share is not included (which is the case with recent Tor versions).Get statistics on directory requests for v2 network statuses tunneled through a circuit with map keys being statistic keys and map values being statistic values, ornull
if no such statistics are included (which is the case with recent Tor versions).Get statistics on directory requests for v3 network status consensuses of any flavor to the server's directory port with map keys being statistic keys and map values being statistic values like counts or quantiles, ornull
if no such statistics are included.Get statistics on unique IP addresses requesting v3 network status consensuses of any flavor with map keys being country codes and map values being numbers of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included.Get statistics on directory requests for v3 network status consensuses of any flavor with map keys being country codes and map values being request numbers rounded up to the nearest multiple of 8, ornull
if no such statistics are included.Get statistics on responses to directory requests for v3 network status consensuses of any flavor with map keys being response strings and map values being response numbers rounded up to the nearest multiple of 4, or null if no such statistics are included.double
Get the share of requests for v3 network status consensuses of any flavor that the server expects to receive from clients, or 1.0 if this share is not included (which is the case with recent Tor versions).Get statistics on directory requests for v3 network status consensuses of any flavor tunneled through a circuit with map keys being statistic keys and map values being statistic values, ornull
if no such statistics are included.Get the directory request write history contained in this descriptor, ornull
if no such history is contained.Get statistics on client IP addresses with map keys being country codes and map values being the number of unique IP addresses that have connected from that country rounded up to the nearest multiple of 8, ornull
if no such statistics are included.long
Get the time in milliseconds since the epoch when the included entry statistics interval ended, or1L
if no such statistics are included.long
Get the interval length of the included entry statistics in seconds, or1L
if no such statistics are included.Get statistics on KiB read from streams exiting the Tor network by target TCP port with map keys being string representations of ports (or"other"
) and map values being KiB rounded up to the next full KiB, ornull
if no such statistics are included.Get statistics on KiB written to streams exiting the Tor network by target TCP port with map keys being string representations of ports (or"other"
) and map values being KiB rounded up to the next full KiB, ornull
if no such statistics are included.long
Get the time in milliseconds since the epoch when the included exit statistics interval ended, or 1 if no such statistics are included.long
Get the interval length of the included exit statistics in seconds, or 1 if no such statistics are included.Get statistics on opened streams exiting the Tor network by target TCP port with map keys being string representations of ports (or"other"
) and map values being the number of opened streams, rounded up to the nearest multiple of 4, ornull
if no such statistics are included.Get the SHA1 digest of the server's public identity key, encoded as 40 uppercase hexadecimal characters, that is typically used to uniquely identify the server.Get the SHA1 digest of the GeoIPv6 database file used by this server to resolve client IP addresses to country codes, encoded as 40 uppercase hexadecimal characters, ornull
if no GeoIPv6 database digest is included.Get statistics on the origin of client IP addresses with map keys being country codes and map values being the number of unique IP addresses that have connected from that country between the start of the statistics interval and the descriptor publication time rounded up to the nearest multiple of 8, ornull
if no such statistics are included (which is the case except for very old Tor versions).Get the SHA1 digest of the GeoIP database file used by this server to resolve client IP addresses to country codes, encoded as 40 uppercase hexadecimal characters, ornull
if no GeoIP database digest is included.long
Get the time in milliseconds since the epoch when the included "geoip" statistics interval started, or1L
if no such statistics are included (which is the case except for very old Tor versions).Get the approximate number of unique hiddenservice identities seen in descriptors published to and accepted by this hiddenservice directory, ornull
if no such statistics are included.Get the obfuscation parameters applied to the original measurement value of unique hiddenservice identities seen in descriptors published to and accepted by this hiddenservice directory, ornull
if no such statistics are included.Get the approximate number of unique version 3 onion service identities seen in descriptors published to and accepted by this onion service directory, ornull
if no such statistics are included.Get the obfuscation parameters applied to the original measurement value of unique version 3 onion service identities seen in descriptors published to and accepted by this onion service directory, ornull
if no such statistics are included.Get the approximate number of RELAY cells seen in either direction on a circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included.Get the obfuscation parameters applied to the original measurement value of RELAY cells seen in either direction on a circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included.Get the approximate number of RELAY cells seen in either direction on a version 3 onion service circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included.Get the obfuscation parameters applied to the original measurement value of RELAY cells seen in either direction on a version 3 onion service circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included.long
Get the time in milliseconds since the epoch when the included hiddenservice statistics interval ended, or1L
if no such statistics are included.long
Get the interval length of the included hiddenservice statistics in seconds, or1L
if no such statistics are included.long
Get the time in milliseconds since the epoch when the included version 3 onion service statistics interval ended, or1L
if no such statistics are included.long
Get the interval length of the included version 3 onion service statistics in seconds, or1L
if no such statistics are included.Get the Ed25519 certificate in PEM format, ornull
if the descriptor doesn't contain one.int
Get the number of IPv6 connections on which this server read and wrote less than 2 KiB/s in a 10second interval, or1
if no such statistics are included.int
Get the number of IPv6 connections on which this server read and wrote at least 2 KiB/s in a 10second interval but not 10 times more in either direction, or1
if no such statistics are included.int
Get the number of IPv6 connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in read direction than in write direction, or 1 if no such statistics are included.long
Get the time in milliseconds since the epoch when the included statistics on bidirectional IPv6 connection usage ended, or1L
if no such statistics are included.long
Get the interval length of the included statistics on bidirectional IPv6 connection usage in seconds, or1L
if no such statistics are included.int
Get the number of IPv6 connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in write direction than in read direction, or1
if no such statistics are included.Get the server's history of read IPv6 bytes, ornull
if the descriptor does not contain a bandwidth history.Get the server's history of written IPv6 bytes, ornull
if the descriptor does not contain a bandwidth history.Get the Ed25519 master key, encoded as 43 base64 characters without padding characters, which was either parsed from the optional"masterkeyed25519"
line or derived from the (likewise optional) Ed25519 certificate following the"identityed25519"
line, ornull
if the descriptor contains neither Ed25519 master key nor Ed25519 certificate.Get the server's nickname consisting of 1 to 19 alphanumeric characters.long
Get the server's descriptor exhaustion as a timestamp.int
Get the version number in the overloadfdexhausted line.long
Get the server's burstlimit, or1L
if the descriptor does not contain a bandwidth overload rate limit.long
Get the server's ratelimit, or1L
if the descriptor does not contain a bandwidth overload rate limit.int
Get the server's readoverloadcount, or1L
if the descriptor does not contain a bandwidth overload rate limit.long
Get the server's history exhausted bandwidth as a timestamp of the last time this happened, or 1 if the descriptor does not contain a bandwidth overload rate limit.int
Get the version number in the overloadratelimits line or0
if no overloadratelimits line is present.int
Get the server's writeoverloadcount, or 1 if the descriptor does not contain a bandwidth overload rate limit.Get paddingcounts statistics, ornull
if no such statistics are included.long
Get the time in milliseconds since the epoch when the included paddingcounts statistics ended, or1L
if no such statistics are included.long
Get the interval length of the included paddingcounts statistics in seconds, or1
if no such statistics are included.long
Get the time in milliseconds since the epoch when this descriptor and the corresponding server descriptor were generated.Get the server's history of read bytes, ornull
if the descriptor does not contain a bandwidth history; older Tor versions included bandwidth histories in their server descriptors (ServerDescriptor.getReadHistory()
).Get the RSA1024 signature of the PKCS1padded descriptor digest, taken from the beginning of the router line through the newline after the routersignature line, ornull
if the descriptor doesn't contain a signature (which is the case in sanitized bridge descriptors).Get the Ed25519 signature of the SHA256 digest of the entire descriptor, encoded as 86 base64 characters without padding characters, from the first character up to and including the first space after the"routersiged25519"
string, prefixed with the string"Tor router descriptor signature v1"
.Get the (possibly empty) list of pluggable transports supported by this server.Get the server's history of written bytes, ornull
if the descriptor does not contain a bandwidth history; older Tor versions included bandwidth histories in their server descriptors (ServerDescriptor.getWriteHistory()
).Methods inherited from interface org.torproject.descriptor.Descriptor
getAnnotations, getDescriptorFile, getRawDescriptorBytes, getRawDescriptorLength, getUnrecognizedLines

Method Details

getDigestSha1Hex
String getDigestSha1Hex()Get the SHA1 descriptor digest, encoded as 40 lowercase (relay descriptors) or uppercase (bridge descriptors) hexadecimal characters, that is used to reference this descriptor from a server descriptor. Returns:
 SHA1 descriptor digest or bridge descriptor
 Since:
 1.7.0

getDigestSha256Base64
String getDigestSha256Base64()Get the SHA256 descriptor digest, encoded as 43 base64 characters without padding characters, that may be used to reference this descriptor from a server descriptor. Returns:
 SHA256 descriptor digest
 Since:
 1.7.0

getNickname
String getNickname()Get the server's nickname consisting of 1 to 19 alphanumeric characters. Returns:
 nickname
 Since:
 1.0.0

getFingerprint
String getFingerprint()Get the SHA1 digest of the server's public identity key, encoded as 40 uppercase hexadecimal characters, that is typically used to uniquely identify the server. Returns:
 SHA1 digest of the server's public identity key
 Since:
 1.0.0

getPublishedMillis
long getPublishedMillis()Get the time in milliseconds since the epoch when this descriptor and the corresponding server descriptor were generated. Returns:
 time since the epoch
 Since:
 1.0.0

getReadHistory
BandwidthHistory getReadHistory()Get the server's history of read bytes, ornull
if the descriptor does not contain a bandwidth history; older Tor versions included bandwidth histories in their server descriptors (ServerDescriptor.getReadHistory()
). Returns:
 read bytes or
null
 Since:
 1.0.0

getWriteHistory
BandwidthHistory getWriteHistory()Get the server's history of written bytes, ornull
if the descriptor does not contain a bandwidth history; older Tor versions included bandwidth histories in their server descriptors (ServerDescriptor.getWriteHistory()
). Returns:
 written bytes or
null
 Since:
 1.0.0

getIpv6WriteHistory
BandwidthHistory getIpv6WriteHistory()Get the server's history of written IPv6 bytes, ornull
if the descriptor does not contain a bandwidth history. Returns:
 written IPv6 bytes or
null
 Since:
 2.14.0

getIpv6ReadHistory
BandwidthHistory getIpv6ReadHistory()Get the server's history of read IPv6 bytes, ornull
if the descriptor does not contain a bandwidth history. Returns:
 read IPv6 bytes or
null
 Since:
 2.14.0

getOverloadRatelimitsVersion
int getOverloadRatelimitsVersion()Get the version number in the overloadratelimits line or0
if no overloadratelimits line is present. Returns:
 version number or
0
 Since:
 2.18.0

getOverloadRatelimitsTimestamp
long getOverloadRatelimitsTimestamp()Get the server's history exhausted bandwidth as a timestamp of the last time this happened, or 1 if the descriptor does not contain a bandwidth overload rate limit. Returns:
 timestamp or
1L
 Since:
 2.18.0

getOverloadRatelimitsRateLimit
long getOverloadRatelimitsRateLimit()Get the server's ratelimit, or1L
if the descriptor does not contain a bandwidth overload rate limit. Returns:
 ratelimit or
1L
 Since:
 2.18.0

getOverloadRatelimitsBurstLimit
long getOverloadRatelimitsBurstLimit()Get the server's burstlimit, or1L
if the descriptor does not contain a bandwidth overload rate limit. Returns:
 burstlimit or
1L
 Since:
 2.18.0

getOverloadRatelimitsReadCount
int getOverloadRatelimitsReadCount()Get the server's readoverloadcount, or1L
if the descriptor does not contain a bandwidth overload rate limit. Returns:
 burstlimit or
1L
 Since:
 2.18.0

getOverloadRatelimitsWriteCount
int getOverloadRatelimitsWriteCount()Get the server's writeoverloadcount, or 1 if the descriptor does not contain a bandwidth overload rate limit. Returns:
 writeoverloadcount or
1
 Since:
 2.18.0

getOverloadFdExhaustedVersion
int getOverloadFdExhaustedVersion()Get the version number in the overloadfdexhausted line. Returns:
 version or
0
 Since:
 2.18.0

getOverloadFdExhaustedTimestamp
long getOverloadFdExhaustedTimestamp()Get the server's descriptor exhaustion as a timestamp. The timestamp indicates that the maximum was reached between the timestamp and the "published" timestamp of the document.1L
is returned if the descriptor does not contain a file descriptor exhaustion. Returns:
 timestamp or
1L
 Since:
 2.18.0

getGeoipDbDigestSha1Hex
String getGeoipDbDigestSha1Hex()Get the SHA1 digest of the GeoIP database file used by this server to resolve client IP addresses to country codes, encoded as 40 uppercase hexadecimal characters, ornull
if no GeoIP database digest is included. Returns:
 SHA1 digest or
null
 Since:
 1.7.0

getGeoip6DbDigestSha1Hex
String getGeoip6DbDigestSha1Hex()Get the SHA1 digest of the GeoIPv6 database file used by this server to resolve client IP addresses to country codes, encoded as 40 uppercase hexadecimal characters, ornull
if no GeoIPv6 database digest is included. Returns:
 SHA1 digest or
null
 Since:
 1.7.0

getDirreqStatsEndMillis
long getDirreqStatsEndMillis()Get the time in milliseconds since the epoch when the included directory request statistics interval ended, or1L
if no such statistics are included. Returns:
 time since the epoch or
1
 Since:
 1.0.0

getDirreqStatsIntervalLength
long getDirreqStatsIntervalLength()Get the interval length of the included directory request statistics in seconds, or 1 if no such statistics are included. Returns:
 interval length or
1L
 Since:
 1.0.0

getDirreqV2Ips
Get statistics on unique IP addresses requesting v2 network statuses with map keys being country codes and map values being numbers of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included (which is the case with recent Tor versions). Returns:
 SortedMap ("contry code", "number of unique IPs"} or
null
 Since:
 1.0.0

getDirreqV3Ips
Get statistics on unique IP addresses requesting v3 network status consensuses of any flavor with map keys being country codes and map values being numbers of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included. Returns:
 SortedMap ("contry code", "number of unique IPs"} or
null
 Since:
 1.0.0

getDirreqV2Reqs
Get statistics on directory requests for v2 network statuses with map keys being country codes and map values being request numbers rounded up to the nearest multiple of 8, ornull
if no such statistics are included (which is the case with recent Tor versions). Returns:
 SortedMap ("contry code", "number of requests"} or
null
 Since:
 1.0.0

getDirreqV3Reqs
Get statistics on directory requests for v3 network status consensuses of any flavor with map keys being country codes and map values being request numbers rounded up to the nearest multiple of 8, ornull
if no such statistics are included. Returns:
 SortedMap ("contry code", "number of requests"} or
null
 Since:
 1.0.0

getDirreqV2Resp
Get statistics on responses to directory requests for v2 network statuses with map keys being response strings and map values being response numbers rounded up to the nearest multiple of 4, ornull
if no such statistics are included (which is the case with recent Tor versions). Returns:
 SortedMap ("response string","response number") or
null
 Since:
 1.0.0

getDirreqV3Resp
Get statistics on responses to directory requests for v3 network status consensuses of any flavor with map keys being response strings and map values being response numbers rounded up to the nearest multiple of 4, or null if no such statistics are included. Returns:
 SortedMap ("response string","response number") or
null
 Since:
 1.0.0

getDirreqV2DirectDl
Get statistics on directory requests for v2 network statuses to the server's directory port with map keys being statistic keys and map values being statistic values like counts or quantiles, ornull
if no such statistics are included (which is the case with recent Tor versions). Returns:
 SortedMap ("key","value") or
null
 Since:
 1.0.0

getDirreqV3DirectDl
Get statistics on directory requests for v3 network status consensuses of any flavor to the server's directory port with map keys being statistic keys and map values being statistic values like counts or quantiles, ornull
if no such statistics are included. Returns:
 SortedMap ("key","value") or
null
 Since:
 1.0.0

getDirreqV2TunneledDl
Get statistics on directory requests for v2 network statuses tunneled through a circuit with map keys being statistic keys and map values being statistic values, ornull
if no such statistics are included (which is the case with recent Tor versions). Returns:
 SortedMap ("key","value") or
null
 Since:
 1.0.0

getDirreqV3TunneledDl
Get statistics on directory requests for v3 network status consensuses of any flavor tunneled through a circuit with map keys being statistic keys and map values being statistic values, ornull
if no such statistics are included. Returns:
 SortedMap ("key","value") or
null
 Since:
 1.0.0

getDirreqReadHistory
BandwidthHistory getDirreqReadHistory()Get the directory request read history contained in this descriptor, ornull
if no such history is contained. Returns:
 read history or
null
 Since:
 1.0.0

getDirreqWriteHistory
BandwidthHistory getDirreqWriteHistory()Get the directory request write history contained in this descriptor, ornull
if no such history is contained. Returns:
 read history or
null
 Since:
 1.0.0

getEntryStatsEndMillis
long getEntryStatsEndMillis()Get the time in milliseconds since the epoch when the included entry statistics interval ended, or1L
if no such statistics are included. Returns:
 time or
1L
 Since:
 1.0.0

getEntryStatsIntervalLength
long getEntryStatsIntervalLength()Get the interval length of the included entry statistics in seconds, or1L
if no such statistics are included. Returns:
 time interval or
1L
 Since:
 1.0.0

getEntryIps
Get statistics on client IP addresses with map keys being country codes and map values being the number of unique IP addresses that have connected from that country rounded up to the nearest multiple of 8, ornull
if no such statistics are included. Returns:
 SrotedMap ("country code", "number of unique IPs") or
null
 Since:
 1.0.0

getCellStatsEndMillis
long getCellStatsEndMillis()Get the time in milliseconds since the epoch when the included cell statistics interval ended, or1L
if no such statistics are included. Returns:
 time since the epoch or
1L
 Since:
 1.0.0

getCellStatsIntervalLength
long getCellStatsIntervalLength()Get the interval length of the included cell statistics in seconds, or1L
if no such statistics are included. Returns:
 time interval or
1L
 Since:
 1.0.0

getCellProcessedCells
Get the mean number of processed cells per circuit by circuit decile starting with the loudest decile at index 0 and the quietest decile at index 8, ornull
if no such statistics are included. Returns:
 mean of processed cells per circuit or
null
 Since:
 1.0.0

getCellQueuedCells
Get the mean number of cells contained in circuit queues by circuit decile starting with the loudest decile at index 0 and the quietest decile at index 8, ornull
if no such statistics are included. Returns:
 mean of processed cells or
null
 Since:
 1.0.0

getCellTimeInQueue
Get the mean times in milliseconds that cells spend in circuit queues by circuit decile starting with the loudest decile at index 0 and the quietest decile at index 8, ornull
if no such statistics are included. Returns:
 mean of time or
null
 Since:
 1.0.0

getCellCircuitsPerDecile
int getCellCircuitsPerDecile()Get the mean number of circuits included in any of the cell statistics deciles, or1
if no such statistics are included. Returns:
 mean number of circuits or
1
 Since:
 1.0.0

getConnBiDirectStatsEndMillis
long getConnBiDirectStatsEndMillis()Get the time in milliseconds since the epoch when the included statistics on bidirectional connection usage ended, or1L
if no such statistics are included. Returns:
 time or
1L
 Since:
 1.0.0

getConnBiDirectStatsIntervalLength
long getConnBiDirectStatsIntervalLength()Get the interval length of the included statistics on bidirectional connection usage in seconds, or1L
if no such statistics are included. Returns:
 interval or
1L
 Since:
 1.0.0

getConnBiDirectBelow
int getConnBiDirectBelow()Get the number of connections on which this server read and wrote less than 2 KiB/s in a 10second interval, or1
if no such statistics are included. Returns:
 number of connections or
1
 Since:
 1.0.0

getConnBiDirectRead
int getConnBiDirectRead()Get the number of connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in read direction than in write direction, or 1 if no such statistics are included. Returns:
 number of connections or
1
 Since:
 1.0.0

getConnBiDirectWrite
int getConnBiDirectWrite()Get the number of connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in write direction than in read direction, or1
if no such statistics are included. Returns:
 number of connections or
1
 Since:
 1.0.0

getConnBiDirectBoth
int getConnBiDirectBoth()Get the number of connections on which this server read and wrote at least 2 KiB/s in a 10second interval but not 10 times more in either direction, or1
if no such statistics are included. Returns:
 number of connections or
1
 Since:
 1.0.0

getIpv6ConnBiDirectStatsEndMillis
long getIpv6ConnBiDirectStatsEndMillis()Get the time in milliseconds since the epoch when the included statistics on bidirectional IPv6 connection usage ended, or1L
if no such statistics are included. Returns:
 time or
1L
 Since:
 2.14.0

getIpv6ConnBiDirectStatsIntervalLength
long getIpv6ConnBiDirectStatsIntervalLength()Get the interval length of the included statistics on bidirectional IPv6 connection usage in seconds, or1L
if no such statistics are included. Returns:
 inteval or
1L
 Since:
 2.14.0

getIpv6ConnBiDirectBelow
int getIpv6ConnBiDirectBelow()Get the number of IPv6 connections on which this server read and wrote less than 2 KiB/s in a 10second interval, or1
if no such statistics are included. Returns:
 number of connections or
1
 Since:
 2.14.0

getIpv6ConnBiDirectRead
int getIpv6ConnBiDirectRead()Get the number of IPv6 connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in read direction than in write direction, or 1 if no such statistics are included. Returns:
 number of connections or
1
 Since:
 2.14.0

getIpv6ConnBiDirectWrite
int getIpv6ConnBiDirectWrite()Get the number of IPv6 connections on which this server read and wrote at least 2 KiB/s in a 10second interval and at least 10 times more in write direction than in read direction, or1
if no such statistics are included. Returns:
 number of connections or
1
 Since:
 2.14.0

getIpv6ConnBiDirectBoth
int getIpv6ConnBiDirectBoth()Get the number of IPv6 connections on which this server read and wrote at least 2 KiB/s in a 10second interval but not 10 times more in either direction, or1
if no such statistics are included. Returns:
 number of connections or
1
 Since:
 2.14.0

getExitStatsEndMillis
long getExitStatsEndMillis()Get the time in milliseconds since the epoch when the included exit statistics interval ended, or 1 if no such statistics are included. Returns:
 time in milliseconds or 1
 Since:
 1.0.0

getExitStatsIntervalLength
long getExitStatsIntervalLength()Get the interval length of the included exit statistics in seconds, or 1 if no such statistics are included. Returns:
 interval length or 1
 Since:
 1.0.0

getExitKibibytesWritten
Get statistics on KiB written to streams exiting the Tor network by target TCP port with map keys being string representations of ports (or"other"
) and map values being KiB rounded up to the next full KiB, ornull
if no such statistics are included. Returns:
 KiB written
null
 Since:
 1.0.0

getExitKibibytesRead
Get statistics on KiB read from streams exiting the Tor network by target TCP port with map keys being string representations of ports (or"other"
) and map values being KiB rounded up to the next full KiB, ornull
if no such statistics are included. Returns:
 KiB read
null
 Since:
 1.0.0

getExitStreamsOpened
Get statistics on opened streams exiting the Tor network by target TCP port with map keys being string representations of ports (or"other"
) and map values being the number of opened streams, rounded up to the nearest multiple of 4, ornull
if no such statistics are included. Returns:
 SortedMap ("port","opened streams") or
null
 Since:
 1.0.0

getGeoipStartTimeMillis
long getGeoipStartTimeMillis()Get the time in milliseconds since the epoch when the included "geoip" statistics interval started, or1L
if no such statistics are included (which is the case except for very old Tor versions). Returns:
 time or
1L
 Since:
 1.0.0

getGeoipClientOrigins
Get statistics on the origin of client IP addresses with map keys being country codes and map values being the number of unique IP addresses that have connected from that country between the start of the statistics interval and the descriptor publication time rounded up to the nearest multiple of 8, ornull
if no such statistics are included (which is the case except for very old Tor versions). Returns:
 SortedMap of ("country code", "number of unique IP addresses") or
null
 Since:
 1.0.0

getBridgeStatsEndMillis
long getBridgeStatsEndMillis()Get the time in milliseconds since the epoch when the included bridge statistics interval ended, or 1 if no such statistics are included. Returns:
 time or
1
 Since:
 1.0.0

getBridgeStatsIntervalLength
long getBridgeStatsIntervalLength()Get the interval length of the included bridge statistics in seconds, or1L
if no such statistics are included. Returns:
 interval or
1L
 Since:
 1.0.0

getBridgeIps
Get statistics on bridge client IP addresses by country with map keys being country codes and map values being the number of unique IP addresses that have connected from that country rounded up to the nearest multiple of 8, or null if no such statistics are included. Since:
 1.0.0

getBridgeIpVersions
Get statistics on bridge client IP addresses by IP version with map keys being protocol families, e.g.,"v4"
or"v6"
, and map values being the number of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included. Returns:
 SortedMap ("protocol","number of unique IPs") or
null
 Since:
 1.0.0

getBridgeIpTransports
Get statistics on bridge client IP addresses by transport with map keys being pluggable transport names, e.g.,"obfs2"
or"obfs3"
for known transports,"<OR>"
for the default onion routing protocol, or"<??>"
for an unknown transport, and map values being the number of unique IP addresses rounded up to the nearest multiple of 8, ornull
if no such statistics are included. Returns:
 SortedMap ("transport","number of unique IPs") or
null
 Since:
 1.0.0

getTransports
Get the (possibly empty) list of pluggable transports supported by this server. Returns:
 list of pluggable transports
 Since:
 1.0.0

getHidservStatsEndMillis
long getHidservStatsEndMillis()Get the time in milliseconds since the epoch when the included hiddenservice statistics interval ended, or1L
if no such statistics are included. Returns:
 time since the epoch or
1L
 Since:
 1.1.0

getHidservStatsIntervalLength
long getHidservStatsIntervalLength()Get the interval length of the included hiddenservice statistics in seconds, or1L
if no such statistics are included. Returns:
 interval or
1L
 Since:
 1.1.0

getHidservRendRelayedCells
Double getHidservRendRelayedCells()Get the approximate number of RELAY cells seen in either direction on a circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included. Returns:
 relay cells or
null
 Since:
 1.1.0

getHidservRendRelayedCellsParameters
Get the obfuscation parameters applied to the original measurement value of RELAY cells seen in either direction on a circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included. Returns:
 Map ("parameter", "value of RELAY cells") or
null
 Since:
 1.1.0

getHidservDirOnionsSeen
Double getHidservDirOnionsSeen()Get the approximate number of unique hiddenservice identities seen in descriptors published to and accepted by this hiddenservice directory, ornull
if no such statistics are included. Returns:
 number of unique hidden service identities or
null
 Since:
 1.1.0

getHidservDirOnionsSeenParameters
Get the obfuscation parameters applied to the original measurement value of unique hiddenservice identities seen in descriptors published to and accepted by this hiddenservice directory, ornull
if no such statistics are included. Returns:
 Map ("parameter", "identities") or
null
 Since:
 1.1.0

getHidservV3StatsEndMillis
long getHidservV3StatsEndMillis()Get the time in milliseconds since the epoch when the included version 3 onion service statistics interval ended, or1L
if no such statistics are included. Returns:
 time or
1L
 Since:
 2.15.0

getHidservV3StatsIntervalLength
long getHidservV3StatsIntervalLength()Get the interval length of the included version 3 onion service statistics in seconds, or1L
if no such statistics are included. Returns:
 interval or
1L
 Since:
 2.15.0

getHidservRendV3RelayedCells
Double getHidservRendV3RelayedCells()Get the approximate number of RELAY cells seen in either direction on a version 3 onion service circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included. Returns:
 relay cells or
null
 Since:
 2.15.0

getHidservRendV3RelayedCellsParameters
Get the obfuscation parameters applied to the original measurement value of RELAY cells seen in either direction on a version 3 onion service circuit after receiving and successfully processing a RENDEZVOUS1 cell, ornull
if no such statistics are included. Returns:
 Map ("parameter", "REALY cells") or
null
 Since:
 2.15.0

getHidservDirV3OnionsSeen
Double getHidservDirV3OnionsSeen()Get the approximate number of unique version 3 onion service identities seen in descriptors published to and accepted by this onion service directory, ornull
if no such statistics are included. Returns:
 onion service identities or
null
 Since:
 2.15.0

getHidservDirV3OnionsSeenParameters
Get the obfuscation parameters applied to the original measurement value of unique version 3 onion service identities seen in descriptors published to and accepted by this onion service directory, ornull
if no such statistics are included. Returns:
 Map ("parameter", "onion service identities") or
null
 Since:
 2.15.0

getPaddingCountsStatsEndMillis
long getPaddingCountsStatsEndMillis()Get the time in milliseconds since the epoch when the included paddingcounts statistics ended, or1L
if no such statistics are included. Returns:
 time or
1L
 Since:
 1.7.0

getPaddingCountsStatsIntervalLength
long getPaddingCountsStatsIntervalLength()Get the interval length of the included paddingcounts statistics in seconds, or1
if no such statistics are included. Returns:
 interval or
1L
 Since:
 1.7.0

getPaddingCounts
Get paddingcounts statistics, ornull
if no such statistics are included. Returns:
 Map ("key","statistics") or
null
 Since:
 1.7.0

getRouterSignature
String getRouterSignature()Get the RSA1024 signature of the PKCS1padded descriptor digest, taken from the beginning of the router line through the newline after the routersignature line, ornull
if the descriptor doesn't contain a signature (which is the case in sanitized bridge descriptors). Returns:
 RSA1024 signature or
null
 Since:
 1.1.0

getIdentityEd25519
String getIdentityEd25519()Get the Ed25519 certificate in PEM format, ornull
if the descriptor doesn't contain one. Since:
 1.1.0

getMasterKeyEd25519
String getMasterKeyEd25519()Get the Ed25519 master key, encoded as 43 base64 characters without padding characters, which was either parsed from the optional"masterkeyed25519"
line or derived from the (likewise optional) Ed25519 certificate following the"identityed25519"
line, ornull
if the descriptor contains neither Ed25519 master key nor Ed25519 certificate. Returns:
 Ed25519 master key or
null
 Since:
 1.1.0

getRouterSignatureEd25519
String getRouterSignatureEd25519()Get the Ed25519 signature of the SHA256 digest of the entire descriptor, encoded as 86 base64 characters without padding characters, from the first character up to and including the first space after the"routersiged25519"
string, prefixed with the string"Tor router descriptor signature v1"
. Returns:
 Ed25519 signature
 Since:
 1.1.0
