?????????????????
????????????????в???????????????????????????????????
?????????????????????????????????й?????????????????
???????????????????????????????????????????
??????????????????У?????????????????????????????????????????洢??Web???????У?????????????????κη??????????Щ?????????κι???????????????????????????Web?????????????????????????????????????????????SSN??????????????????????????????????й????????????????????????????п????SELECT?????
??????????????????????????洢????????е??????????????/?????????????ó??????????????????????????????????????????Щ?????У?????????????????????????????????????????????????????HMAC?????б???Argon2?????и??????????????????????????????SSN???????????????????????????????
???????????????????????????????????и??????????????????滻??????У??????????????ó?????????????????????????????????????????hash_hmac('sha256'?? $rowID?? $masterKey?? true)????????????????Ч?????????????????????????????????AEAD?????????????????????????????????????????????????????С???????????????????????????????????????????????????
?????????????????й???????????????????ó??????в?????y??????????????????????????????????м???????HMAC??????????????????????????????????????????????????????????????ó?????????
??????????????????????????????????????????????????????????????????????????????????????????????У??????????????????????????????????и?????????????????????????????????????????????????????????У??????????????????
???????????????????HMAC / Argon2??????????????????????????????д洢??????????????????????????????????????????????????????????????????????
??????????????????????
??????????????????????????????????????????????????????
????????????????????????????????????????????????????????
????????Σ???????????????б???????У?????????????????洢????????С?
CREATE TABLE humans (
humanid BIGSERIAL PRIMARY KEY??
first_name TEXT?? /* encrypted */
last_name TEXT?? /* encrypted */
ssn TEXT?? /* encrypted */
);
CREATE TABLE humans_filters (
filterid BIGSERIAL PRIMARY KEY??
humanid BIGINT REFERENCES humans (humanid)??
filter_label TEXT??
filter_value TEXT
);
/* Creates an index on the pair. If your SQL expert overrules this?? feel free to omit it. */
CREATE INDEX ON humans_filters (filter_label?? filter_value);
????????仯???????淶??????????????????????????е????е??????????????????
??????????????????????????????????????????????????????????д洢??????????????????????????磺
????????????????????Сд??????
?????洢??????preg_replace('/[^a-z]/'?? ''?? strtolower($value))??
????????????????????????????
?????洢??????strtolower(mb_substr($lastName?? 0?? 1?? $locale))??
??????????“??????????????????????”??
?????洢??????strtolower($string[0] . $string[-1])??
????????????????????????????????????????????????
???????????????????????????????????????
???????????????????????????????????????????????????????????????????й????????????????????????????????????????????????????????????????????ó?????Щ?????????
?????????洢?????
??????????????????????????????????????????SELECT???????С??????????????????????????????????????????????????????
???????????Щ????£??????ζ???????????????????????е?????????????????
????????????????????????????????16??32??64λ??????????? Bloom????????
?????????????漰??????????????????????????????????????
??????????ó????????????????????н????????????????
?????????????漰????????????в??????????????
???????????????????????????Ч??洢????????????Щ??????????????????