Module: Olyx::Guardrails::Pii::SsnValidator

Defined in:
lib/olyx/guardrails/pii/ssn_validator.rb

Overview

Rejects structurally impossible U.S. Social Security numbers.

Constant Summary collapse

INVALID_AREA =
/\A(?:000|666|9\d{2})\z/

Class Method Summary collapse

Class Method Details

.call(ssn) ⇒ Object



12
13
14
15
16
17
# File 'lib/olyx/guardrails/pii/ssn_validator.rb', line 12

def call(ssn)
  area, group, serial = ssn.split(/[- ]/)
  return false unless area && group && serial

  !area.match?(INVALID_AREA) && group != '00' && serial != '0000'
end