Hawkynt

BCH Code

Bose-Chaudhuri-Hocquenghem cyclic error-correcting codes constructed using polynomials over Galois fields. Can correct multiple random errors with efficient encoding and decoding. Widely used in satellite communications, QR codes, and storage devices.

Properties

Property Value
Category Error Correction
Sub-category Cyclic Code
Security status πŸŽ“ Educational Only
Complexity Advanced
Inventor Raj Chandra Bose, D. K. Ray-Chaudhuri, Alexis Hocquenghem
Year 1960
Origin πŸ‡ΊπŸ‡Έ United States
Source algorithms/ecc/bch-code.js

Security

Status: πŸŽ“ Educational Only

Known vulnerabilities

Issue Description Mitigation
Decoding Complexity Full Berlekamp-Massey or Euclidean algorithm decoding requires complex polynomial operations. β€”
Limited to t Errors Can only correct up to t errors as designed. More errors may cause miscorrection. β€”

Documentation

References

Test vectors

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

Vector 1 β€” BCH(7,4) all zeros

Field Value
input 00000000
expected 00000000000000

Vector 2 β€” BCH(7,4) all ones

Field Value
input 01010101
expected 01010101010101

Vector 3 β€” BCH(7,4) pattern test

Field Value
input 01000100
expected 01000100000101

← All algorithms