Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( //NamedCurves are named elliptic curve //see https://www.iana.org/assignments/tls-parameters/tls-parameters.xml#tls-parameters-8 NamedCurves = map[uint16]string{ 0: "Reserved", 1: "sect163k1", 2: "sect163r1", 3: "sect163r2", 4: "sect193r1", 5: "sect193r2", 6: "sect233k1", 7: "sect233r1", 8: "sect239k1", 9: "sect283k1", 10: "sect283r1", 11: "sect409k1", 12: "sect409r1", 13: "sect571k1", 14: "sect571r1", 15: "secp160k1", 16: "secp160r1", 17: "secp160r2", 18: "secp192k1", 19: "secp192r1", 20: "secp224k1", 21: "secp224r1", 22: "secp256k1", 23: "secp256r1", 24: "secp384r1", 25: "secp521r1", 26: "brainpoolP256r1", 27: "brainpoolP384r1", 28: "brainpoolP512r1", 29: "x25519", 30: "x448", 256: "ffdhe2048", 257: "ffdhe3072", 258: "ffdhe4096", 259: "ffdhe6144", 260: "ffdhe8192", 65281: "arbitrary_explicit_prime_curves", 65282: "arbitrary_explicit_char2_curves", } // CipherSuiteMap - list of ciphersuites based on: http://www.iana.org/assignments/tls-parameters/tls-parameters.xml // For CSV: https://www.iana.org/assignments/tls-parameters/tls-parameters-4.csv // reserved/unknown items are excluded. CipherSuiteMap = map[uint16]string{}/* 334 elements not displayed */ )
View Source
var BrowserStats = "https://analytics.wikimedia.org/datasets/periodic/reports/metrics/browser/all_sites_by_os_and_browser.tsv"
BrowserStats Wikipedia OS and Browser counts
View Source
var DeviceDetails = "https://api.ssllabs.com/api/v3/getClients"
DeviceDetails SSLLabs clients cipher and protocol support information
Functions ¶
func DownloadData ¶
DownloadData downloads data needed to calculate cipher support probabilities
func PrintStats ¶
func PrintStats(forceDownload bool)
PrintStats prints cipher/protocol usage statistics using Wikipedia visitor data
Types ¶
type Browser ¶
type Browser struct { Date time.Time BrowserFamily string BrowserMajorVersion string OSFamily string OSMajorVersion string Count int64 }
Browser models a Browser and OS along with the count of how many times it shows up
type Device ¶
type Device struct { Name string Platform string Version string LowestProtocol int HighestProtocol int SuiteIds []int SuiteNames []string EllipticCurves []int }
Device models a device and its supported ciphers and protocols
type MappedTLSStatistics ¶
type MappedTLSStatistics struct { Protocols map[int]Entry Ciphers map[int]Entry Curves map[int]Entry }
MappedTLSStatistics is a version of TLSStatistics in 'Map' form
type TLSStatistics ¶
type TLSStatistics struct { GenerationDate time.Time //date this stats was generated StartDate time.Time //the date of first entry used to calculate the stats EndDate time.Time //the date of last entry used to calculate the stats Protocols []Entry Ciphers []Entry Curves []Entry }
TLSStatistics for JSON output
func GetStats ¶
func GetStats(forceDownload bool) (statistics TLSStatistics, e error)
GetStats generates cipher/protocol usage statistics using Wikipedia visitor data
func (TLSStatistics) ToMapped ¶
func (t TLSStatistics) ToMapped() (m MappedTLSStatistics)
ToMapped generates a version of TLSStatistics with easy 'lookup'
Click to show internal directories.
Click to hide internal directories.