Classical stream cipher using three Linear Feedback Shift Registers (LFSRs) and a Boolean combining function. Uses correlation between output bits for keystream generation.
| Property | Value |
|---|---|
| Category | Stream Ciphers |
| Sub-category | LFSR Stream Cipher |
| Security status | Not classified |
| Complexity | Not specified |
| Inventor | Harold Geffe |
| Year | 1973 |
| Origin | πΊπΈ United States |
| Source | algorithms/stream/geffe.js |
| Parameter | Supported values |
|---|---|
| Key sizes | 16 bytes (128 bits) |
| Nonce sizes | 8 bytes (64 bits) |
Status: not classified β treat as unverified.
| Issue | Description | Mitigation |
|---|---|---|
| Correlation Attack | The Geffe generator is vulnerable to correlation attacks due to statistical bias in the combining function - educational purposes only | β |
2 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 β Geffe Generator Test Vector 1 (Educational)
Source: Educational implementation test
| Field | Value |
|---|---|
key |
000102030405060708090a0b0c0d0e0f |
iv |
0001020304050607 |
input |
000102030405060708090a0b0c0d0e0f |
expected |
0c0502030405060708090a0b0c0d0e0f |
Vector 2 β Geffe Generator Test Vector 2 (Shorter input)
Source: Educational implementation test
| Field | Value |
|---|---|
key |
000102030405060708090a0b0c0d0e0f |
iv |
0001020304050607 |
input |
00010203040506070809 |
expected |
0c050203040506070809 |