Documentation
¶
Index ¶
- Constants
- Variables
- type AVKeyAES128GCM
- type AttestationBody
- type AttestationReference
- type AttestationVerifierBody
- 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 PSKBodyCiphertext
- type RTreePolicy
- type RTreeStatement
- type RevocationOption
- type Sha3_256
- type SignedOuterKey
- type TrustLevel
- type WR1BodyCiphertext
- type WR1DomainVisibilityKey_IBE_BN256
- type WR1EncryptionKey_OAQUE_BN256_s20
- type WR1Envelope
- type WR1PartitionKey_OAQUE_BN256_s20
- type WR1ProverBody
- type WR1VerifierBody
- type WaveAttestation
- type WaveEntity
- type WaveEntitySecret
- type WaveExplicitProof
- 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} 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} VerifierKeyAES128 = 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} 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} )
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 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 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 PSKBodyCiphertext ¶
type PSKBodyCiphertext struct {
AttestationBodyCiphetext []byte
EncryptedUnder EntityPublicKey
}
type RTreePolicy ¶
type RTreePolicy struct {
Namespace asn1.External //EntityHash
Indirections int
Statements []RTreeStatement
}
type RTreeStatement ¶
type RevocationOption ¶
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 WR1EncryptionKey_OAQUE_BN256_s20 ¶
type WR1EncryptionKey_OAQUE_BN256_s20 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 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 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
Click to show internal directories.
Click to hide internal directories.