Versions in this module Expand all Collapse all v1 v1.0.2 Apr 27, 2023 Changes in this version + const ODOH_VERSION_ONE v1.0.1 Oct 29, 2021 Changes in this version + const ODOH_DEFAULT_AEADID + const ODOH_DEFAULT_KDFID + const ODOH_DEFAULT_KEMID + const ODOH_LABEL_KEY + const ODOH_LABEL_KEY_ID + const ODOH_LABEL_NONCE + const ODOH_LABEL_QUERY + const ODOH_LABEL_RESPONSE + const ODOH_PADDING_BYTE + const ODOH_SECRET_LENGTH + const ODOH_VERSION + func SealQuery(dnsQuery []byte, publicKey ObliviousDoHConfigContents) (ObliviousDNSMessage, QueryContext, error) + type ObliviousDNSMessage struct + EncryptedMessage []byte + KeyID []byte + MessageType ObliviousMessageType + func CreateObliviousDNSMessage(messageType ObliviousMessageType, keyID []byte, encryptedMessage []byte) *ObliviousDNSMessage + func UnmarshalDNSMessage(data []byte) (ObliviousDNSMessage, error) + func (m ObliviousDNSMessage) Marshal() []byte + func (m ObliviousDNSMessage) Type() ObliviousMessageType + type ObliviousDNSMessageBody struct + DnsMessage []byte + Padding []byte + func UnmarshalMessageBody(data []byte) (ObliviousDNSMessageBody, error) + func (m ObliviousDNSMessageBody) Marshal() []byte + func (m ObliviousDNSMessageBody) Message() []byte + type ObliviousDNSQuery struct + func CreateObliviousDNSQuery(query []byte, paddingBytes uint16) *ObliviousDNSQuery + func UnmarshalQueryBody(data []byte) (*ObliviousDNSQuery, error) + type ObliviousDNSResponse struct + func CreateObliviousDNSResponse(response []byte, paddingBytes uint16) *ObliviousDNSResponse + func UnmarshalResponseBody(data []byte) (*ObliviousDNSResponse, error) + type ObliviousDoHConfig struct + Contents ObliviousDoHConfigContents + Version uint16 + func CreateObliviousDoHConfig(contents ObliviousDoHConfigContents) ObliviousDoHConfig + func UnmarshalObliviousDoHConfig(buffer []byte) (ObliviousDoHConfig, error) + func (c ObliviousDoHConfig) Marshal() []byte + type ObliviousDoHConfigContents struct + AeadID hpke.AEADID + KdfID hpke.KDFID + KemID hpke.KEMID + PublicKeyBytes []byte + func CreateObliviousDoHConfigContents(kemID hpke.KEMID, kdfID hpke.KDFID, aeadID hpke.AEADID, publicKeyBytes []byte) (ObliviousDoHConfigContents, error) + func UnmarshalObliviousDoHConfigContents(buffer []byte) (ObliviousDoHConfigContents, error) + func (k ObliviousDoHConfigContents) CipherSuite() (hpke.CipherSuite, error) + func (k ObliviousDoHConfigContents) KeyID() []byte + func (k ObliviousDoHConfigContents) Marshal() []byte + func (k ObliviousDoHConfigContents) PublicKey() []byte + func (targetKey ObliviousDoHConfigContents) EncryptQuery(query *ObliviousDNSQuery) (ObliviousDNSMessage, QueryContext, error) + type ObliviousDoHConfigs struct + Configs []ObliviousDoHConfig + func CreateObliviousDoHConfigs(configs []ObliviousDoHConfig) ObliviousDoHConfigs + func UnmarshalObliviousDoHConfigs(buffer []byte) (ObliviousDoHConfigs, error) + func (c ObliviousDoHConfigs) Marshal() []byte + type ObliviousDoHKeyPair struct + Config ObliviousDoHConfig + Seed []byte + func CreateDefaultKeyPair() (ObliviousDoHKeyPair, error) + func CreateDefaultKeyPairFromSeed(seed []byte) (ObliviousDoHKeyPair, error) + func CreateKeyPair(kemID hpke.KEMID, kdfID hpke.KDFID, aeadID hpke.AEADID) (ObliviousDoHKeyPair, error) + func CreateKeyPairFromSeed(kemID hpke.KEMID, kdfID hpke.KDFID, aeadID hpke.AEADID, ikm []byte) (ObliviousDoHKeyPair, error) + func (privateKey ObliviousDoHKeyPair) DecryptQuery(message ObliviousDNSMessage) (*ObliviousDNSQuery, ResponseContext, error) + type ObliviousMessageType uint8 + const QueryType + const ResponseType + type QueryContext struct + func (c QueryContext) DecryptResponse(message ObliviousDNSMessage) ([]byte, error) + func (c QueryContext) OpenAnswer(message ObliviousDNSMessage) ([]byte, error) + type ResponseContext struct + func (c ResponseContext) EncryptResponse(response *ObliviousDNSResponse) (ObliviousDNSMessage, error)