1*86d7f5d3SJohn Marino 2*86d7f5d3SJohn Marino // Copyright in this code is held by Dr B. R. Gladman but free direct or 3*86d7f5d3SJohn Marino // derivative use is permitted subject to acknowledgement of its origin. 4*86d7f5d3SJohn Marino // Dr B. R. Gladman . 25th January 2000. 5*86d7f5d3SJohn Marino 6*86d7f5d3SJohn Marino typedef struct 7*86d7f5d3SJohn Marino { 8*86d7f5d3SJohn Marino uint32_t l_key[140]; 9*86d7f5d3SJohn Marino } serpent_ctx; 10*86d7f5d3SJohn Marino 11*86d7f5d3SJohn Marino void serpent_set_key(serpent_ctx *ctx, const u_int8_t in_key[], int key_len); 12*86d7f5d3SJohn Marino void serpent_encrypt(serpent_ctx *ctx, const u_int8_t in_blk[], 13*86d7f5d3SJohn Marino u_int8_t out_blk[]); 14*86d7f5d3SJohn Marino void serpent_decrypt(serpent_ctx *ctx, const u_int8_t in_blk[], 15*86d7f5d3SJohn Marino u_int8_t out_blk[]); 16*86d7f5d3SJohn Marino 17