Documentation
¶
Index ¶
- Constants
- Variables
- func BigInt(s string) (*big.Int, error)
- func CalculateRecordHash(record *eps.SignedChangeRecord) error
- func GetChannelSettingsAndDefinition(settings *eps.Settings, name string) (*eps.ChannelSettings, *eps.ChannelDefinition, error)
- func GetRecordFingerprint(records []*eps.SignedChangeRecord, name, keyUsage string) string
- func InitializeChannels(broker eps.MessageBroker, directory eps.Directory, settings *eps.Settings) ([]eps.Channel, error)
- func InitializeDirectory(settings *eps.Settings) (eps.Directory, error)
- func InitializeMessageBroker(settings *eps.Settings, directory eps.Directory) (eps.MessageBroker, error)
- func IntegrateChangeRecord(record *eps.SignedChangeRecord, entry *eps.DirectoryEntry) error
- func LoadCertificate(path string, verifyUsage bool) (*x509.Certificate, error)
- func LoadCertificateFromString(data string, verifyUsage bool) (*x509.Certificate, error)
- func LoadPrivateKey(path string) (*ecdsa.PrivateKey, error)
- func LoadSignedData(data []byte) (*eps.SignedData, error)
- func RandomBytes(n int) ([]byte, error)
- func RandomID(n int) ([]byte, error)
- func Settings(settingsPaths []string, definitions *eps.Definitions) (*eps.Settings, error)
- func SettingsPaths() []string
- func Sign(data interface{}, key *ecdsa.PrivateKey, cert *x509.Certificate) (*eps.SignedData, error)
- func StructuredHash(source interface{}) ([]byte, error)
- func Verify(signedData *eps.SignedData, rootCerts []*x509.Certificate, ...) (bool, error)
- func VerifyCertificate(cert, rootCert *x509.Certificate, intermediateCerts []*x509.Certificate, ...) error
- func VerifyFingerprint(cert *x509.Certificate, fingerprint string) bool
- func VerifyRecord(record *eps.SignedChangeRecord, verifiedRecords []*eps.SignedChangeRecord, ...) (bool, error)
- func VerifyRecordHash(record *eps.SignedChangeRecord) (bool, error)
- type ByPosition
- type CertificatesList
- type CustomHashValue
- type DataChunk
- type DataEntry
- type DataStore
- type FileDataStore
- type SubjectInfo
- type Tag
Constants ¶
View Source
const BUFFER_SIZE = 255
View Source
const CHUNK_HEADER_SIZE = 8 + CHUNK_ID_LENGTH
View Source
const CHUNK_ID_LENGTH = 16
View Source
const CHUNK_VERSION = 1
View Source
const ENTRY_VERSION = 1
View Source
const (
NullType = 0
)
Variables ¶
View Source
var CertificatesListForm = forms.Form{ Fields: []forms.Field{ { Name: "certificates", Validators: []forms.Validator{ forms.IsOptional{Default: []interface{}{}}, forms.IsList{ Validators: []forms.Validator{ forms.IsStringMap{ Form: &epsForms.OperatorCertificateForm, }, }, }, }, }, }, }
View Source
var EnvSettingsName = "EPS_SETTINGS"
View Source
var NullValue = fmt.Errorf("null")
Functions ¶
func CalculateRecordHash ¶
func CalculateRecordHash(record *eps.SignedChangeRecord) error
func GetChannelSettingsAndDefinition ¶
func GetChannelSettingsAndDefinition(settings *eps.Settings, name string) (*eps.ChannelSettings, *eps.ChannelDefinition, error)
func GetRecordFingerprint ¶
func GetRecordFingerprint(records []*eps.SignedChangeRecord, name, keyUsage string) string
func InitializeChannels ¶
func InitializeMessageBroker ¶
func IntegrateChangeRecord ¶
func IntegrateChangeRecord(record *eps.SignedChangeRecord, entry *eps.DirectoryEntry) error
Integrates a record into the directory
func LoadCertificate ¶
func LoadCertificate(path string, verifyUsage bool) (*x509.Certificate, error)
func LoadCertificateFromString ¶
func LoadCertificateFromString(data string, verifyUsage bool) (*x509.Certificate, error)
func LoadPrivateKey ¶
func LoadPrivateKey(path string) (*ecdsa.PrivateKey, error)
func LoadSignedData ¶
func LoadSignedData(data []byte) (*eps.SignedData, error)
func RandomBytes ¶
func SettingsPaths ¶
func SettingsPaths() []string
func Sign ¶
func Sign(data interface{}, key *ecdsa.PrivateKey, cert *x509.Certificate) (*eps.SignedData, error)
func StructuredHash ¶
Computes a hash of a structured data type that can contain various types like strings or []byte arrays. The hash reflects both the type values and the structure of the source.
func Verify ¶
func Verify(signedData *eps.SignedData, rootCerts []*x509.Certificate, intermediateCerts []*x509.Certificate, name string) (bool, error)
func VerifyCertificate ¶
func VerifyCertificate(cert, rootCert *x509.Certificate, intermediateCerts []*x509.Certificate, name string) error
func VerifyFingerprint ¶
func VerifyFingerprint(cert *x509.Certificate, fingerprint string) bool
func VerifyRecord ¶
func VerifyRecord(record *eps.SignedChangeRecord, verifiedRecords []*eps.SignedChangeRecord, rootCerts []*x509.Certificate, intermediateCerts []*x509.Certificate) (bool, error)
func VerifyRecordHash ¶
func VerifyRecordHash(record *eps.SignedChangeRecord) (bool, error)
Types ¶
type ByPosition ¶
func (ByPosition) Len ¶
func (b ByPosition) Len() int
func (ByPosition) Less ¶
func (b ByPosition) Less(i, j int) bool
func (ByPosition) Swap ¶
func (b ByPosition) Swap(i, j int)
type CertificatesList ¶
type CertificatesList struct {
Certificates []*eps.OperatorCertificate `json:"certificates"`
}
type CustomHashValue ¶
type CustomHashValue interface {
HashValue() interface{}
}
type DataChunk ¶
type DataEntry ¶
func (*DataEntry) Reassemble ¶
type FileDataStore ¶
type FileDataStore struct {
// contains filtered or unexported fields
}
A file-based data store
func MakeFileDataStore ¶
func MakeFileDataStore(filename string) *FileDataStore
func (*FileDataStore) Init ¶
func (f *FileDataStore) Init() error
func (*FileDataStore) Read ¶
func (f *FileDataStore) Read() ([]*DataEntry, error)
func (*FileDataStore) Write ¶
func (f *FileDataStore) Write(entry *DataEntry) error
type SubjectInfo ¶
func GetSubjectInfo ¶
func GetSubjectInfo(cert *x509.Certificate) (*SubjectInfo, error)
Click to show internal directories.
Click to hide internal directories.