2/11/2011 11.1 None No changes to the meaning, language, or formatting of the technical content. 3/25/2011 11.1 None No changes to the meaning, language, or formatting of the technical content. 5/6/2011 11.1 None No changes to the meaning, language, or formatting of the technical content. 6/17/2011 11.2 Minor Clarified the meaning of the technical content. 9/23/2011 12.0 Major Updated and revised the technical content. 12/16/2011 13.0 Major Updated and revised the technical content. 3/30/2012 13.0 None No changes to the meaning, language, or formatting of the technical content. 7/12/2012 13.0 None No changes to the meaning, language,
6/30/2015 15.0 Major Significantly changed the technical content. 10/16/2015 15.0 None No changes to the meaning, language, or formatting of the technical content. 7/14/2016 16.0 Major Significantly changed the technical content. 6/1/2017 16.0 None No changes to the meaning, language, or formatting of the technical content. 9/15/2017 17.0 Major Significantly changed the technical content.
Hash Protocol Bitmask: 0x02 (CERT_HASH_PROTOCOL_SHA256) 41 2B 48 9A EB D7 EC C7 D0 89 66 F2 6B E7 CD 72 B2 31 A0 E9 21 0D 7C 91 B3 08 86 2B 03 44 C4 35 Certificate Hash: 79 93 EF 31 4C 49 3D AC E9 F0 2D 60 E7 E6 1C 84 B6 69 0A AF E9 D7 AE EA 92 CB BE 8A D5 99 42 2D Compound MAC: 52 A6 8E FD 8C FF BF 52 77 0B 8F 0F E8 EC 73 71 65 83 AF 6D 61 1E B6 D1 79 B3 B2 08 40 98 54 49 In this example, the server uses a SHA1 hash for crypto binding. The following is a sample SSTP_MSG_CALL_CONNECT_ACK in this scenario. 10 01 00 30 00 02 00 01 00 04 00 28 00 00 00 01 0F 1A 2D 58 D4 A3 E3 00 0F AD 3C E4 90 6E 07 B7 07 AA 9E 44 1C CE AC 5C BD 7B 2C C1 C9 D8 6C DF The details of the packet are as follows. Version: 0x10 (Major Version: 0x1, Minor Version: 0x0) C: 1 (Control Packet) Length: 0x030 Message Type: 0x0002 (SSTP_MSG_CALL_CONNECT_ACK) Num Attributes: 0x0001 Attribute 1: Attribute ID: 0x04 (SSTP_ATTRIB_CRYPTO_BINDING_REQ) Length: 0x028 Value: Hash Protocol Bitmask: 0x01 (CERT_HASH_PROTOCOL_SHA1) 0F 1A 2D 58 D4 A3 E3 00 0F AD 3C E4 90 6E 07 B7 07 AA 9E 44 1C CE AC 5C BD 7B 2C C1 C9 D8 6C DF
Index A Abort timers ( 41, 43) Abstract data client ( 38, 45) server ( 38, 59) 12 78 C 40 Call abort message 56 66 32 32 25 54 63 55 30 24 64 27 38 36 Call disconnect acknowledgment message 57 67 Call disconnect message 56 66 34 34 Call establishment 46 60 25 30 24 27 12 86 Client abstract data ( 38, 45) 56 54 55 57 56 46 50 57 58 error handling ( 43, 50) higher-layer triggered events ( 42, 48) initialization ( 42, 48) local events ( 44, 58) message processing ( 43, 50) message status ( 43, 50) negotiation timer ( 48, 58) 58 overview ( 38, 45) 54 54 sequencing rules ( 43, 50) 43 machine ( 38, 46) events ( 43, 58) timers ( 41, 48) Crypto binding 50 73 19 18 19 18 D Data model - abstract client ( 38, 45) server ( 38, 59) Disconnect timers ( 41, 43) E Echo Request message 57 67 Echo Response message 58 67 17 17 Error handling client ( 43, 50) server ( 43, 63) Examples 73 72 70 70 71 71 F 12 G 7 H 72 timer ( 42, 43) Higher-layer triggered events client ( 42, 48) server ( 42, 63)
HMAC-SHA1-160 51 51 HMAC-SHA256-256 53 53 70 70 I 78 78 9 Initialization client ( 42, 48) server ( 42, 62) data 51 53 7 K Key 51 53 L Local events client ( 44, 58) server ( 44, 68) M 80 Message processing client ( 43, 50) server ( 43, 63) Messages 32 25 30 24 27 36 34 19 18 17 16 14 15 13 status - client ( 43, 50) status - server ( 43, 63) 21 13 13 80 N Negotiation timer client ( 48, 58) server ( 62, 68) 8 O local events 58 68 10 P Packet processing 54 63 Packet validation 54 63 78 78 11 11 83 Protocol Details 38 R 8 9 8 11 78 79 S Security 78 78 80 78 78 78 79 Sequencing rules client ( 43, 50) server ( 43, 63) Server abstract data model ( 38, 59) 66 63 64 67 66 60 67 67 handling ( 43, 63) triggered events ( 42, 63) initialization ( 42, 62) local events ( 44, 68) message processing ( 43, 63)