►
From YouTube: Lit Protocol - Programmatic Signing with Lit Protocol - Debbie Ly - FVM Dataverse Hackathon 2023
Description
Lit Protocol - Programmatic Signing with Lit Protocol presented by Debbie Ly at the FVM Dataverse Hackathon Kickoff 2023.
A
B
Awesome
hi,
I'm,
Debbie
and
I
lead
developer
relations
at
lit
protocol
and
a
bit
of
background
about
me.
B
B
So
if
you
ever
see
anything
in
the
documentation
that
might
need
to
be
corrected,
please
let
me
know
it's
always
a
work
in
progress,
and
so
today,
I'm
going
to
talk
to
you
all
a
little
bit
about
lip
protocol.
B
B
So
split
the
underlying
kind
of
core
thing
that
we
think
about
lit
is
lit,
uses
threshold
cryptography
in
order
to
decentralize
public
key
cryptography,
so
threshold
photography
is
used
to
generate
shares
of
private
public
key
pair
in
a
process
called
distributed
key
generation.
So
this
means
that
a
private
key
never
exists
in
its
entirety
ever
and
it's
distributed
across
the
set
of
nodes.
B
So
each
node
holds
a
private
key
share
which
they
can
use
to
both
sign
and
do
Crypt
data
just
like
a
regular
old
private
key
so
rather
than
when
we're
on
metamask
when
we're
on
even
a
cold
wallet
where
we
have
full
access
to
our
private
key.
Now,
that's
obstructed
away
to
a
full
Network
and
then
from
there
we're
able
to
set
access
on
who
gets
to
sign
with
that
private
key
how
they
can
sign
and
I'll
dive
a
bit
deeply
more
deeply
into
this.
B
B
What
do
you
think
about
a
thought
as
information
so
that
it
can
only
be
accessed
by
authorized
parties,
so
Access
Control
really
tying
into
that
and
then
being
able
to
encrypt
or
decrypt
information
based
on
who
has
access
and
then
on
that
signing
component
signing
is
writing
data
to
blockchains
databases,
storage
networks
and
other
state
machines?
We
can
also
think
of
it
as
when
we're
creating
this
like
digital
signature
or
reverse
signing
for
something
we're
writing
information
or
with
the
intention
to
write
information.
B
On
the
encryption
side
lit
protocol,
we're
able
to
do
on
gate
on
on
chain
conditions
and
credentials
on
things
such
as
a
user.
As
a
member
of
a
dow
user
holds
nft
in
a
collection,
they
hold
x
amount
of
eth,
they
own
a
specific
wallet
address
and
you're
able
to
do
Boolean
operations
on
all
of
those
above
ending
and
oring
any
of
them,
and
we
support
most
evm
chains,
Cosmos,
ecosystem
and
Solana,
so
where
most
of
our
technology
is
built
around
the
ecdsa
curve.
B
B
So
through
our
programmatic
signing
product,
there
are
two
core
components
to
it.
One
is
our
programmable
key
pairs,
which
are
private
public
key
pairs
generated
by
the
lit
Network,
and
you
can
mint
them
in
a
form
of
an
ERC,
721
nft
and
whoever
mints
that
nft
becomes
a
controller
delegator
who
can
sign
with
that
programmable
key
pair.
B
So
when
these
two
components
come
together,
they
have
the
power
to
facilitate
complex
condition
based
automation.
So
what
if
you
could
tell
your
wallet
to
execute
a
trade
when
your
token
fell
below
a
specific
price
or
to
automatically
list
an
nft
when
that
collection
hits
a
certain
floor
price
so
being
able
to
trigger
an
action
using
lit
actions
and
then
use
probable
key
pair
to
do
that
signing
and
for
these
two
components?
B
One
question
we
get
is:
do
we
need
a
pkp
to
run
a
lid
action,
not
necessarily,
but
without
it
the
lit
actions
actually
lose
their
capabilities
of
signing
and
decryption
because
lit
actions
themselves
hold
that
logic
of
let's
say
you
want
to
check
some
on-chain
information
and
off-chain
information,
and
then
the
programmable
key
pair
is
actually
that
signer.
That
would
sign
for
that
information
to
say,
like
okay.
Let's
now
kick
off
I'm
doing
a
swap
of
certain
tokens,
so
together
they're
really
powerful
and
we
really
encourage
people
to
use
them
together.
B
B
So
some
examples
of
how
programmatic
signing
can
be
used
is
within
infrastructure,
where
you
can
build
oracles
for
off-chain
data.
You
could
build
event,
listeners
and
condition
based
execution
again.
That's
like
the
bread
and
butter
of
lit
actions,
programmable
key
pairs,
as
well
as
building
privacy.
Preserving
transactions.
We've
had
a
grant
come
through
where
they
actually
did
private
on-chain
voting
using
programmable
key
Pairs
and
lit
actions
as
well
as
decentralized
key
custodians,
where
the
network
itself
is
a
way
to
kind
of
distribute
like
key
man.
B
Auth
methods
such
as
being
able
to
auth
through
Google,
oauth
or
Gmail
account,
and
having
an
underlying
web3
wallet
with
that
so
being
able
to
onboard
web
2
users
onto
web
3
or
being
able
to
recover
social
recovery,
so
recover
accounts
based
on
different
attributes
outside
of
solely
having
a
wallet
and
then
a
few
others.
These
centralized
chat
Bots
as
well
as
verifiable.
Unchain
reputation,
building.
A
B
Great
so
this
is
kind
of
this
is
the
home
of
where
the
source
of
Truth
or
a
majority
of
information
that
you'll
need
for
a
building
with
lit.
So
on
our
developer
docs.
We
have
an
overview
where
you
can
get
started
quickly
with
different
kinds
of
projects.
We
have
a
lot
of
example
code.
We
also
have
a
lot
of
examples
about
Core
Concepts.
B
So
with
that
reading
aspect,
the
encryption,
Access
Control,
there's
a
whole
section,
just
dedicated
to
being
able
to
set
Access
Control
being
able
to
set
different
kinds
of
conditions
there,
as
well
as
going
down.
We
have
our
programmable
key
pair
Concepts
as
well
as
lit
actions
and
how
they
work
together
and
then
again
what
I
mentioned
before
is
the
main
way
to
interface
with
latest
actually
through
our
SDK.
B
So
our
types
of
typescript
SDK
is
the
main
way
that
you'll
be
plugging
in
and
calling
the
different
lit
functions,
and
all
of
our
examples
should
be
up
to
date.
So
please,
let
me
know
if
folks
run
into
any
issues
and
then
I'm
going
to
dive
back
into
a
little
bit
more
about
programmable
key
Pairs
and
a
bit
more
about
how
you'll
Mint
one
and
then
actually
use
it
within
an
application.
B
B
Okay,
actually,
I
skipped
a
step:
okay,
I'm,
not
a
robot
and
I'm
gonna
put
in
my
wallet
address
in
here
to
get
some
tokens:
okay,
so
transaction
hash.
Okay,
so
let
me
switch
to
Chronicle,
which
is
the
lit
Network,
and
this
wallet
actually
already
has
a
few
like
test
tokens
in
it
and
eventually,
if
you're
going
through
this
flow,
you'll
also
get
your
test
tokens
and
then
we're
gonna
go
on
to
actually
the
pkp
Explorer
page,
where.
B
B
Okay,
great
so
I've
minted
a
programmable
key
pair
and
then,
let's
actually
view
the
variable
pkp
addresses,
because
actually
what
we
see
up
here
that
pkp
public
Key
address.
That's
actually
what
we're
going
to
use
in
our
application.
So
we're
going
to
use
that
public
key
to
do
the
signing
and
we're
going
to
put
that
into
different
applications
and
I'll
show
you
in
a
second
some
example
code
and
where
a
pkp
would
fit
in.
B
Itially
so
the
first
example
I'm
going
to
show
you
first
I'm,
going
to
show
you
the
UI
before
going
into
the
replit,
we're
going
to
create
a
conditionally
signed
response
using
lit
actions,
and
so
this
is
going
to
use
a
lit
action
to
check
if
the
ethereum,
the
East
balance
in
your
account
is
greater
than
the
Min
balance
that
you
set
and
then
sign
it
with
that
pkp.
B
I'm
going
to
start
with
actually
that
Lit
action
code,
which
should
be
relatively
straightforward,
where
we're
actually
going
to
create
kind
of
this
stub
that
says
to
call
lit
actions
and
like
check-in
conditions,
so
conditions
that
will
be
passed
in
would
be
the
balance
of
what
we've
set
in
saying.
Okay,
this
is
the
Min
balance,
as
well
as
checking
the
wallet
that
will
need
to
be
checked,
so
the
balance
of
that
wallet
as
well
as
off
Sig
and
the
chain
that
it's
on.
B
And
what
data
that's
going
to
be
said
is
actually
just
the
Min
balance
and
that
name
that
we
put
in
and
to
actually
call
the
lit
function.
What
we
need
to
do
is
call
it
actions.sign,
ecdsa,
which
essentially
calls
the
lit
nodes
to
sign,
with
to
sign
that
information
variable
that
we
set
before,
as
well
as
using
that
public
key
of
the
pkp
and
just
creating
a
signature
name
which
will
show
up
with
that
signing.
B
So
right
here
is
kind
of
some
basic
setup
around
setting
the
auth
Sig,
as
well
as
instantiating,
that
Lit
node
client,
which
is
how
you'll
work
with
the
calling
the
lit
nodes
and
then
executejs
is
a
really
important
function
within
using
lit
actions
that
that's
how
you'll
interface
with
the
nodes
themselves
in
here
there's
some
parameters
like
code,
which
is
where
we're
passing
that
Lit
action
code,
which
is
what
we
had
earlier
and
then
in
Austin,
and
then
the
JS
params,
which
include
this
condition.
B
So
this
condition
format
is
actually
taken
from
our
Access
Control
format,
and
even
in
that
previous
Workshop
I
noticed
like
using
access
control
conditions
are
really
similar
across
different
platforms.
So
if
you
were
watching
the
previous
Workshop,
this
looks
incredibly
similar
to
that
as
well.
In
here,
what
we're
doing
is
actually
setting
the
condition
of
checking
a
wallet
that
someone's
passed
in
so
getting
the
ethereum
balance
and
then
we're
going
to
do
actually
a
return
value
test,
so
that
return
value
test
is
where
we're
actually
doing.
That
comparator
saying
now.
B
Compare
this
against
this
Min
balance
that
we
have
set.
B
B
B
A
B
Okay,
this
this
may
not
run
in
the
time
we
have,
but
I
promise
you
this
demo,
Works
and
I
think
one
of
the
ways
I
think
in
the
future
we
can
avoid.
This
is
if
I
recorded
a
video
and
just
played
you,
the
video
of
it
working.
A
B
A
Of
the
things
you
have,
especially
with
anything
blockchain
related,
we
were
talking
on
the
last
on
the
last
call
about
you
know
you,
you
hit
hit
the
button
and
you
wait
and
see
and
wait
for
the
blockchain
to
tick
away
and
get
the
result
back,
and
sometimes
these
things
can
take
a
while.
So.
B
Yeah,
so
okay,
I'm
gonna,
go
back
to
the
presentation,
then
and
then
go
through
a
few
more
examples.
B
So
we're
we
saw
the
conditionally
signed
in
the
kind
of
an
arbitrary
program
using
lit
actions
and
then
additionally,
another
example
that
I
just
want
to
show
you
all
really
quickly
is
actually
using
Google
oauth
to
minta
pkp
and
then
sign
using
that
pkp
so
being
able
to
just
log
in
with
a
Google
account
and
then
actually
sign
a
transaction
all
through
Google
account.
B
We
have
some
relay
servers,
set
up
to
take
care
of
the
costs
associated
with
the
transaction
and
so
being
able
to
abstract
away
a
lot
of
web3
topics
that
might
be
really
confusing
to
someone
who's
newer
and
being
able
just
to
onboard
someone
very
quickly.
A
Of
what
well
abstraction,
maybe
you're
going
to
cover
this
now,
but
in
terms
of
providing
effectively
gasless
transactions
to
people
using
lit,
and
is
that
a
service
provided
by
lit
that
for
doing
that?
Okay,
cool.
B
Yeah
so
awesome
question
we
actually
so
we
subsidized
that
relay
server,
and
one
thing
that
we
ask
of
folks
is
to
ask
us
for
a
key
for
that.
So
and
so
we'll
subsidize.
If
folks
want
to
be
generating
promo
key
Pairs
and
onboarding
people,
we'll
yeah
we'll
be
doing
that
for
like
the
coming
future
until
at
some
point,
I
think.
If
we're
seeing
like
thousands
to
like
hundreds
of
thousands
of
requests,
we
might
be
like
okay
now
it's
time
for
a
different
model,
but
for
now
we're
happy
to
subsidize
that
relay
server.
B
So
here
is
actually
a
pretty
in-depth
article,
which
you
can
also
check
out
the
resources,
on
the
left
hand,
side
of
creating
a
pkp
through
Google
oauth.
B
What
the
purposes
of
a
is
of
the
relay,
which
is
being
able
to
do
those
gasless
subsidizes
gasless
transactions,
as
well
as
just
signing
in
with
Google
and
authenticating
it,
which
is
all
related
to
actually.
How
do
we
set
different
auth
providers
through
programmable
key
Pairs,
and
so
like
one
auth
provider
here
is
Google
oauth
and
then
another
one
that
we've
been
working
on
is
like
Discord
or
you
could
set
another
wallet
too.
B
B
So
and
then
this
one
we
do
have
a
video
for
folks
to
also
watch
on
their
own
time
to
watch
the
full
demo
and
then,
if
you
want
to
request
access
to
that
relay
server
reach
out
to
us
about
that,
I
think.
We
also
have
all
this
code
open
source
and
we
have
links
all
throughout
here
for
people
to
check
out
the
GitHub.
B
Okay
and
then,
let's
see
and
then
going
to
our
next
part
of
this,
is
how
can
lit
work
with
fvm.
So
the
point
of
this
hackathon
being
able
to
work
in
dataverse.
So
one
example
that
I've
been
thinking
a
lot
about
is
actually
with
data
Dows.
So
I
have
fbm
example,
repo
for
data
dial
example,
code
of
how
someone
might
be
able
to
spin
up
one
pretty
easily,
and
then
this
idea,
when
I
was
talking
to
some
friends
about
what
they
were
excited
about
about.
B
Building
with
fvm
I'll
quote
one
of
my
friends
here:
I
really
wanted
data
down
where
down
members
can
create
a
lit
key
pair
to
manage
manage
shared
data,
it's
sort
of
a
two
levels
of
Access
Control,
where
let's
keep
pair
level
control
and
the
fvm's
data
access
control
that
provide
a
lot
of
interesting
flexibility
and
potential.
B
So
in
this
way,
which
I'll
leave
up
as
an
assignment
to
folks
through
the
hackathon
being
able
to
do
both
together
so
creating
a
data
Dao
and
then
potentially
setting
up
pkp
as
an
admin
nft
which
allowing
group
Access
Control
through
a
pkp
or
even
allowing
different
nuances
of
how
someone
might
be
able
to
access
it
so
through
a
lit
action
being
like
okay,
if
the
like
another
arbitrary
example
is
like,
if
the
weather
is
greater
than
75
degrees,
Fahrenheit,
and
this
thing
then
allow
signing
through
a
pkp,
and
so
it
can
be
like
I,
don't
know,
hackathons
I
for
me,
I'm,
like
the
really
fun
explorations
of
how
much
we
can
push
the
boundaries
of
technology.
A
B
A
Is
cool,
get
some
fun
fun
stuff,
combining
it
all
together
and
the
hackathon
is
the
perfect
place
to
do
it
right
because
that's
the
whole
point
of
a
hackathon
is
to
is
to
learn
to
play
with
these
protocols
to
kind
of
push
like
you
said,
just
kind
of
push
the
boundaries.
A
B
Yeah,
absolutely
like
I,
think
of
like
a
lot
of
these
different
experiments
and
being
able
to
have
these
short
experiments
and
being
able
to
learn
also
within
a
context
where,
for
this
hackathon
like
I'll,
be
the
main
point
and
Main
resource
for
lit
so
just
being
able
to
also
have
access
to
all
these
different,
really
awesome
companies
and
being
able
to
have
this
direct
line
of
hey
I'm
thinking
of
building
in
this
way
or
I
really
want
to
learn.
This
thing,
like
I,
can
speak
for
myself
and
for
a
lot
of
the
Deborah
folks.
A
Yeah
exactly
and
access
control,
I
I
mentioned
access
control
is
one
of
the
things
that
people
ask
a
lot
about
with
filecoin
right
and
filecoin
in
and
of
itself
doesn't
provide
access,
control
or
encryption.
You
know
that's
left
up
to
people
to
use
other
protocols,
and
you
know
examples
like
lit
and
Lighthouse
kind
of
show
how
you
can
do
that.
So
that's
yeah,
that's
really
cool
yeah.
B
And
going
into
just
wrapping
up
this
presentation
so
lit
we're
doing
best
use
case
of
lit
actions
and
pkps,
so
that'll
be
2.5,
k,
usdc
and
we're
really
looking
for
someone
to
utilize
lit
actions
in
pkp,
so
that
programmatic
signing
component
building
that
in
with
fvm
and
really
thinking
about
also
UI
ux
and
I
personally,
really
love
tests,
demos,
documentation
so
really
also
leaning
into
that
too
of
how
does
someone
communicate
their
idea
and
be
able
to
like
share
that
with
the
world?
A
It's
not
like,
as
I
said
earlier.
Please
please
make
sure
you
document
how
you
use
these
Technologies
in
these
hackathons,
because
you
don't
want
to
anger.
Dawn,
who
is
one
of
our
judges,
who
especially
will
will
will
be
on
your
case
right
so
yeah
it
you
know,
make
make
our
jobs
as
as
judges
as
easy
as
you
can.
You
know
point
out
where
you're
using
the
the
technology
and
how
you
use
it
so
that
we
don't
have
to
go
searching
for
it,
because
otherwise
you
know
there's
a
chance.
A
B
Yeah-
and
that
is
the
end
of
my
presentation
and
thank
you
so
much.
A
Thank
you
thanks
ever
so
much
thanks
for
that
and
to
everybody.
Thank
you.
We've
had
a
great
series
of
workshops
today
and
we
will
be
back
again
tomorrow
with
a
series
we
have
matricesh
from
svaron.
We
have
Dan
from
tableland
and
we
have
Sid
from
polybase.
So
we
have
three
more
workshops
tomorrow
from
some
of
the
sponsors
of
the
hackathon,
so
yeah
come
on
over
and
join
in
and.
B
A
Thanks
a
lot
Debbie
and
thanks
a
lot
to
everybody
in
that
came
and
joined,
and
we
look
forward
to
seeing
what
you're
building
okay.
Thank
you
very
much.
So,
thanks
to
everybody
from
from
Far
Corner
protocol
Labs
that
have
been
in
the
chat
that
have
helped
out
as
well,
so
dong
and
Colleen
have
been
in
there
and
Nikki
as
well
have
been
helping
out
a
lot.
So
thanks
thanks
to
everybody
and
we'll
see
you
tomorrow,
thanks
a
lot
foreign.