iberoot

package
v0.0.0-...-ff5f600 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2016 License: BSD-3-Clause Imports: 4 Imported by: 0

Documentation

Overview

Package iberoot defines an interface for requesting private keys for specific blessings in a blessings-based encryption scheme.

Index

Constants

This section is empty.

Variables

View Source
var RootDesc rpc.InterfaceDesc = descRoot

RootDesc describes the Root interface.

Functions

This section is empty.

Types

type RootClientMethods

type RootClientMethods interface {
	// SeekPrivateKeys creates and returns private keys for blessings
	// presented by the calling principal. The blessings must be from
	// an identity provider recognized by this service.
	//
	// The extracted private keys can be used to decrypt any ciphertext
	// encrypted for a pattern matched by the presented blessings.
	SeekPrivateKeys(*context.T, ...rpc.CallOpt) ([]bcrypter.WirePrivateKey, error)
	// Params returns the public encryption parameters of this service.
	Params(*context.T, ...rpc.CallOpt) (bcrypter.WireParams, error)
}

RootClientMethods is the client interface containing Root methods.

Root is an interface for requesting private keys for blessings.

The keys are extracted in a blessings-based encryption scheme, which in turn is based on an identity-based encryption (IBE) scheme (e.g., the BB1 IBE scheme).

type RootClientStub

type RootClientStub interface {
	RootClientMethods
	rpc.UniversalServiceMethods
}

RootClientStub adds universal methods to RootClientMethods.

func RootClient

func RootClient(name string) RootClientStub

RootClient returns a client stub for Root.

type RootServerMethods

type RootServerMethods interface {
	// SeekPrivateKeys creates and returns private keys for blessings
	// presented by the calling principal. The blessings must be from
	// an identity provider recognized by this service.
	//
	// The extracted private keys can be used to decrypt any ciphertext
	// encrypted for a pattern matched by the presented blessings.
	SeekPrivateKeys(*context.T, rpc.ServerCall) ([]bcrypter.WirePrivateKey, error)
	// Params returns the public encryption parameters of this service.
	Params(*context.T, rpc.ServerCall) (bcrypter.WireParams, error)
}

RootServerMethods is the interface a server writer implements for Root.

Root is an interface for requesting private keys for blessings.

The keys are extracted in a blessings-based encryption scheme, which in turn is based on an identity-based encryption (IBE) scheme (e.g., the BB1 IBE scheme).

type RootServerStub

type RootServerStub interface {
	RootServerStubMethods
	// Describe the Root interfaces.
	Describe__() []rpc.InterfaceDesc
}

RootServerStub adds universal methods to RootServerStubMethods.

func RootServer

func RootServer(impl RootServerMethods) RootServerStub

RootServer returns a server stub for Root. It converts an implementation of RootServerMethods into an object that may be used by rpc.Server.

type RootServerStubMethods

type RootServerStubMethods RootServerMethods

RootServerStubMethods is the server interface containing Root methods, as expected by rpc.Server. There is no difference between this interface and RootServerMethods since there are no streaming methods.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL