Open Source
Kerberos Tooling
|
|
NAMECURVE25519_NWAY - perform n-way curve25519 ECDH SYNOPSISuse CURVE25519_NWAY; use base qw/... CURVE25519_NWAY/; DESCRIPTIONCURVE25519_NWAY expects to be inherited by a class that will use its methods. This class is expected to be a hashref and provide an element ctx which is a Kerberos context. It will set state variables in the hashref of the form CURVE25519_NWAY_*. It also expects that the class that inherits it will be using an OO RPC framework such as Kharon and that the methods curve25519_start() and curve25519_step() are exported by the derived objects. This means that many of the calls to curve25519_start()/curve25519_step() will in fact be network communications rather than be processed locally. This object should also override curve25519_final() to provide a method which takes shared secret which is returned and use it in whatever fashion is desired. This function will look roughy like this: sub curve25519_start { my ($self, $priv, @rest) = @_; my $key = $self->SUPER::curve25519_start($priv, @rest); ... do something with the key return; # do not return the key. } To negotiate a key between N objects, the class method CURVE25519_NWAY::do_nway must be called to get all of the state setup. It must then be followed by $obj->curve25519_final for each object. The results of curve25519_final() must not be transmitted over the wire as it is the shared key. CONSTRUCTORThere are no constructors which are not intended solely for testing. CLASS METHODS
METHODS
|