github.com/jlmucb/cloudproxy@v0.0.0-20170830161738-b5aa0b619bc4/Doc/apps.txt (about)

     1  FileProxy, three programs
     2    KeyNegoServer
     3      server class
     4        accept request for program cert
     5        verify hash
     6        construct cert
     7        sign cert
     8        return
     9    FileServer
    10      Init phase
    11        make public/private key pair
    12        construct certificate request and send it to KeyNegoServer
    13        ask host to sign cert
    14        seal private key
    15        accept signed cert and store it
    16        Optional: negotiate shared key for file encryption?
    17        quit
    18      Operational
    19        Listen for clients
    20        Accept requests
    21        if client is in domain
    22          open secure connection
    23          repeat
    24            read request
    25            is request authorized?
    26              read/write file  (encrypt/decrypt)
    27              update metadata
    28              reply to request (and send data if applicable)
    29    FileClient
    30      Init phase
    31        make public/private key pair
    32        construct certificate request and send it to KeyNegoServer
    33        ask host to sign cert
    34        seal private key
    35        accept signed cert and store it
    36        quit
    37      Operational
    38        open secure connection with server
    39        create a file on server
    40        write to new file on server
    41        read a file from server
    42        
    43  Other scenarios
    44    Reinitialized keys
    45    CRL
    46    archive files
    47  
    48  
    49  BidProxy, three programs
    50    BidClient
    51      make bids
    52    BidServer
    53      collect bids
    54    BidJudge
    55      determine bid winner
    56  
    57        
    58  
    59