/external/chromium_org/third_party/icu/source/common/ |
util.cpp | 151 * reverse direction. In either case, the leftmost index will be
|
/external/freetype/src/autofit/ |
afloader.c | 195 AF_Edge edge1 = axis->edges; /* leftmost edge */
|
/external/icu4c/common/ |
util.cpp | 147 * reverse direction. In either case, the leftmost index will be
|
/external/srtp/doc/ |
draft-irtf-cfrg-icm-00.txt | 157
Crypto Forum Research Group David A. McGrew
Internet Draft Cisco Systems, Inc.
Expires April, 2003 October, 2002
Integer Counter Mode
<draft-irtf-cfrg-icm-00.txt>
Status of this Memo
This document is an Internet Draft and is in full conformance with
all provisions of Section 10 of RFC-2026. Internet Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas,
and working groups. Note that other groups may also distribute
working documents as Internet Drafts.
Internet Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
1. Abstract
This document specifies Integer Counter Mode (ICM), a mode of
operation of a block cipher which defines an indexed keystream
generator (which generates a keystream segment given an index).
This mode is efficient, parallelizable, and has been proven secure
given realistic assumptions about the block cipher. Test vectors
are provided for AES.
Counter Mode admits many variations. The variant specified in
this document is secure and flexible, yet it enables a single
implementation of a keystream generator to suffice in different
application domains.
McGrew [Page 1]
Internet Draft Integer Counter Mode October, 2002
2. Notational Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
this document are to be interpreted as described in RFC-2119 [B97].
3. Introduction
Counter Mode is a way to define a pseudorandom keystream generator
using a block cipher [CTR]. The keystream can be used for additive
encryption, key derivation, or any other application requiring
pseudorandom data.
In ICM, the keystream is logically broken into segments. Each
segment is identified with a segment index, and the segments have
equal lengths. This segmentation makes ICM especially appropriate
for securing packet-based protocols.
4. ICM
In this section, ICM keystream generation and encryption are
defined.
4.1. ICM Parameters
The following parameters are used in ICM. These parameters MUST
remain fixed for any given use of a key.
Parameter Meaning
-----------------------------------------------------------------
BLOCK_LENGTH the number of octets in the cipher block
KEY_LENGTH the number of octets in the cipher key
OFFSET_LENGTH the number of octets in the offset
SEGMENT_INDEX_LENGTH the number of octets in the segment index
BLOCK_INDEX_LENGTH the number of octets in the block index
4.2. Keystream Segments
Conceptually, ICM is a keystream generator that takes a secret key
and a segment index as an input and then outputs a keystream
segment. The segmentation lends itself to packet encryption, as
each keystream segment can be used to encrypt a distinct packet.
A counter is a value containing BLOCK_LENGTH octets which is
McGrew [Page 2]
Internet Draft Integer Counter Mode October, 2002
incremented using an increment function based on integer addition,
to produce a sequence of distinct values which are used as inputs to
the block cipher. (In the context of this specification, an integer
is an octet string, the most significant of which is the first.)
The output blocks of the cipher are concatenated to form the
keystream segment. The first octet of the segment is the first
octet of the first output block, and so on. A schematic of this
process is shown in Figure 1.
Figure 1. The generation of a keystream segment given a segment
index and a block cipher key K. Here C[i] and S[i] denote the ith
counter and keystream block, respectively.
segment
index
|
v
C[0] -----> C[1] -----> C[2] -----> ...
| | |
v v v
+---+ +---+ +---+
K->| E | K->| E | K->| E | ...
+---+ +---+ +---+
| | |
v v v
S[0] S[1] S[2] ...
The ith counter C[i] of the keystream segment with segment index s
is defined as
C[i] = (i + s * (256^BLOCK_INDEX_LENGTH)) (+) r
where r denotes the shifted Offset, which is defined as the Offset
times 256^(BLOCK_LENGTH - OFFSET_LENGTH). (This multiplication
left-shifts the Offset so that it is aligned with the leftmost
edge of the block.) Here ^ denotes exponentiation and (+) denotes
the bitwise exclusive-or op (…)
|
/external/valgrind/main/VEX/priv/ |
host_s390_defs.h | 314 HReg num_bits; /* number of leftmost '0' bits r10 */
|
/frameworks/base/docs/html/tools/help/ |
MonkeyImage.jd | 283 integer, with a as the leftmost 8 bits, r the next rightmost, and so forth.
|
/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.4.3/sysroot/usr/include/ |
form.h | 63 short smin; /* index of top leftmost field on page */
|
/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6/sysroot/usr/include/ |
form.h | 63 short smin; /* index of top leftmost field on page */
|
/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6/sysroot/usr/include/ |
form.h | 63 short smin; /* index of top leftmost field on page */
|
/prebuilts/python/darwin-x86/2.7.5/lib/python2.7/ |
tokenize.py | 78 # Because of leftmost-then-longest match semantics, be sure to put the
|
/prebuilts/python/linux-x86/2.7.5/lib/python2.7/ |
tokenize.py | 78 # Because of leftmost-then-longest match semantics, be sure to put the
|
/external/chromium_org/third_party/WebKit/Source/devtools/front_end/ |
utilities.js | 553 * Return index of the leftmost element that is equal or greater 587 * Return index of the leftmost element that is greater [all...] |
/external/chromium_org/third_party/yasm/source/patched-yasm/modules/arch/x86/ |
x86bc.c | 285 N_("multiple LOCK or REP prefixes, using leftmost")); 325 N_("multiple REX prefixes, using leftmost")); [all...] |
/prebuilts/python/darwin-x86/2.7.5/lib/python2.7/test/ |
test_deque.py | 688 >>> d.popleft() # return and remove the leftmost item 692 >>> d[0] # peek at leftmost item
|
/prebuilts/python/linux-x86/2.7.5/lib/python2.7/test/ |
test_deque.py | 688 >>> d.popleft() # return and remove the leftmost item 692 >>> d[0] # peek at leftmost item
|
/external/chromium_org/chrome/browser/ui/gtk/tabs/ |
tab_strip_gtk.cc | [all...] |
/external/chromium_org/third_party/icu/source/i18n/unicode/ |
smpdtfmt.h | 195 * parse "1234". In other words, the leftmost field of the run is flexible, 197 * then the leftmost field is shortened by one character, and the entire run is 199 * leftmost field is one character in length. If the parse still fails at that [all...] |
/external/chromium_org/v8/src/arm/ |
macro-assembler-arm.h | 305 // Push two registers. Pushes leftmost register first (to highest address). 316 // Push three registers. Pushes leftmost register first (to highest address). 334 // Push four registers. Pushes leftmost register first (to highest address). [all...] |
/external/chromium_org/v8/src/mips/ |
macro-assembler-mips.h | 636 // Push two registers. Pushes leftmost register first (to highest address). 643 // Push three registers. Pushes leftmost register first (to highest address). 651 // Push four registers. Pushes leftmost register first (to highest address). [all...] |
/external/e2fsprogs/ext2ed/doc/ |
ext2fs-overview.sgml | 580 Those are divided into two parts - The rightmost 4 digits and the leftmost 2 628 <Title>The leftmost two octal digits</Title> 631 Note the the leftmost octal digit can only be 0 or 1, since the total number [all...] |
/external/v8/src/arm/ |
macro-assembler-arm.h | 303 // Push two registers. Pushes leftmost register first (to highest address). 314 // Push three registers. Pushes leftmost register first (to highest address). 332 // Push four registers. Pushes leftmost register first (to highest address). [all...] |
/external/v8/src/mips/ |
macro-assembler-mips.h | 624 // Push two registers. Pushes leftmost register first (to highest address). 631 // Push three registers. Pushes leftmost register first (to highest address). 639 // Push four registers. Pushes leftmost register first (to highest address). [all...] |
/libcore/luni/src/main/java/java/text/ |
SimpleDateFormat.java | 111 * parse "1234". In other words, the leftmost field of the run is flexible, 113 * then the leftmost field is shortened by one character, and the entire run is 115 * leftmost field is one character in length. If the parse still fails at that [all...] |
/external/chromium_org/third_party/re2/re2/ |
re2.h | 254 POSIX_SYNTAX, // POSIX syntax, leftmost-longest match 442 // The map records the index of the leftmost group [all...] |
/external/regex-re2/re2/ |
re2.h | 254 POSIX, // POSIX syntax, leftmost-longest match 442 // The map records the index of the leftmost group [all...] |