Documentation
¶
Index ¶
- Constants
- Variables
- type AVKeyAES128GCM
- type AttestationBody
- type AttestationReference
- type AttestationVerifierBody
- type BN256OAQUEKeyringBundle
- type BN256OAQUEKeyringBundleEntry
- type CommitmentRevocation
- type Ed25519OuterSignature
- type EntityKeyring
- type EntityKeyringEntry
- type EntityParamsIBE_BN256
- type EntityParamsOQAUE_BN256_s20
- type EntityPublicCurve25519
- type EntityPublicEd25519
- type EntityPublicIBE_BN256
- type EntityPublicKey
- type EntityPublicOAQUE_BN256_s20
- type EntitySecretCurve25519
- type EntitySecretEd25519
- type EntitySecretIBE_BN256
- type EntitySecretMasterIBE_BN256
- type EntitySecretMasterOQAUE_BN256_s20
- type EntitySecretOQAUE_BN256_s20
- type Extension
- type Keccak_256
- type KeyringAESCiphertext
- type LocationEthereum
- type LocationURL
- type MessageKeyCurve25519ECDH
- type MessageKeyWR1
- type MessageKeyWR1Envelope
- type NameDeclarationBody
- type NameDeclarationKeyNone
- type NameDeclarationKeyWR1
- type NameDeclarationWR1Envelope
- type PSKBodyCiphertext
- type PartitionChange
- type RTreePolicy
- type RTreeStatement
- type RevocationOption
- type Sha3_256
- type Signature
- type SignedOuterKey
- type TrustLevel
- type WR1BodyCiphertext
- type WR1DomainVisibilityKey_IBE_BN256
- type WR1Envelope
- type WR1PartitionKey_OAQUE_BN256_s20
- type WR1ProverBody
- type WR1VerifierBody
- type WaveAttestation
- type WaveEncryptedMessage
- type WaveEntity
- type WaveEntitySecret
- type WaveExplicitProof
- type WaveNameDeclaration
- type WaveWireObject
Constants ¶
View Source
const CapAttestation = 2
View Source
const CapAuthentication = 4
View Source
const CapAuthorization = 5
View Source
const CapCertification = 1
View Source
const CapEncryption = 6
View Source
const CapSigning = 3
Variables ¶
View Source
var ( WaveOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157} WaveObjectOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 2} AttestationOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 2, 1} EntityOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 2, 2} ExplicitProofOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 2, 3} EntitySecretOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 2, 4} WaveEncryptedMessageOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 2, 5} WaveNameDeclarationOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 2, 6} AttestationBodySchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 3} UnencryptedBodyOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 3, 1} WR1BodyOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 3, 2} PSKBodySchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 3, 3} AttestationVerifierKeySchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 4} VerifierKeyAES128OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 4, 1} OuterSignatureSchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 5} EphemeralEd25519OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 5, 1} OuterSignatureBindingSchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 6} SignedOuterKeyOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 6, 1} LocationSchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 8} LocationURLOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 8, 1} LocationEthereumOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 8, 2} HashSchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 9} Sha3_256OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 9, 1} Keccak_256OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 9, 2} RevocationSchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 10} CommitmentRevocationOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 10, 1} EntityKeySchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 11} EntityEd25519OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 11, 1} EntityCurve25519OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 11, 2} EntityOAQUE_BN256_S20_AttributeSetOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 11, 3} EntityOAQUE_BN256_S20_ParamsOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 11, 4} EntityIBE_BN256_ParamsOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 11, 5} EntityIBE_BN256_PublicOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 11, 6} PolicySchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 12} TrustLevelPolicyOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 12, 1} ResourceTreePolicyOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 12, 2} PolicyAddendumOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 13} WR1DomainVisibilityKey_IBE_BN256OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 13, 1} WR1PartitionKey_OAQUE_BN256_s20OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 13, 2} //WR1EncryptionKey_OAQUE_BN256_s20OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 13, 3} WR1EncryptionBundle_OAQUE_BN256_s20OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 13, 4} EntitySecretKeySchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 14} EntitySecretEd25519OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 14, 1} EntitySecretCurve25519OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 14, 2} EntitySecretOAQUE_BN256_S20OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 14, 3} EntitySecretOAQUE_BN256_S20_MasterOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 14, 4} EntitySecretIBE_BN256_MasterOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 14, 5} EntitySecretIBE_BN256OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 14, 6} EntityKeyringSchemeOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 15} PlaintextKeyringOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 15, 1} KeyringAES128_GCM_PBKDF2OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 15, 2} E2EEMessageKeySchemesOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 16} MessageKeyCurve25519ECDHOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 16, 1} MessageKeyWR1OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 16, 2} NameDeclarationKeySchemesOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 17} NameDeclarationKeyWR1OID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 17, 1} NameDeclarationKeyNoneOID = asn1.ObjectIdentifier{1, 3, 6, 1, 4, 1, 51157, 17, 2} )
Functions ¶
This section is empty.
Types ¶
type AVKeyAES128GCM ¶
type AVKeyAES128GCM []byte
type AttestationBody ¶
type AttestationBody struct { VerifierBody AttestationVerifierBody ProverPolicyAddendums []asn1.External ProverExtensions []Extension }
type AttestationReference ¶
type AttestationReference struct { Hash asn1.External Content []byte `asn1:"tag:0,optional,explicit"` Locations []asn1.External `asn1:"tag:1,explicit"` Keys []asn1.External `asn1:"tag:2,explicit"` RevocationChecks []asn1.External `asn1:"tag:3,explicit"` Extensions []Extension `asn1:"tag:4,explicit"` }
type AttestationVerifierBody ¶
type AttestationVerifierBody struct { Attester asn1.External //EntityHash AttesterLocation asn1.External //Location //Subject asn1.External //EntityHash Validity struct { NotBefore time.Time `asn1:"utc"` NotAfter time.Time `asn1:"utc"` } Policy asn1.External Extensions []Extension OuterSignatureBinding asn1.External }
type BN256OAQUEKeyringBundle ¶ added in v0.2.0
type BN256OAQUEKeyringBundle struct { Params EntityParamsOQAUE_BN256_s20 Entries []BN256OAQUEKeyringBundleEntry }
type BN256OAQUEKeyringBundleEntry ¶ added in v0.2.0
type BN256OAQUEKeyringBundleEntry struct { PartitionChange []PartitionChange Key EntitySecretOQAUE_BN256_s20 }
type CommitmentRevocation ¶
type Ed25519OuterSignature ¶
type EntityKeyring ¶
type EntityKeyring struct {
Keys []EntityKeyringEntry
}
type EntityKeyringEntry ¶
type EntityKeyringEntry struct { Public EntityPublicKey Private asn1.External }
type EntityParamsIBE_BN256 ¶
type EntityParamsIBE_BN256 []byte
type EntityParamsOQAUE_BN256_s20 ¶
type EntityParamsOQAUE_BN256_s20 []byte
type EntityPublicCurve25519 ¶
type EntityPublicCurve25519 []byte
type EntityPublicEd25519 ¶
type EntityPublicEd25519 []byte
type EntityPublicIBE_BN256 ¶
type EntityPublicIBE_BN256 struct { Params EntityParamsIBE_BN256 ID []byte }
type EntityPublicKey ¶
type EntityPublicOAQUE_BN256_s20 ¶
type EntityPublicOAQUE_BN256_s20 struct { Params EntityParamsOQAUE_BN256_s20 AttributeSet [][]byte }
type EntitySecretCurve25519 ¶
type EntitySecretCurve25519 []byte
type EntitySecretEd25519 ¶
type EntitySecretEd25519 []byte
type EntitySecretIBE_BN256 ¶
type EntitySecretIBE_BN256 []byte
type EntitySecretMasterIBE_BN256 ¶
type EntitySecretMasterIBE_BN256 []byte
type EntitySecretMasterOQAUE_BN256_s20 ¶
type EntitySecretMasterOQAUE_BN256_s20 []byte
type EntitySecretOQAUE_BN256_s20 ¶
type EntitySecretOQAUE_BN256_s20 []byte
type Extension ¶
type Extension struct { ExtensionID asn1.ObjectIdentifier Critical bool Value []byte }
type Keccak_256 ¶
type Keccak_256 []byte
type KeyringAESCiphertext ¶
type LocationEthereum ¶
type LocationURL ¶
type MessageKeyCurve25519ECDH ¶ added in v0.2.0
type MessageKeyCurve25519ECDH struct {
Ciphertext []byte
}
type MessageKeyWR1 ¶ added in v0.2.0
type MessageKeyWR1Envelope ¶ added in v0.2.0
type NameDeclarationBody ¶ added in v0.2.0
type NameDeclarationKeyNone ¶ added in v0.2.0
type NameDeclarationKeyNone struct { }
type NameDeclarationKeyWR1 ¶ added in v0.2.0
type NameDeclarationWR1Envelope ¶ added in v0.2.0
type PSKBodyCiphertext ¶
type PSKBodyCiphertext struct { AttestationBodyCiphetext []byte EncryptedUnder EntityPublicKey }
type PartitionChange ¶ added in v0.2.0
type RTreePolicy ¶
type RTreeStatement ¶
type RevocationOption ¶
type Signature ¶ added in v0.2.1
type Signature struct { Scheme asn1.ObjectIdentifier Signature []byte }
type SignedOuterKey ¶
type SignedOuterKey struct { TBS struct { OuterSignatureScheme asn1.ObjectIdentifier VerifyingKey []byte } Signature []byte }
type TrustLevel ¶
type TrustLevel struct {
Trust int
}
type WR1BodyCiphertext ¶
type WR1DomainVisibilityKey_IBE_BN256 ¶
type WR1DomainVisibilityKey_IBE_BN256 EntityKeyringEntry
type WR1Envelope ¶
type WR1PartitionKey_OAQUE_BN256_s20 ¶
type WR1PartitionKey_OAQUE_BN256_s20 EntityKeyringEntry
type WR1ProverBody ¶
type WR1VerifierBody ¶
type WR1VerifierBody struct {
AttestationVerifierBody AttestationVerifierBody
}
type WaveAttestation ¶
type WaveEncryptedMessage ¶ added in v0.2.0
type WaveEntity ¶
type WaveEntity struct { TBS struct { Raw asn1.RawContent VerifyingKey EntityPublicKey Keys []EntityPublicKey Validity struct { NotBefore time.Time `asn1:"utc"` NotAfter time.Time `asn1:"utc"` } Revocations []RevocationOption Extensions []Extension } Signature []byte }
type WaveEntitySecret ¶
type WaveEntitySecret struct { Entity WaveEntity Keyring asn1.External }
type WaveExplicitProof ¶
type WaveExplicitProof struct { Attestations []AttestationReference Paths [][]int Entities [][]byte Extensions []Extension }
type WaveNameDeclaration ¶ added in v0.2.0
type WaveWireObject ¶
WaveWireObject is used whenever an object is stored externally or transmitted. it wraps the object with the necessary type information to permit decoding without knowing what the object will be
Source Files
¶
Click to show internal directories.
Click to hide internal directories.