►
A
B
A
A
Flow
or,
let's
say
default
default
flow
with,
where
our
default
flow,
when
saving
to
peer
or
generic
flow
errick
flow
outline.
A
When
saving
to
peer
did
for
caching
format,
all
right
so
remember,
why
are
we
doing
all
this?
We
just
want
to
save
we?
Just
all
we
want
to
do
is
save
and
load
data
flows
right
from
disk.
What's
the
side
effect,
if
we
save
them
and
load
in
in
this
format
from
disk
also
becomes
something
that
we
can
pass
around
and
create
some
distributed
execution
with.
So.
A
If,
okay,
so,
if
or
let's
say,
dd
entity.
A
Okay,
so
if
group,
if
organization
create,
add
great
ephemeral
entity
for
this
execution
or
let's
see
if
organization,
okay,
so
basically
entity
for
top
level
system
context,
okay,
so
we
kick
off
top
level
system
context.
Something
starts
so
our
first
call
basically
right
because
remember
this
is
like
a
calling
convention.
So
we
call
in
to
the
open
architecture
we
need
to
know
who
is
running
the
top
level
system
context
right.
So,
in
the
event
that
multiple
parties
are
involved
in
execution
of
the
top
level
system
context.
A
Equally
right,
so,
basically,
everybody
is
equal
in
some
org
and
you're
all
running
this
thing
as
an
org,
so
maybe
you're
doing
like
a
key
signing
ceremony
right.
An
entity
in
ad
hoc
ad
hawk
organization
will
be
formed
if
it's
not
already
being
referenced,
let's
actually
say
so.
This
is.
I
started
with
the
most
complex
case,
okay,
so
so
the
entity
for
that
org
will
be
used.
A
Okay,
so,
basically
you
know
we
may
already
have
an
entity
so
use
existing
so
entity
for
top
level
system
context
use
load
via
overlay,
given
on
call
okay.
So
this
could
be
like
you
know,
dfml.run
the
cli
http
startup.
A
C
A
Load
via
overlay,
given
on
call
okay,
so
okay.
So
what
is
this
saying
so
basically
we're
saying
that
we
need
an
entity,
so
generic
flow
outline
when
saving
we're
saving
to
put
or
generic
flow
outline?
Okay.
So
this
is
gonna,
be
generic
right
and
then
we're
to
tie
this
to
pure
d
ids,
all
right
so.
A
A
In
this
case,
top
level
system
context
means
the
first
call
into
the
open
architecture.
A
Subsequent
fall
calls
once
within
the
callee
that
becomes
the
new
top
level
system
context
in
relation
that
becomes
the
new
top-level
system
context.
The
original
becomes
referred
to
as
the
parent
system
context.
A
A
As
the
system
context,
unless
we
are
talking
about
it
in
the
process
of
or
talking
about
it
in
relation
to
it,.
D
C
A
A
Once
within
the
callee,
the
caller
is
referred
to
as
the
parent
system
context
as
well
as
well.
Okay,
the
parent
system
context,
the
colony-
should
only
be
referred
to
as
the
parent
as
the
system
context.
Unless
we
are
talking
about
it
in
relation
to
the
caller
itself
being
a
subcontext,
it
launches
or
manages
it
if
it
begins
setting
up
a
colleague
via
formula
mantis,
we
will
start
referring
to
it
as
the
as
a
parent
system
context
within
the
context
of
its
relationship
to
its
new
potential
child.
A
Okay
in
the
conte,
it
will
be
apparent
system
context
in
the
prominent
state
of
the
system,
context
which
chooses
to
run
that
suggested
context.
The
running
context
will
be
the
callee.
A
A
Okay,
okay,
so.
A
A
okay
so
yeah,
so
you
can
have
a
context,
can
have
multiple
parents
one.
Only
one
of
them
can
be
a.
A
A
A
A
Okay,
so
entity
for
top
level
system
context
load
via
overlay,
given
on
call
okay
in
the
event
that
multiple
parties
are
involved,
ad
hoc
org
will
be
formed
and
two
before
that
ordinary
flown
we'll
say
you
know,
entity
for
topsail
system
context
is
a
did
key.
A
Okay,
so
we'll
just
create
a
new
did
key.
If
we
don't
have
one
already
so
we're
gonna
do
all
this
in
memory
at
first
and
then
we'll
back
it
to
disk
via
dataflow
or
you
know,
via
you
know,
some
remote
database
or
whatever
we'll
figure
it
out
so
okay
entity
for
top
level
system
context
is
the
id
key
okay.
So.
A
Let's
see
so
in
the
input
network,
basically
we're
going
to
write.
You
know
this
dataflows
class
and
then
we're
going
to
write
input
networks
using
dataflows
class,
which
are
just
operations
which
basically
just
sit
there
and
listen
for
you
know
incoming
dids
and
then,
when
they
get
them,
they'll
add
them
as
inputs.
You
know:
they'll
grab
the
off
chain
data.
However,
they
need
to
grab
the
off
change
data
and
they'll,
convert
them
to
inputs
right
so
yeah.
Maybe
we
could
use.
A
A
A
For
static
data,
primitives,
yeah,
so
and,
and
so
remember,
this
is
the
purely
ids
are
almost
more
of
a
messaging
thing
than
actual.
You
know
like
what
what
you
know,
people
have
been
thinking
of
with
consensus,
maintained,
blockchains
right,
so
this
is
really
just
our
our
cryptographically
linked
list
here.
A
A
B
A
A
C
B
A
We
don't
have
git
on
this
system.
I
clearly
never
set
this
thing
up.
If
we
don't
have
git
on
this.
Oh,
oh
everything
is
gonna,
be
beautiful.
This
is
gonna,
be
so
great.
Oh,
my
god.
This
is
gonna,
be
so
great.
Okay,.
C
A
B
C
A
C
B
A
C
A
A
Pac-Man
key
refresh
keys
or
maybe
no
confirm
sy,
so
you
arch
linux,
key
ring.
B
A
B
C
A
A
A
A
A
Let's
take
a
look
here
just
to
confirm
yeah,
so
d,
id
yeah,
so
pure
zero
means
that
this
is
a
did
key
right.
So
we
could
replace
this
portion
and
then
all
of
a
sudden
we'd
have
a
did
key
okay.
So
we
want
to
figure
out
how
to
use
verification,
material
value,
assigning
keys,
verification,
material,
okay,
verification,
material
authentication,
okay,
agreement.
B
A
A
A
A
A
And
let's
go
where's
alice
secret,
okay
secret
references;
okay!
So,
let's
go
over
to
maybe
let's
see
so
open
ssh.
A
B
A
A
A
Okay,
so
let's
yeah,
let's,
I
wonder,
find
principles
check
no
validate
sign
verify.
I
think
if
we
do
this,
this
is
going
to
allow
us
to
so
so.
Github
exposes
everybody's
public
keys,
which
is
great
they're
public.
So
that
means
we
can
chain
right
off
that
which
is
going
to
be
sweet.
If
we
can
use
these
so.
A
Json
webkey
set
okay
from
pam
json
web
key
export
to
fra
pam
from
pam.
Okay
creates
a
pkcs
11
formatted
data
loaded
from
a
pem
file,
import
from
pam
imports,
key
from
a
data
loader
from
a
pem
file.
Oh
my
god!
This
is
gonna,
be
so
cool.
Okay.
If
we
can
do
this,
it's
gonna
be
awesome.
Okay,
so
let's
do
ssh
keygen
or,
let's
see.
A
A
In
pam
format,
okay,
so
to
do
make
this
an
operation
which
could
be
added
to
flow,
perhaps
generate.
A
B
B
A
A
B
A
A
A
A
Pam
is
a
standard
format
or
wait.
A
minute
creates
a
okay,
a
pemas,
I
would
say
pem
is
a
good
choice
for
a
standard
format
here.
But
let's
this
is
a.
D
A
A
A
Dot
check
call
see
what
happens
it
might
be
choking
on
a
line
waiting
for
a
new
line
yeah
enter
in
or
place
where
you
want
to
save
the
file.
Okay,
yeah
we're
choking
on
that
new
line
yeah
I
wish
we
could
just
set
it
up
to
read.
I
think,
there's
there's
there's
a
way,
I'm
not
sure
what
it
is,
though,
but
there's
a
way.
A
A
Identity
root,
key
okay
enter
passphrase;
okay,
let's
say:
okay,
so.
A
A
Private
key
passphrase.
B
A
All
right-
and
so
you
know
why
we
use
this
well,
okay,
so
somebody
if
somebody
gets
a
hold
of
your
your
private
key,
they
still
have
to
crack
your
password
to
be
able
to
use
it
right
so
and
we'll
make
it
so
that
it
has
to
be
set
so
encrypted
private,
key,
okay,
so
where's
our
data
flow
down
here.
B
A
A
Because
doing
it
like
this
means
that
we
have
technically
done
our
due
diligence
here
right,
we
we,
we
did
what
we
were
supposed
to
do
to
make
this
thing
secure
right.
All
I
have
to
do
is
provide
a
password
right.
The
rest
of
it
you
know
is
is
is
is
up
to
you,
so
we
know
that
we
need
the
key
in
this
format.
We
have
to
have
the
key
in
this
format
right
now,
but
we
can
say
to
do
make
this
configurable
in
the
future.
A
Right
and
then
you
know
this-
maybe
to
do
make
this
confu
configurable
right,
so
we
want
to
make
these.
We
want
to
support
these
things
being
configurable.
You
know,
including
this
path.
A
You
know
really
really
everything
should
be
configurable
right.
That's
our
goal
here.
A
A
A
A
Keygen
provide
pass
key
pass
phrase
command
line.
D
B
A
So
let
us
try
to
use
our
key.
So
what
did
we
have
here?
So,
let's
go
check
out
our
did
com
usage,
and
here
we
are
okay,
so
secret
type,
verification,
material,
verification,
material
agreement,
okay,
so
verification
material.
A
So
let's
go
ahead
and
create
some,
this
verification,
material
or
let's
go
ahead
and
understand
some
I'm
going
to
duplicate
this
tab
and
we're
going
to
go.
Look
for
verification,
verification,
material
agreement.
Actually
we're
going
to
go.
Look
at
this
key
and
where
this
key
is
used
and
then
we're
going
to
see
you
know
where
it's
used
to
create
some
verification,
material
agreements.
A
A
A
A
B
B
B
A
B
A
A
Pid
did
I'll
go
one,
okay,
perfect
all
right,
so
we
got
our
key
right.
So
it
looks
like
it's
generating
our
key.
Let's
see,
what's
the
host
name
parameter.
A
B
A
All
right
so
yeah,
so
we'll
we'll
make
more
configurable
in
the
future
right,
but
right
now
this
is
what
we
got.
Okay,
so.
A
I
like
to
add
things
so
so
we
aren't
ready
to
commit
this
yet
or
maybe
we
are
so
we
can
say
git
commit
generating
fm
morale
key.
A
A
A
Path:
identity,
root;
okay,
I
think
it
helps
to
keep
their
type
name
on
them
somewhere.
I
usually
was
suffixing,
but
I
think
prefix
probably
makes
more
sense
because
it
is
a
path.
First
of
all,
what
type
is
it,
then?
What
the
hell
is
it
right?
And
if
you
do
that,
then
you
can
kind
of
always
maintain
what
the
hell.
What
are
you
working
with
here?
A
Maybe
we
should
switch
to
this
format.
That
would
be
better
yeah
and
you
can
see
what
it
is
right
away.
A
Oh,
look
at
that
so
process
converted
it
right
over
for
us
or
oh,
it
must
be
run
command
or
no
suppressors
did
great
all
right,
so
load
key
to
jwk.
A
Actually
I
think
what
I
was
doing
is
identity
rooty
contents,
oh
yeah,
so,
and
doing
it
this
way,
that's
right!
So
if
you
do
it
this
way,
it
doesn't
really
matter.
You
could
do
it
either
way,
but
doing
it.
A
This
way,
I
think
we're
gonna
be
enable
some
auto
refactoring,
so
we
can
actually,
if
you
name
variables
this
way,
we'll
rename
we'll
we'll
do
some
automated
refactoring
in
the
future
and
grouping
variables
that
came
from
several
similar
places
with
similar
names
we'll
be
able
to
create
data
classes
or
structures
or
whatever
you
know
so
that
you
can
properly
organize
your
data
and
then
and
then
refactor
into
dataflow
architecture
automatically.
A
Okay,
let's
do
yeah
we'll
keep
we'll
keep
the
the
stuff
consistent,
so
we'll
say,
identity
root,
key
path,
and
I
think
the
reasoning
behind
actually
doing
the
type
name
as
the
suffix
now
I'm
realizing
was
the
fact
that
you
know
identity
root.
Key
is
almost
like
a
structure
that
you're
creating
ad
hoc
and
then
dot
path,
dot.
Contents
right,
if
you
look
at
it
that
way
so
read
and
key
generated.
A
Read
in
okay,
read
in
key
contents:
michelle
support
for.
A
A
Dot
import
from
pem
right
so
now
we
do.
What
is
this.
A
A
A
A
A
Cross
rating
coding
and
we'll
say
this
is
byte
encoding
for
string,
passwords
or
passphrase.
A
And
we
should
call
this
passphrase
too,
since
and
then
we'll
default.
This
utf-8.
C
A
A
A
A
C
C
C
A
Okay,
that
should
help
us
figure
it
out
later
that
we're
looking
for
the
string
and
that's
the
passphrase,
and
we
don't
want
to
show
it,
and
we
should
also
add
this
to
the
list
of
things
that
we're
drawing
today.
So
we
know
what
we
found
out
when
we
found
it
out.
A
Some
water,
yeah
I'll
just
be
right
back.
B
A
A
A
A
B
C
A
What
is
it
doing
f
pass
here?
Okay,.
C
A
B
A
C
B
A
But
without
the
ec
public,
okay
so
began
ec
public
key
okay.
So
maybe
oh
I've
run
into
this
before
so
they
are
I've
run
into
this
before
so
they
are
being
stored
in
pem
format,
but
the
header
is
wrong
and
the
library
is
validating
the
header.
So
what
we
need
to
do
is
basically
just
say:
ray
bytes
read
bytes.
B
B
A
A
A
A
C
A
B
C
B
A
C
Okay,
thanks
jacob.
A
So
yeah,
if
we
can
generate
because
this
is
going
to
allow
us
to
sign
in
so
if
we
can
tie
this
together
really
neatly,
then
we
don't
have
to
pass
around
multiple
blobs
of
data
for
the
initial
auth.
D
C
C
B
A
A
B
B
B
B
B
B
A
B
B
A
And
why
are
we
doing
this?
Well
because
we're
going
to
spin
up
a
lot
of
infrastructure.
A
A
B
A
A
Something
something
type
of
check
that
we
use,
but
it's
fuse
required.