Hawkynt

LUC

LUC public key cryptosystem based on Lucas sequences over finite fields. Encryption is the Lucas function c = V_e(m, 1) mod n and recovery inverts it modulo each prime factor using the Jacobi symbol of the discriminant, then combines by CRT. Historical cryptosystem with no practical advantages over RSA but of pedagogical interest for Lucas function mathematics.

Properties

Property Value
Category Asymmetric Ciphers
Sub-category Lucas-based Cryptosystem
Security status 🎓 Educational Only
Complexity Advanced
Inventor Peter Smith, Michael Lennon
Year 1993
Origin 🇬🇧 United Kingdom
Source algorithms/asymmetric/luc.js

Parameters

Parameter Supported values
Key sizes 1024 bytes (8192 bits); 2048 bytes (16384 bits)

Security

Status: 🎓 Educational Only

No vulnerabilities are recorded for this implementation.

Documentation

References

Test vectors

2 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.

Vector 1 — LUC-1024 round-trip - c = V_e(m, 1) mod n recovered through InverseLucas

Field Value
key 0400
input 74657374
expected 74657374

Vector 2 — LUC-2048 round-trip with leading zero octets

Field Value
key 0800
input 0000000102030405
expected 0000000102030405

← All algorithms