Documentation
¶
Overview ¶
Package rtns provides a secure, stand-alone IPNS publishing service that leverages the KaaS encrypted keystore service
Index ¶
Constants ¶
const DefaultRecordLifetime = time.Hour * 24
DefaultRecordLifetime is the default lifetime for IPNS records
Variables ¶
var DefaultRebroadcastInterval = time.Hour * 4
DefaultRebroadcastInterval is the default interval at which we rebroadcast IPNS records
var FailureRetryInterval = time.Minute * 5
FailureRetryInterval is the interval at which we retry IPNS records broadcasts (when they fail)
Functions ¶
This section is empty.
Types ¶
type Cache ¶
type Cache struct {
// contains filtered or unexported fields
}
Cache is used to cache keyIDs we have published
type RKeystore ¶
type RKeystore struct {
// contains filtered or unexported fields
}
RKeystore satisfies the keystore.Keystore interface, providing access to a kaas backend for secure key management
func NewRKeystore ¶
NewRKeystore implements a keystore.Keystore compatible version of the kaas client
func (*RKeystore) Get ¶
Get retrieves a key from the Keystore if it exists, and returns ErrNoSuchKey otherwise.
type Service ¶ added in v0.0.7
type Service interface { // service management Close() DefaultBootstrap() // record publishing Publish(ctx context.Context, pk ci.PrivKey, cache bool, keyID, content string) error PublishWithEOL(ctx context.Context, pk ci.PrivKey, eol time.Time, cache bool, keyID, content string) error // key management GetKey(name string) (ci.PrivKey, error) HasKey(name string) (bool, error) }
Service implements the rtns logic as a consumable service or library.