KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > schlichtherle > crypto > SeekableBlockCipher


1 /*
2  * SeekableBlockCipher.java
3  *
4  * Created on 4. Oktober 2005, 10:17
5  */

6 /*
7  * Copyright 2005 Schlichtherle IT Services
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  */

21
22 package de.schlichtherle.crypto;
23
24 import org.bouncycastle.crypto.BlockCipher;
25
26 /**
27  * Extends a {@link org.bouncycastle.crypto.BlockCipher} in order to support
28  * random access of blocks in a plain or cipher text.
29  *
30  * @author Christian Schlichtherle
31  */

32 public interface SeekableBlockCipher extends BlockCipher {
33
34     /**
35      * Sets the counter so that the block with the given index, starting
36      * at 0, can be processed next.
37      *
38      * @param block The index of the block, starting at 0, which will be
39      * processed next when
40      * {@link #processBlock(byte[], int, byte[], int)} is called.
41      */

42     void setBlockCounter(long block);
43     
44     /**
45      * Returns the index of the block, starting at 0, which will be processed
46      * next when {@link #processBlock(byte[], int, byte[], int)} is called.
47      */

48     long getBlockCounter();
49 }
50
Popular Tags