Changeset 28 for trunk/standards

Show
Ignore:
Timestamp:
12/19/07 17:19:45 (4 years ago)
Author:
ocmathew
Message:

Convert tabs to spaces

Location:
trunk/standards
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • trunk/standards/messages/DSDB.to.wallet.txt

    r19 r28  
    44 
    55================= 
    6 = LOCK_COINS    = 
    7 = UNLOCK_COINS  = 
     6= LOCK_COINS    = 
     7= UNLOCK_COINS  = 
    88================= 
    99 
     
    1212 
    1313Wallet: 
    14   LOCK_COINS_REQUEST    #key_id_of_DSDB #hex_string(transaction_id) #hex_string(#number_of_obfuscated_blanks) 
    15                                                 #key_identifier1 #encrypted_serial1 
    16                                                 #key_identifier2 #encrypted_serial2 
    17         Prior:  Hello 
    18         Follow: LOCK_COINS_ACCEPT 
    19                         LOCK_COINS_FAILURE 
     14  LOCK_COINS_REQUEST    #key_id_of_DSDB #hex_string(transaction_id) #hex_string(#number_of_obfuscated_blanks) 
     15                        #key_identifier1 #encrypted_serial1 
     16                        #key_identifier2 #encrypted_serial2 
     17    Prior:  Hello 
     18    Follow: LOCK_COINS_ACCEPT 
     19            LOCK_COINS_FAILURE 
    2020 
    2121DSDB: 
    22   LOCK_COINS_ACCEPT             #hex_string(transaction_id) TIME(lock_expires) 
    23         Prior:  LOCK_COINS_REQUEST 
    24         Follow: Goodbye 
     22  LOCK_COINS_ACCEPT     #hex_string(transaction_id) TIME(lock_expires) 
     23    Prior:  LOCK_COINS_REQUEST 
     24    Follow: Goodbye 
    2525 
    26   LOCK_COINS_FAILURE    #hex_string(transaction_id) #hex_string(number_of_failures) 
    27                                                 #key_identifier1 #encrypted_serial1 "Reason 1" 
    28                                                 #key_identifier2 #encrypted_serial2 "Reason 2" 
    29                                                         Reasons: 
    30                                                                 Key ID of DSDB is unknown or expired            Permanant 
    31                                                                 Key ID of blank is unknown or expired           Permanant 
    32                                                                 Decryption of serial failed                                     Permanant 
    33                                                                 Serial already redeemed                                         Permanant 
    34                                                                 Serial locked (not spent)                                       Temporary 
    35         Prior:  LOCK_COINS_REQUEST 
    36         Follow: Goodbye 
     26  LOCK_COINS_FAILURE    #hex_string(transaction_id) #hex_string(number_of_failures) 
     27                        #key_identifier1 #encrypted_serial1 "Reason 1" 
     28                        #key_identifier2 #encrypted_serial2 "Reason 2" 
     29                            Reasons: 
     30                                Key ID of DSDB is unknown or expired        Permanant 
     31                                Key ID of blank is unknown or expired       Permanant 
     32                                Decryption of serial failed                 Permanant 
     33                                Serial already redeemed                     Permanant 
     34                                Serial locked (not spent)                   Temporary 
     35    Prior:  LOCK_COINS_REQUEST 
     36    Follow: Goodbye 
    3737 
    3838 
     
    4242 
    4343Wallet: 
    44   UNLOCK_COINS_REQUEST  #hex_string(transaction_id) 
    45         Prior:  Hello 
    46         Follow: UNLOCK_COINS_PASS 
    47                         UNLOCK_COINS_FAILURE 
     44  UNLOCK_COINS_REQUEST  #hex_string(transaction_id) 
     45    Prior:  Hello 
     46    Follow: UNLOCK_COINS_PASS 
     47            UNLOCK_COINS_FAILURE 
    4848 
    4949DSDB: 
    5050  UNLOCK_COINS_PASS 
    51         Prior:  UNLOCK_COINS_REQUEST 
    52         Follow: Goodbye 
    53          
    54   UNLOCK_COINS_FAILURE  #hex_string(transaction_id) "Reason" 
    55                                                         Reasons: 
    56                                                                 Unknown transaction_id 
    57                                                                 Transaction already completed 
    58                                                                 Lock expired *Not really a failure...* 
    59         Prior:  UNLOCK_COINS_REQUEST 
    60         Follow: Goodbye 
     51    Prior:  UNLOCK_COINS_REQUEST 
     52    Follow: Goodbye 
     53     
     54  UNLOCK_COINS_FAILURE  #hex_string(transaction_id) "Reason" 
     55                            Reasons: 
     56                                Unknown transaction_id 
     57                                Transaction already completed 
     58                                Lock expired *Not really a failure...* 
     59    Prior:  UNLOCK_COINS_REQUEST 
     60    Follow: Goodbye 
  • trunk/standards/messages/IS.to.wallet.txt

    r19 r28  
    44 
    55===================== 
    6 = MINTING_KEY           = 
    7 = MINT                          = 
    8 = FETCH_MINTED          = 
    9 = DSDB_KEY                      = 
    10 = REDEEM_COINS          = 
     6= MINTING_KEY       = 
     7= MINT              = 
     8= FETCH_MINTED      = 
     9= DSDB_KEY          = 
     10= REDEEM_COINS      = 
    1111===================== 
    1212 
     
    1515 
    1616Wallet: 
    17   MINTING_KEY_FETCH_DENOMINATION        #string(denomination) 
    18         Prior:  Hello 
    19         Follow: MINTING_KEY_PASS 
    20                         MINTING_KEY_FAILURE 
    21                          
    22   MINTING_KEY_FETCH_KEYID       #hexstring(key_id) 
    23         Prior:  Hello 
    24         Follow: MINTING_KEY_PASS 
    25                         MINTING_KEY_FAILURE 
     17  MINTING_KEY_FETCH_DENOMINATION    #string(denomination) 
     18    Prior:  Hello 
     19    Follow: MINTING_KEY_PASS 
     20            MINTING_KEY_FAILURE 
     21             
     22  MINTING_KEY_FETCH_KEYID   #hexstring(key_id) 
     23    Prior:  Hello 
     24    Follow: MINTING_KEY_PASS 
     25            MINTING_KEY_FAILURE 
    2626 
    2727IS: 
    28   MINTING_KEY_PASS      keycertificate 
    29         Prior:  MINTING_KEY_FETCH_DENOMINATION 
    30                         MINTING_KEY_FETCH_KEYID 
    31         Follow: Goodbye 
    32                          
    33   MINTING_KEY_FAILURE   "Reason" 
    34                                                 Reasons: 
    35                                                         Unknown denomination 
    36                                                         Unknown key_id 
    37         Prior:  MINTING_KEY_FETCH_DENOMINATION 
    38                         MINTING_KEY_FETCH_KEYID 
    39         Follow: Goodbye 
     28  MINTING_KEY_PASS  keycertificate 
     29    Prior:  MINTING_KEY_FETCH_DENOMINATION 
     30            MINTING_KEY_FETCH_KEYID 
     31    Follow: Goodbye 
     32             
     33  MINTING_KEY_FAILURE   "Reason" 
     34                        Reasons: 
     35                            Unknown denomination 
     36                            Unknown key_id 
     37    Prior:  MINTING_KEY_FETCH_DENOMINATION 
     38            MINTING_KEY_FETCH_KEYID 
     39    Follow: Goodbye 
    4040   
    4141 
     
    4545 
    4646Wallet: 
    47   MINT_REQUEST  #base64(request_id) #hex_string(number_of_blinds)  
    48                                 #key_id(blind1) #base64(blind1) 
    49                                 #key_id(blind2) #base64(blind2) 
    50         Prior:  Hello 
    51         Follow: MINT_REJECT 
    52                         MINT_ACCEPT 
     47  MINT_REQUEST  #base64(request_id) #hex_string(number_of_blinds)  
     48                #key_id(blind1) #base64(blind1) 
     49                #key_id(blind2) #base64(blind2) 
     50    Prior:  Hello 
     51    Follow: MINT_REJECT 
     52            MINT_ACCEPT 
    5353 
    5454IS: 
    55   MINT_REJECT   #hex_string(number_of_rejected_blinds) 
    56                                 #key_id(blind1) "Reason1" 
    57                                 #key_id(blind2) "Reason2" 
    58                                         Reasons: 
    59                                                 Unknown key_id 
    60                                                 Unable to blind 
    61                                                         Question: if the IS doesn't have the minting key, use a similar key to test? 
    62         Prior:  MINT_REQUEST 
    63         Follow: Goodbye 
     55  MINT_REJECT   #hex_string(number_of_rejected_blinds) 
     56                #key_id(blind1) "Reason1" 
     57                #key_id(blind2) "Reason2" 
     58                    Reasons: 
     59                        Unknown key_id 
     60                        Unable to blind 
     61                            Question: if the IS doesn't have the minting key, use a similar key to test? 
     62    Prior:  MINT_REQUEST 
     63    Follow: Goodbye 
    6464 
    65   MINT_ACCEPT   #base64(request_id) 
    66         Prior:  MINT_REQUEST 
    67         Follow: Goodbye 
     65  MINT_ACCEPT   #base64(request_id) 
     66    Prior:  MINT_REQUEST 
     67    Follow: Goodbye 
    6868 
    6969 
     
    7373 
    7474Wallet: 
    75   FETCH_MINTED_REQUEST  #base64(request_id) 
    76         Prior:  Hello 
    77         Follow: FETCH_MINTED_FAILURE 
    78                         FETCH_MINTED_WAIT 
    79                         FETCH_MINTED_ACCEPT 
     75  FETCH_MINTED_REQUEST  #base64(request_id) 
     76    Prior:  Hello 
     77    Follow: FETCH_MINTED_FAILURE 
     78            FETCH_MINTED_WAIT 
     79            FETCH_MINTED_ACCEPT 
    8080 
    8181 
    8282IS: 
    83   FETCH_MINTED_FAILURE  #base64(request_id) "Reason" 
    84                                                         Reasons: 
    85                                                                 Request not credited 
    86                                                                         Note: this message may be a temporary failure (FETCH_MINTED_WAIT) 
    87                                                                 Unknown request_id 
    88                                                                 Unable to blind (note: redundant? maybe not for all signatures) 
    89         Prior:  FETCH_MINTED_REQUEST 
    90         Follow: Goodbye 
    91                                                                  
    92   FETCH_MINTED_WAIT     #base64(request_id) "Reason" 
    93                                                         Reasons: 
    94                                                                 Not yet minted 
    95                                                                 Request not credited 
    96                                                                         Note: this message may be a permanant failure (FETCH_MINTED_FAILURE) 
    97         Prior:  FETCH_MINTED_REQUEST 
    98         Follow: Goodbye 
     83  FETCH_MINTED_FAILURE  #base64(request_id) "Reason" 
     84                            Reasons: 
     85                                Request not credited 
     86                                    Note: this message may be a temporary failure (FETCH_MINTED_WAIT) 
     87                                Unknown request_id 
     88                                Unable to blind (note: redundant? maybe not for all signatures) 
     89    Prior:  FETCH_MINTED_REQUEST 
     90    Follow: Goodbye 
     91                                 
     92  FETCH_MINTED_WAIT #base64(request_id) "Reason" 
     93                            Reasons: 
     94                                Not yet minted 
     95                                Request not credited 
     96                                    Note: this message may be a permanant failure (FETCH_MINTED_FAILURE) 
     97    Prior:  FETCH_MINTED_REQUEST 
     98    Follow: Goodbye 
    9999   
    100   FETCH_MINTED_ACCEPT   #base64(request_id) #hex_string(number_of_blinds) 
    101                                                 #base64(signature_of_blind1) 
    102                                                 #base64(signature_of_blind2) 
    103         Prior:  FETCH_MINTED_REQUEST 
    104         Follow: Goodbye 
     100  FETCH_MINTED_ACCEPT   #base64(request_id) #hex_string(number_of_blinds) 
     101                        #base64(signature_of_blind1) 
     102                        #base64(signature_of_blind2) 
     103    Prior:  FETCH_MINTED_REQUEST 
     104    Follow: Goodbye 
    105105 
    106106 
     
    111111Wallet: 
    112112  DSDB_KEY_REQUEST 
    113         Prior:  Hello 
    114         Follow: DSDB_KEY_PASS 
     113    Prior:  Hello 
     114    Follow: DSDB_KEY_PASS 
    115115 
    116116IS: 
    117   DSDB_KEY_PASS keycertificate 
    118         Prior:  DSDB_KEY_REQUEST 
    119         Follow: Goodbye 
     117  DSDB_KEY_PASS keycertificate 
     118    Prior:  DSDB_KEY_REQUEST 
     119    Follow: Goodbye 
    120120 
    121121 
     
    125125 
    126126Wallet: 
    127   REDEEM_COINS_REQUEST  #hex_string(transaction_id) "#string(target)" #hex_string(number_of_coins) 
    128                                                 #base64(coin1) 
    129                                                 #base64(coin2) 
    130                                                         Targets: 
    131                                                                 Strings which refer to a specific target for the redeeming of the coins. 
    132                                                                 i.e. an account somewhere, a request for more coins, etc. 
    133                                                                 The only required defined target is for another transaction to the mint. 
    134                                                                         MINT_REQUEST=#string(request_id) 
    135         Prior:  Hello 
    136         Follow: REDEEM_COINS_REJECT 
    137                         REDEEM_COINS_ACCEPT 
     127  REDEEM_COINS_REQUEST  #hex_string(transaction_id) "#string(target)" #hex_string(number_of_coins) 
     128                        #base64(coin1) 
     129                        #base64(coin2) 
     130                            Targets: 
     131                                Strings which refer to a specific target for the redeeming of the coins. 
     132                                i.e. an account somewhere, a request for more coins, etc. 
     133                                The only required defined target is for another transaction to the mint. 
     134                                    MINT_REQUEST=#string(request_id) 
     135    Prior:  Hello 
     136    Follow: REDEEM_COINS_REJECT 
     137            REDEEM_COINS_ACCEPT 
    138138IS: 
    139   REDEEM_COINS_REJECT   #hex_string(number_of_coins) 
    140                                                 #base64(coin1) "Reason1" 
    141                                                 #base64(coin2) "Reason2" 
    142                                                         Reasons: 
    143                                                                 Unknown key_id 
    144                                                                 Coin expired 
    145                                                                 Coin already redeemed 
    146                                                                 Invalid coin 
    147                                                                 Unknown target 
    148                                                                         Note: Can be used if Mint requires request_id to already be awaiting minting 
    149         Prior:  REDEEM_COINS_REQUEST 
    150         Follow: Goodbye 
     139  REDEEM_COINS_REJECT   #hex_string(number_of_coins) 
     140                        #base64(coin1) "Reason1" 
     141                        #base64(coin2) "Reason2" 
     142                            Reasons: 
     143                                Unknown key_id 
     144                                Coin expired 
     145                                Coin already redeemed 
     146                                Invalid coin 
     147                                Unknown target 
     148                                    Note: Can be used if Mint requires request_id to already be awaiting minting 
     149    Prior:  REDEEM_COINS_REQUEST 
     150    Follow: Goodbye 
    151151 
    152152  REDEEM_COINS_ACCEPT 
    153         Prior:  REDEEM_COINS_REQUEST 
    154         Follow: Goodbye 
     153    Prior:  REDEEM_COINS_REQUEST 
     154    Follow: Goodbye 
  • trunk/standards/messages/all.txt

    r19 r28  
    22 
    33 
    4 Wallet & Wallet                 Wallet & IS                                             Wallet & DSDB 
    5  
    6 =============                   =====================                   ================= 
    7 = BLANK         =                       = MINTING_KEY           =                       = LOCK_COINS    = 
    8 = COINS         =                       = MINT                          =                       = UNLOCK_COINS  = 
    9 =============                   = FETCH_MINTED          =                       ================= 
    10                                                 = DSDB_KEY                      = 
    11                                                 = REDEEM_COINS          = 
    12                                                 ===================== 
    13                                                  
    14         Prior: All messages between two entities that can occur directly before this one 
    15         Follow: All messages between two entities that can occur directly after this one 
    16          
    17         Hello is the initial handshake between two entities or the state after a Goodbye 
    18         Goodbye is the end of a transaction, although also a Hello for a new transaction 
     4Wallet & Wallet         Wallet & IS                     Wallet & DSDB 
     5 
     6=============           =====================           ================= 
     7= BLANK     =           = MINTING_KEY       =           = LOCK_COINS    = 
     8= COINS     =           = MINT              =           = UNLOCK_COINS  = 
     9=============           = FETCH_MINTED      =           ================= 
     10                        = DSDB_KEY          = 
     11                        = REDEEM_COINS      = 
     12                        ===================== 
     13                         
     14    Prior: All messages between two entities that can occur directly before this one 
     15    Follow: All messages between two entities that can occur directly after this one 
     16     
     17    Hello is the initial handshake between two entities or the state after a Goodbye 
     18    Goodbye is the end of a transaction, although also a Hello for a new transaction 
    1919 
    2020============================================================================ 
     
    2626 
    2727============= 
    28 = BLANK         = 
    29 = COINS         = 
     28= BLANK     = 
     29= COINS     = 
    3030============= 
    3131 
     
    3434 
    3535A: 
    36   BLANK_PRESENT #hex_string(number_of_blanks) 
    37                                 blank1 
    38                                 blank2 
    39                 Prior:  Hello 
    40                 Follow: BLANK_FAILURE 
    41                                 BLANK_REJECT 
    42                                 BLANK_ACCEPT 
     36  BLANK_PRESENT #hex_string(number_of_blanks) 
     37                blank1 
     38                blank2 
     39        Prior:  Hello 
     40        Follow: BLANK_FAILURE 
     41                BLANK_REJECT 
     42                BLANK_ACCEPT 
    4343 
    4444B: 
    45   BLANK_FAILURE #hex_string(number_of_failures) 
    46                                 #base64(encrypted serial of blank1) "Reason1" 
    47                                 #base64(encrypted serial of blank2) "Reason2" 
    48                                         Reasons: 
    49                                                 Malformed blank 
    50                                                 Unknown issuer 
    51                                                         Note: Also used for an untrusted issuer 
    52                 Prior:  BLANK_PRESENT 
    53                 Follow: Goodbye 
    54                                                  
    55   BLANK_FAILURE #hex_string(0) "reason" 
    56                                         Reason: 
    57                                                 Cancelled 
    58                 Prior:  BLANK_PRESENT 
    59                 Follow: Goodbye 
    60                                                  
    61  
    62   BLANK_REJECT  #hex_string(number_of_failures) 
    63                                 #base64(encrypted serial of blank1) "Reason1" 
    64                                 #base64(encrypted serial of blank2) "Reason2" 
    65                                         Reasons: 
    66                                                 DSDB: Key ID of DSDB is unknown or expired              Permanant 
    67                                                 DSDB: Key ID of blank is unknown or expired             Permanant 
    68                                                 DSDB: Decryption of serial failed                               Permanant 
    69                                                 DSDB: Serial already redeemed                                   Permanant 
    70                                                 DSDB: Serial locked (not spent)                                 Temporary 
    71                 Prior:  BLANK_PRESENT 
    72                 Follow: Goodbye 
    73  
    74   BLANK_REJECT  #hex_string(0) "reason" 
    75                                         Reasons: 
    76                                                 Cancelled 
    77                 Prior:  BLANK_PRESENT 
    78                                 BLANK_ACCEPT (Message from self) 
    79                 Follow: Goodbye 
     45  BLANK_FAILURE #hex_string(number_of_failures) 
     46                #base64(encrypted serial of blank1) "Reason1" 
     47                #base64(encrypted serial of blank2) "Reason2" 
     48                    Reasons: 
     49                        Malformed blank 
     50                        Unknown issuer 
     51                            Note: Also used for an untrusted issuer 
     52        Prior:  BLANK_PRESENT 
     53        Follow: Goodbye 
     54                         
     55  BLANK_FAILURE #hex_string(0) "reason" 
     56                    Reason: 
     57                        Cancelled 
     58        Prior:  BLANK_PRESENT 
     59        Follow: Goodbye 
     60                         
     61 
     62  BLANK_REJECT  #hex_string(number_of_failures) 
     63                #base64(encrypted serial of blank1) "Reason1" 
     64                #base64(encrypted serial of blank2) "Reason2" 
     65                    Reasons: 
     66                        DSDB: Key ID of DSDB is unknown or expired      Permanant 
     67                        DSDB: Key ID of blank is unknown or expired     Permanant 
     68                        DSDB: Decryption of serial failed               Permanant 
     69                        DSDB: Serial already redeemed                   Permanant 
     70                        DSDB: Serial locked (not spent)                 Temporary 
     71        Prior:  BLANK_PRESENT 
     72        Follow: Goodbye 
     73 
     74  BLANK_REJECT  #hex_string(0) "reason" 
     75                    Reasons: 
     76                        Cancelled 
     77        Prior:  BLANK_PRESENT 
     78                BLANK_ACCEPT (Message from self) 
     79        Follow: Goodbye 
    8080 
    8181  BLANK_ACCEPT 
    82                 Note:   After ACCEPT, a REJECT #hex_string(0) can be given to abort the transaction 
    83                 Prior:  BLANK_PRESENT 
    84                 Follow: COINS_REDEEM 
    85                                 BLANK_REJECT (Message from self) 
     82        Note:   After ACCEPT, a REJECT #hex_string(0) can be given to abort the transaction 
     83        Prior:  BLANK_PRESENT 
     84        Follow: COINS_REDEEM 
     85                BLANK_REJECT (Message from self) 
    8686 
    8787 
     
    9191 
    9292A: 
    93   COINS_REDEEM  #hex_string(number_of) 
    94                                 #base64(coin1) 
    95                                 #base64(coin2) 
    96                 Prior:  BLANK_ACCEPT 
    97                 Follow: COINS_REJECT 
    98                                 COINS_ACCEPT 
     93  COINS_REDEEM  #hex_string(number_of) 
     94                #base64(coin1) 
     95                #base64(coin2) 
     96        Prior:  BLANK_ACCEPT 
     97        Follow: COINS_REJECT 
     98                COINS_ACCEPT 
    9999 
    100100B: 
    101   COINS_REJECT  #hex_string(number_of) 
    102                                 #base64(coin1) "Reason1" 
    103                                 #base64(coin2) "Reason2" 
    104                                         Reasons: 
    105                                                 Invalid coin 
    106                                                 Unknown coin 
    107                                                         Note: Used when the coin we are given is different than the blank 
    108                 Prior:  COINS_REDEEM 
    109                 Follow: COINS_REDEEM 
    110                                 Goodbye 
    111  
    112   COINS_REJECT  #hex_string(0) "Reason" 
    113                                         Reasons: 
    114                                                 *I can't think of anything valid* 
    115                 Prior:  COINS_REDEEM 
    116                 Follow: COINS_REDEEM 
    117                                 Goodbye 
     101  COINS_REJECT  #hex_string(number_of) 
     102                #base64(coin1) "Reason1" 
     103                #base64(coin2) "Reason2" 
     104                    Reasons: 
     105                        Invalid coin 
     106                        Unknown coin 
     107                            Note: Used when the coin we are given is different than the blank 
     108        Prior:  COINS_REDEEM 
     109        Follow: COINS_REDEEM 
     110                Goodbye 
     111 
     112  COINS_REJECT  #hex_string(0) "Reason" 
     113                    Reasons: 
     114                        *I can't think of anything valid* 
     115        Prior:  COINS_REDEEM 
     116        Follow: COINS_REDEEM 
     117                Goodbye 
    118118 
    119119  COINS_ACCEPT 
    120                 Prior:  COINS_REDEEM 
    121                 Follow: Goodbye 
     120        Prior:  COINS_REDEEM 
     121        Follow: Goodbye 
    122122 
    123123 
     
    130130 
    131131===================== 
    132 = MINTING_KEY           = 
    133 = MINT                          = 
    134 = FETCH_MINTED          = 
    135 = DSDB_KEY                      = 
    136 = REDEEM_COINS          = 
     132= MINTING_KEY       = 
     133= MINT              = 
     134= FETCH_MINTED      = 
     135= DSDB_KEY          = 
     136= REDEEM_COINS      = 
    137137===================== 
    138138 
     
    141141 
    142142Wallet: 
    143   MINTING_KEY_FETCH_DENOMINATION        #string(denomination) 
    144         Prior:  Hello 
    145         Follow: MINTING_KEY_PASS 
    146                         MINTING_KEY_FAILURE 
    147                          
    148   MINTING_KEY_FETCH_KEYID       #hexstring(key_id) 
    149         Prior:  Hello 
    150         Follow: MINTING_KEY_PASS 
    151                         MINTING_KEY_FAILURE 
    152  
    153 IS: 
    154   MINTING_KEY_PASS      keycertificate 
    155         Prior:  MINTING_KEY_FETCH_DENOMINATION 
    156                         MINTING_KEY_FETCH_KEYID 
    157         Follow: Goodbye 
    158                          
    159   MINTING_KEY_FAILURE   "Reason" 
    160                                                 Reasons: 
    161                                                         Unknown denomination 
    162                                                         Unknown key_id 
    163         Prior:  MINTING_KEY_FETCH_DENOMINATION 
    164                         MINTING_KEY_FETCH_KEYID 
    165         Follow: Goodbye 
     143  MINTING_KEY_FETCH_DENOMINATION    #string(denomination) 
     144    Prior:  Hello 
     145    Follow: MINTING_KEY_PASS 
     146            MINTING_KEY_FAILURE 
     147             
     148  MINTING_KEY_FETCH_KEYID   #hexstring(key_id) 
     149    Prior:  Hello 
     150    Follow: MINTING_KEY_PASS 
     151            MINTING_KEY_FAILURE 
     152 
     153IS: 
     154  MINTING_KEY_PASS  keycertificate 
     155    Prior:  MINTING_KEY_FETCH_DENOMINATION 
     156            MINTING_KEY_FETCH_KEYID 
     157    Follow: Goodbye 
     158             
     159  MINTING_KEY_FAILURE   "Reason" 
     160                        Reasons: 
     161                            Unknown denomination 
     162                            Unknown key_id 
     163    Prior:  MINTING_KEY_FETCH_DENOMINATION 
     164            MINTING_KEY_FETCH_KEYID 
     165    Follow: Goodbye 
    166166   
    167167 
     
    171171 
    172172Wallet: 
    173   MINT_REQUEST  #base64(request_id) #hex_string(number_of_blinds)  
    174                                 #key_id(blind1) #base64(blind1) 
    175                                 #key_id(blind2) #base64(blind2) 
    176         Prior:  Hello 
    177         Follow: MINT_REJECT 
    178                         MINT_ACCEPT 
    179  
    180 IS: 
    181   MINT_REJECT   #hex_string(number_of_rejected_blinds) 
    182                                 #key_id(blind1) "Reason1" 
    183                                 #key_id(blind2) "Reason2" 
    184                                         Reasons: 
    185                                                 Unknown key_id 
    186                                                 Unable to blind 
    187                                                         Question: if the IS doesn't have the minting key, use a similar key to test? 
    188         Prior:  MINT_REQUEST 
    189         Follow: Goodbye 
    190  
    191   MINT_ACCEPT   #base64(request_id) 
    192         Prior:  MINT_REQUEST 
    193         Follow: Goodbye 
     173  MINT_REQUEST  #base64(request_id) #hex_string(number_of_blinds)  
     174                #key_id(blind1) #base64(blind1) 
     175                #key_id(blind2) #base64(blind2) 
     176    Prior:  Hello 
     177    Follow: MINT_REJECT 
     178            MINT_ACCEPT 
     179 
     180IS: 
     181  MINT_REJECT   #hex_string(number_of_rejected_blinds) 
     182                #key_id(blind1) "Reason1" 
     183                #key_id(blind2) "Reason2" 
     184                    Reasons: 
     185                        Unknown key_id 
     186                        Unable to blind 
     187                            Question: if the IS doesn't have the minting key, use a similar key to test? 
     188    Prior:  MINT_REQUEST 
     189    Follow: Goodbye 
     190 
     191  MINT_ACCEPT   #base64(request_id) 
     192    Prior:  MINT_REQUEST 
     193    Follow: Goodbye 
    194194 
    195195 
     
    199199 
    200200Wallet: 
    201   FETCH_MINTED_REQUEST  #base64(request_id) 
    202         Prior:  Hello 
    203         Follow: FETCH_MINTED_FAILURE 
    204                         FETCH_MINTED_WAIT 
    205                         FETCH_MINTED_ACCEPT 
    206  
    207  
    208 IS: 
    209   FETCH_MINTED_FAILURE  #base64(request_id) "Reason" 
    210                                                         Reasons: 
    211                                                                 Request not credited 
    212                                                                         Note: this message may be a temporary failure (FETCH_MINTED_WAIT) 
    213                                                                 Unknown request_id 
    214                                                                 Unable to blind (note: redundant? maybe not for all signatures) 
    215         Prior:  FETCH_MINTED_REQUEST 
    216         Follow: Goodbye 
    217                                                                  
    218   FETCH_MINTED_WAIT     #base64(request_id) "Reason" 
    219                                                         Reasons: 
    220                                                                 Not yet minted 
    221                                                                 Request not credited 
    222                                                                         Note: this message may be a permanant failure (FETCH_MINTED_FAILURE) 
    223         Prior:  FETCH_MINTED_REQUEST 
    224         Follow: Goodbye 
     201  FETCH_MINTED_REQUEST  #base64(request_id) 
     202    Prior:  Hello 
     203    Follow: FETCH_MINTED_FAILURE 
     204            FETCH_MINTED_WAIT 
     205            FETCH_MINTED_ACCEPT 
     206 
     207 
     208IS: 
     209  FETCH_MINTED_FAILURE  #base64(request_id) "Reason" 
     210                            Reasons: 
     211                                Request not credited 
     212                                    Note: this message may be a temporary failure (FETCH_MINTED_WAIT) 
     213                                Unknown request_id 
     214                                Unable to blind (note: redundant? maybe not for all signatures) 
     215    Prior:  FETCH_MINTED_REQUEST 
     216    Follow: Goodbye 
     217                                 
     218  FETCH_MINTED_WAIT #base64(request_id) "Reason" 
     219                            Reasons: 
     220                                Not yet minted 
     221                                Request not credited 
     222                                    Note: this message may be a permanant failure (FETCH_MINTED_FAILURE) 
     223    Prior:  FETCH_MINTED_REQUEST 
     224    Follow: Goodbye 
    225225   
    226   FETCH_MINTED_ACCEPT   #base64(request_id) #hex_string(number_of_blinds) 
    227                                                 #base64(signature_of_blind1) 
    228                                                 #base64(signature_of_blind2) 
    229         Prior:  FETCH_MINTED_REQUEST 
    230         Follow: Goodbye 
     226  FETCH_MINTED_ACCEPT   #base64(request_id) #hex_string(number_of_blinds) 
     227                        #base64(signature_of_blind1) 
     228                        #base64(signature_of_blind2) 
     229    Prior:  FETCH_MINTED_REQUEST 
     230    Follow: Goodbye 
    231231 
    232232 
     
    237237Wallet: 
    238238  DSDB_KEY_REQUEST 
    239         Prior:  Hello 
    240         Follow: DSDB_KEY_PASS 
    241  
    242 IS: 
    243   DSDB_KEY_PASS keycertificate 
    244         Prior:  DSDB_KEY_REQUEST 
    245         Follow: Goodbye 
     239    Prior:  Hello 
     240    Follow: DSDB_KEY_PASS 
     241 
     242IS: 
     243  DSDB_KEY_PASS keycertificate 
     244    Prior:  DSDB_KEY_REQUEST 
     245    Follow: Goodbye 
    246246 
    247247 
     
    251251 
    252252Wallet: 
    253   REDEEM_COINS_REQUEST  #hex_string(transaction_id) "#string(target)" #hex_string(number_of_coins) 
    254                                                 #base64(coin1) 
    255                                                 #base64(coin2) 
    256                                                         Targets: 
    257                                                                 Strings which refer to a specific target for the redeeming of the coins. 
    258                                                                 i.e. an account somewhere, a request for more coins, etc. 
    259                                                                 The only required defined target is for another transaction to the mint. 
    260                                                                         MINT_REQUEST=#string(request_id) 
    261         Prior:  Hello 
    262         Follow: REDEEM_COINS_REJECT 
    263                         REDEEM_COINS_ACCEPT 
    264 IS: 
    265   REDEEM_COINS_REJECT   #hex_string(number_of_coins) 
    266                                                 #base64(coin1) "Reason1" 
    267                                                 #base64(coin2) "Reason2" 
    268                                                         Reasons: 
    269                                                                 Unknown key_id 
    270                                                                 Coin expired 
    271                                                                 Coin already redeemed 
    272                                                                 Invalid coin 
    273                                                                 Unknown target 
    274                                                                         Note: Can be used if Mint requires request_id to already be awaiting minting 
    275         Prior:  REDEEM_COINS_REQUEST 
    276         Follow: Goodbye 
     253  REDEEM_COINS_REQUEST  #hex_string(transaction_id) "#string(target)" #hex_string(number_of_coins) 
     254                        #base64(coin1) 
     255                        #base64(coin2) 
     256                            Targets: 
     257                                Strings which refer to a specific target for the redeeming of the coins. 
     258                                i.e. an account somewhere, a request for more coins, etc. 
     259                                The only required defined target is for another transaction to the mint. 
     260                                    MINT_REQUEST=#string(request_id) 
     261    Prior:  Hello 
     262    Follow: REDEEM_COINS_REJECT 
     263            REDEEM_COINS_ACCEPT 
     264IS: 
     265  REDEEM_COINS_REJECT   #hex_string(number_of_coins) 
     266                        #base64(coin1) "Reason1" 
     267                        #base64(coin2) "Reason2" 
     268                            Reasons: 
     269                                Unknown key_id 
     270                                Coin expired 
     271                                Coin already redeemed 
     272                                Invalid coin 
     273                                Unknown target 
     274                                    Note: Can be used if Mint requires request_id to already be awaiting minting 
     275    Prior:  REDEEM_COINS_REQUEST 
     276    Follow: Goodbye 
    277277 
    278278  REDEEM_COINS_ACCEPT 
    279         Prior:  REDEEM_COINS_REQUEST 
    280         Follow: Goodbye 
     279    Prior:  REDEEM_COINS_REQUEST 
     280    Follow: Goodbye 
    281281 
    282282 
     
    289289 
    290290================= 
    291 = LOCK_COINS    = 
    292 = UNLOCK_COINS  = 
     291= LOCK_COINS    = 
     292= UNLOCK_COINS  = 
    293293================= 
    294294 
     
    297297 
    298298Wallet: 
    299   LOCK_COINS_REQUEST    #key_id_of_DSDB #hex_string(transaction_id) #hex_string(#number_of_obfuscated_blanks) 
    300                                                 #key_identifier1 #encrypted_serial1 
    301                                                 #key_identifier2 #encrypted_serial2 
    302         Prior:  Hello 
    303         Follow: LOCK_COINS_ACCEPT 
    304                         LOCK_COINS_FAILURE 
     299  LOCK_COINS_REQUEST    #key_id_of_DSDB #hex_string(transaction_id) #hex_string(#number_of_obfuscated_blanks) 
     300                        #key_identifier1 #encrypted_serial1 
     301                        #key_identifier2 #encrypted_serial2 
     302    Prior:  Hello 
     303    Follow: LOCK_COINS_ACCEPT 
     304            LOCK_COINS_FAILURE 
    305305 
    306306DSDB: 
    307   LOCK_COINS_ACCEPT             #hex_string(transaction_id) TIME(lock_expires) 
    308         Prior:  LOCK_COINS_REQUEST 
    309         Follow: Goodbye 
    310  
    311   LOCK_COINS_FAILURE    #hex_string(transaction_id) #hex_string(number_of_failures) 
    312                                                 #key_identifier1 #encrypted_serial1 "Reason 1" 
    313                                                 #key_identifier2 #encrypted_serial2 "Reason 2" 
    314                                                         Reasons: 
    315                                                                 Key ID of DSDB is unknown or expired            Permanant 
    316                                                                 Key ID of blank is unknown or expired           Permanant 
    317                                                                 Decryption of serial failed                                     Permanant 
    318                                                                 Serial already redeemed                                         Permanant 
    319                                                                 Serial locked (not spent)                                       Temporary 
    320         Prior:  LOCK_COINS_REQUEST 
    321         Follow: Goodbye 
     307  LOCK_COINS_ACCEPT     #hex_string(transaction_id) TIME(lock_expires) 
     308    Prior:  LOCK_COINS_REQUEST 
     309    Follow: Goodbye 
     310 
     311  LOCK_COINS_FAILURE    #hex_string(transaction_id) #hex_string(number_of_failures) 
     312                        #key_identifier1 #encrypted_serial1 "Reason 1" 
     313                        #key_identifier2 #encrypted_serial2 "Reason 2" 
     314                            Reasons: 
     315                                Key ID of DSDB is unknown or expired        Permanant 
     316                                Key ID of blank is unknown or expired       Permanant 
     317                                Decryption of serial failed                 Permanant 
     318                                Serial already redeemed                     Permanant 
     319                                Serial locked (not spent)                   Temporary 
     320    Prior:  LOCK_COINS_REQUEST 
     321    Follow: Goodbye 
    322322 
    323323 
     
    327327 
    328328Wallet: 
    329   UNLOCK_COINS_REQUEST  #hex_string(transaction_id) 
    330         Prior:  Hello 
    331         Follow: UNLOCK_COINS_PASS 
    332                         UNLOCK_COINS_FAILURE 
     329  UNLOCK_COINS_REQUEST  #hex_string(transaction_id) 
     330    Prior:  Hello 
     331    Follow: UNLOCK_COINS_PASS 
     332            UNLOCK_COINS_FAILURE 
    333333 
    334334DSDB: 
    335335  UNLOCK_COINS_PASS 
    336         Prior:  UNLOCK_COINS_REQUEST 
    337         Follow: Goodbye 
    338          
    339   UNLOCK_COINS_FAILURE  #hex_string(transaction_id) "Reason" 
    340                                                         Reasons: 
    341                                                                 Unknown transaction_id 
    342                                                                 Transaction already completed 
    343                                                                 Lock expired *Not really a failure...* 
    344         Prior:  UNLOCK_COINS_REQUEST 
    345         Follow: Goodbye 
    346  
    347  
    348  
    349  
     336    Prior:  UNLOCK_COINS_REQUEST 
     337    Follow: Goodbye 
     338     
     339  UNLOCK_COINS_FAILURE  #hex_string(transaction_id) "Reason" 
     340                            Reasons: 
     341                                Unknown transaction_id 
     342                                Transaction already completed 
     343                                Lock expired *Not really a failure...* 
     344    Prior:  UNLOCK_COINS_REQUEST 
     345    Follow: Goodbye 
     346 
     347 
     348 
     349 
  • trunk/standards/messages/wallet.to.wallet.txt

    r18 r28  
    44 
    55============= 
    6 = BLANK         = 
    7 = COINS         = 
     6= BLANK     = 
     7= COINS     = 
    88============= 
    99 
     
    1212 
    1313A: 
    14   BLANK_PRESENT #hex_string(number_of_blanks) 
    15                                 blank1 
    16                                 blank2 
    17                 Prior:  Hello 
    18                 Follow: BLANK_FAILURE 
    19                                 BLANK_REJECT 
    20                                 BLANK_ACCEPT 
     14  BLANK_PRESENT #hex_string(number_of_blanks) 
     15                blank1 
     16                blank2 
     17        Prior:  Hello 
     18        Follow: BLANK_FAILURE 
     19                BLANK_REJECT 
     20                BLANK_ACCEPT 
    2121 
    2222B: 
    23   BLANK_FAILURE #hex_string(number_of_failures) 
    24                                 #base64(encrypted serial of blank1) "Reason1" 
    25                                 #base64(encrypted serial of blank2) "Reason2" 
    26                                         Reasons: 
    27                                                 Malformed blank 
    28                                                 Unknown issuer 
    29                                                         Note: Also used for an untrusted issuer 
    30                 Prior:  BLANK_PRESENT 
    31                 Follow: Goodbye 
    32                                                  
    33   BLANK_FAILURE #hex_string(0) "reason" 
    34                                         Reason: 
    35                                                 Cancelled 
    36                 Prior:  BLANK_PRESENT 
    37                 Follow: Goodbye 
    38                                                  
     23  BLANK_FAILURE #hex_string(number_of_failures) 
     24                #base64(encrypted serial of blank1) "Reason1" 
     25                #base64(encrypted serial of blank2) "Reason2" 
     26                    Reasons: 
     27                        Malformed blank 
     28                        Unknown issuer 
     29                            Note: Also used for an untrusted issuer 
     30        Prior:  BLANK_PRESENT 
     31        Follow: Goodbye 
     32                         
     33  BLANK_FAILURE #hex_string(0) "reason" 
     34                    Reason: 
     35                        Cancelled 
     36        Prior:  BLANK_PRESENT 
     37        Follow: Goodbye 
     38                         
    3939 
    40   BLANK_REJECT  #hex_string(number_of_failures) 
    41                                 #base64(encrypted serial of blank1) "Reason1" 
    42                                 #base64(encrypted serial of blank2) "Reason2" 
    43                                         Reasons: 
    44                                                 DSDB: Key ID of DSDB is unknown or expired              Permanant 
    45                                                 DSDB: Key ID of blank is unknown or expired             Permanant 
    46                                                 DSDB: Decryption of serial failed                               Permanant 
    47                                                 DSDB: Serial already redeemed                                   Permanant 
    48                                                 DSDB: Serial locked (not spent)                                 Temporary 
    49                 Prior:  BLANK_PRESENT 
    50                 Follow: Goodbye 
     40  BLANK_REJECT  #hex_string(number_of_failures) 
     41                #base64(encrypted serial of blank1) "Reason1" 
     42                #base64(encrypted serial of blank2) "Reason2" 
     43                    Reasons: 
     44                        DSDB: Key ID of DSDB is unknown or expired      Permanant 
     45                        DSDB: Key ID of blank is unknown or expired     Permanant 
     46                        DSDB: Decryption of serial failed               Permanant 
     47                        DSDB: Serial already redeemed                   Permanant 
     48                        DSDB: Serial locked (not spent)                 Temporary 
     49        Prior:  BLANK_PRESENT 
     50        Follow: Goodbye 
    5151 
    52   BLANK_REJECT  #hex_string(0) "reason" 
    53                                         Reasons: 
    54                                                 Cancelled 
    55                 Prior:  BLANK_PRESENT 
    56                                 BLANK_ACCEPT (Message from self) 
    57                 Follow: Goodbye 
     52  BLANK_REJECT  #hex_string(0) "reason" 
     53                    Reasons: 
     54                        Cancelled 
     55        Prior:  BLANK_PRESENT 
     56                BLANK_ACCEPT (Message from self) 
     57        Follow: Goodbye 
    5858 
    5959  BLANK_ACCEPT 
    60                 Note:   After ACCEPT, a REJECT #hex_string(0) can be given to abort the transaction 
    61                 Prior:  BLANK_PRESENT 
    62                 Follow: COINS_REDEEM 
    63                                 BLANK_REJECT (Message from self) 
     60        Note:   After ACCEPT, a REJECT #hex_string(0) can be given to abort the transaction 
     61        Prior:  BLANK_PRESENT 
     62        Follow: COINS_REDEEM 
     63                BLANK_REJECT (Message from self) 
    6464 
    6565 
     
    6969 
    7070A: 
    71   COINS_REDEEM  #hex_string(number_of) 
    72                                 #base64(coin1) 
    73                                 #base64(coin2) 
    74                 Prior:  BLANK_ACCEPT 
    75                 Follow: COINS_REJECT 
    76                                 COINS_ACCEPT 
     71  COINS_REDEEM  #hex_string(number_of) 
     72                #base64(coin1) 
     73                #base64(coin2) 
     74        Prior:  BLANK_ACCEPT 
     75        Follow: COINS_REJECT 
     76                COINS_ACCEPT 
    7777 
    7878B: 
    79   COINS_REJECT  #hex_string(number_of) 
    80                                 #base64(coin1) "Reason1" 
    81                                 #base64(coin2) "Reason2" 
    82                                         Reasons: 
    83                                                 Invalid coin 
    84                                                 Unknown coin 
    85                                                         Note: Used when the coin we are given is different than the blank 
    86                 Prior:  COINS_REDEEM 
    87                 Follow: COINS_REDEEM 
    88                                 Goodbye 
     79  COINS_REJECT  #hex_string(number_of) 
     80                #base64(coin1) "Reason1" 
     81                #base64(coin2) "Reason2" 
     82                    Reasons: 
     83                        Invalid coin 
     84                        Unknown coin 
     85                            Note: Used when the coin we are given is different than the blank 
     86        Prior:  COINS_REDEEM 
     87        Follow: COINS_REDEEM 
     88                Goodbye 
    8989 
    90   COINS_REJECT  #hex_string(0) "Reason" 
    91                                         Reasons: 
    92                                                 *I can't think of anything valid* 
    93                 Prior:  COINS_REDEEM 
    94                 Follow: COINS_REDEEM 
    95                                 Goodbye 
     90  COINS_REJECT  #hex_string(0) "Reason" 
     91                    Reasons: 
     92                        *I can't think of anything valid* 
     93        Prior:  COINS_REDEEM 
     94        Follow: COINS_REDEEM 
     95                Goodbye 
    9696 
    9797  COINS_ACCEPT 
    98                 Prior:  COINS_REDEEM 
    99                 Follow: Goodbye 
     98        Prior:  COINS_REDEEM 
     99        Follow: Goodbye 
  • trunk/standards/protocol-containers.txt

    r19 r28  
    88The format is 
    99Name1 = { 
    10         ContentName1 = Value1 
    11         ContentName2 = Value2 
    12         ContentName3 = Value3 
    13          
    14         ExtraName1 = Value4 
    15         ExtraName2 = Value5 
    16          
    17         RepeatableExtraName1 = Value6 
    18         RepeatableExtraname2 = Value7 
     10    ContentName1 = Value1 
     11    ContentName2 = Value2 
     12    ContentName3 = Value3 
     13     
     14    ExtraName1 = Value4 
     15    ExtraName2 = Value5 
     16     
     17    RepeatableExtraName1 = Value6 
     18    RepeatableExtraname2 = Value7 
    1919} 
    2020 
     
    4646Currency Description Document (CCD) = 
    4747{ 
    48         standard version                        = http://opencoin.org/OpenCoinProtocol/1.0 
    49         currency identifier                     = http://opencent.net/OpenCent 
    50         short currency identifier       = OC  
    51         issuer service location         = opencoin://issuer.opencent.net:8002 
    52         denominations                           = 1, 2, 5, 10, 20, 50, 100, 200, 500, 1000  #list of strings seperated by commas 
    53         issuer cipher suite                     = HASH-ALG, SIGN-ALG, BLINDING-ALG 
    54         issuer public master key        = base64(pM) 
     48    standard version            = http://opencoin.org/OpenCoinProtocol/1.0 
     49    currency identifier         = http://opencent.net/OpenCent 
     50    short currency identifier   = OC  
     51    issuer service location     = opencoin://issuer.opencent.net:8002 
     52    denominations               = 1, 2, 5, 10, 20, 50, 100, 200, 500, 1000  #list of strings seperated by commas 
     53    issuer cipher suite         = HASH-ALG, SIGN-ALG, BLINDING-ALG 
     54    issuer public master key    = base64(pM) 
    5555 
    56         issuer                                          = hash(pM) 
    57         signature                                       = base64(sig(sM,hash(content part))) 
     56    issuer                      = hash(pM) 
     57    signature                   = base64(sig(sM,hash(content part))) 
    5858 
    59         signer                                          = Hash(pM) 
    60         ad_signature                            = base64(sig(sM, hash(content part))) 
     59    signer                      = Hash(pM) 
     60    ad_signature                = base64(sig(sM, hash(content part))) 
    6161} 
    6262 
     
    6464Mint Key = 
    6565{ 
    66         key identifier          = base64(hash(p)) 
    67         currency identifier = http://opencent.net/OpenCent 
    68         denomination            = denomination 
    69         not_before                      = TIME(...) 
    70         key_not_after           = TIME(...) 
    71         coin_not_after          = TIME(...) 
    72         public key                      = base64(p) 
     66    key identifier      = base64(hash(p)) 
     67    currency identifier = http://opencent.net/OpenCent 
     68    denomination        = denomination 
     69    not_before          = TIME(...) 
     70    key_not_after       = TIME(...) 
     71    coin_not_after      = TIME(...) 
     72    public key          = base64(p) 
    7373 
    74         issuer                          = hash(pM) 
    75         signature                       = base64(sig(sM, hash(content part))) 
     74    issuer              = hash(pM) 
     75    signature           = base64(sig(sM, hash(content part))) 
    7676} 
    7777 
     
    7979DSDB Key =  
    8080{ 
    81         key identifier          = base64(hash(p)) 
    82         not_before                      = TIME(...) 
    83         not_after                       = TIME(...) 
    84         public key                      = base64(p) 
     81    key identifier      = base64(hash(p)) 
     82    not_before          = TIME(...) 
     83    not_after           = TIME(...) 
     84    public key          = base64(p) 
    8585 
    86         issuer                          = Hash(pM) 
    87         signature                       = base64(sig(sM, hash(content part))) 
     86    issuer              = Hash(pM) 
     87    signature           = base64(sig(sM, hash(content part))) 
    8888 
    89         signer                          = Hash(pM) 
    90         ad_signature            = base64(sig(sM, hash(content part))) 
     89    signer              = Hash(pM) 
     90    ad_signature        = base64(sig(sM, hash(content part))) 
    9191} 
    9292 
     
    9999Blank =  
    100100{ 
    101         standard identifier             = http://opencoin.org/OpenCoinProtocol/1.0 
    102         currency identifier             = http://opencent.net/OpenCent  
    103         denomination                    = denomination 
    104         key identifier                  = key_id(signing key) 
    105         serial                                  = base64(128bit random number) 
     101    standard identifier     = http://opencoin.org/OpenCoinProtocol/1.0 
     102    currency identifier     = http://opencent.net/OpenCent  
     103    denomination            = denomination 
     104    key identifier          = key_id(signing key) 
     105    serial                  = base64(128bit random number) 
    106106} 
    107107 
     
    109109Coin =  
    110110{ 
    111         standard identifier             = http://opencoin.org/OpenCoinProtocol/1.0 
    112         currency identifier             = http://opencent.net/OpenCent  
    113         denomination                    = denomination 
    114         key identifier                  = key_id(signing key) 
    115         serial                                  = base64(128bit random number) 
    116          
    117         signature                               = base64(encrypt(ALG,priv-key-of-signing-key, content part)) 
     111    standard identifier     = http://opencoin.org/OpenCoinProtocol/1.0 
     112    currency identifier     = http://opencent.net/OpenCent  
     113    denomination            = denomination 
     114    key identifier          = key_id(signing key) 
     115    serial                  = base64(128bit random number) 
     116     
     117    signature               = base64(encrypt(ALG,priv-key-of-signing-key, content part)) 
    118118} 
    119119 
     
    121121Obfuscated Blank = 
    122122{ 
    123         standard identifier             = http://opencoin.org/OpenCoinProtocol/1.0 
    124         currency identifier             = http://opencent.net/OpenCent  
    125         denomination                    = denomination 
    126         key identifier                  = key_id(signing key) 
    127         serial                                  = base64(encrypt(ALG,pub-key-of-DSDB, serial)) 
     123    standard identifier     = http://opencoin.org/OpenCoinProtocol/1.0 
     124    currency identifier     = http://opencent.net/OpenCent  
     125    denomination            = denomination 
     126    key identifier          = key_id(signing key) 
     127    serial                  = base64(encrypt(ALG,pub-key-of-DSDB, serial)) 
    128128} 
  • trunk/standards/protocol.txt

    r19 r28  
    8181 
    8282Wallet: 
    83         MINTING_KEY_FETCH_DENOMINATION(denomination) or MINTING_KEY_FETCH_KEYID(key_id) 
     83    MINTING_KEY_FETCH_DENOMINATION(denomination) or MINTING_KEY_FETCH_KEYID(key_id) 
    8484IS: 
    85         MINTING_KEY_PASS(keycertificate) or MINTING_KEY_FAILURE(reason) 
     85    MINTING_KEY_PASS(keycertificate) or MINTING_KEY_FAILURE(reason) 
    8686 
    8787* Wallet: creates blank according to CDD: 
     
    152152 
    153153    FETCH_MINTED_ACCEPT(request_id, list(signature_of_blind1, ...) ) 
    154          
     154     
    155155  Session terminates 
    156156 
     
    228228        - lock list of encrypted coin serial numbers at IS (DSDB)  
    229229            LOCK_COINS_REQUEST( DSDB_key_key_id, transaction_id, 
    230                                                                 list( (key_identifier1, encrypted_serial1), ... ) ) 
     230                                list( (key_identifier1, encrypted_serial1), ... ) ) 
    231231 
    232232        - IS either accepts with locking time or rejects with list of rejected serials + reason (locked, spent)  
     
    256256 
    257257      Note: After BLANK_ACCEPT, a BLANK_REJECT(emptylist, "Reason) can be given to abort the transaction until 
    258                         COINS_SPEND is sent 
    259                          
     258            COINS_SPEND is sent 
     259             
    260260* Wallet Alice sends coins to Wallet Bob (this time including their clear serial and signature) 
    261261