pkg ibe, func MarshalMasterKey(Master) ([]byte, error)
pkg ibe, func MarshalParams(Params) ([]byte, error)
pkg ibe, func MarshalPrivateKey(PrivateKey) ([]byte, error)
pkg ibe, func SetupBB1() (Master, error)
pkg ibe, func SetupBB2() (Master, error)
pkg ibe, func UnmarshalMasterKey(Params, []byte) (Master, error)
pkg ibe, func UnmarshalParams([]byte) (Params, error)
pkg ibe, func UnmarshalPrivateKey(Params, []byte) (PrivateKey, error)
pkg ibe, type Master interface { Extract, Params }
pkg ibe, type Master interface, Extract(string) (PrivateKey, error)
pkg ibe, type Master interface, Params() Params
pkg ibe, type Params interface { CiphertextOverhead, Encrypt }
pkg ibe, type Params interface, CiphertextOverhead() int
pkg ibe, type Params interface, Encrypt(string, []byte, []byte) error
pkg ibe, type PrivateKey interface { Decrypt, Params }
pkg ibe, type PrivateKey interface, Decrypt([]byte, []byte) error
pkg ibe, type PrivateKey interface, Params() Params
