Sealstack modeling

Syntax and notiation for sealing/unsealing

NB: We always assume that sealing and unsealing have access to a random oracle

Hsalt where
salt=(sid||digD)
where
sid
is some session id and
digD
is a digest of the data
D
(for example the root of the Merkle Tree computed on the data
D
). We keep these parameters implicit when obvious from the context.

  • Seal(D)โ†’R
    : sealing data
    D
    computes a replica
    R
  • Unseal(R)โ†’D
    : unsealing a replica
    R
    allows to recompute the data

We define

Tseal as the (parallel) time required to run seal.
We consider the setting of asymmetric constructions where the time to seal and unseal may be different. We describe the ratio between sealing and unsealing time through a constant
kโˆˆN
so that the time to unseal is
Tsealk
.

We also consider the time

Tchal "allowed for responding to a challenge". This time is always such that
Tseal>Tchal
. Later in this note we will consider the ratio
Tseal/Tchal
.

A sealstacking adversary

Here we model an adversary running a single stack (we could model a bundle of stacks as a generalization later).

The adversary:

  • Claims to store some easy dummy data
    D1
  • Sets
    R1โ†Seal(D1)
  • Claims to store
    D2:=R1
  • Sets
    R2โ†Seal(D2)
  • โ€ฆ
  • Claims to store
    Dn:=Rn
  • Sets
    Rnโ†Seal(Dn)
  • Deletes all data except for
    Rn

When challenged on data instance

jโˆˆ[n]:

  • runs
    Unseal(Unseal(...(Unseal(Rn))...))
  • (this is unsealing run
    nโˆ’j
    times)

Space complexity of this adversary

It stores only

1|R| as opposed to
n|R|
, the storage of the honest adversary.

Time complexity of this adversary

It is

Tโ€ฒ=(nโˆ’1)Tunseal=(nโˆ’1)kTseal. (in the worst case)

Notice that the the adversary is successful if it is able to answer in time

Tโ€ฒ<Tchal, that is if
nโˆ’1kTseal<Tchal
.
This occurs when
TsealTchal<knโˆ’1

As an intuition, if sealing time is 3x the challenge time,. then the adversary can successfully respond to challenges for a stack of size up to

nโ‰ˆk/3.