Encryption
Kung saan ginagamit ang encryption, at kung saan hindi pa.
Pinoprotektahan ng encryption ang isang verification sa ilang magkakahiwalay na punto: ang koneksyon, ang larawan, ang secret, ang backup, ang password. Mas gusto naming ilista nang tapat ang bawat isa kaysa sabihing "encrypted" nang minsan lang at hayaan kayong ipagpalagay na sakop nito ang lahat.
Habang ipinapadala (in transit)
TLS sa edge, at ipinapatupad sa ledger database.
Naka-encrypt ang bawat request sa ShieldID bago ito makarating sa application.
- Tinatapos ng pampublikong edge ang TLS para sa bawat koneksyon, kasama ang HSTS at isang mahigpit na hanay ng mga security header, kaya naka-encrypt na ang isang request bago ito makarating sa anumang nasa likod nito.
- Ipinapatupad ng pangunahing ledger database ang TLS sa bawat koneksyong tinatanggap nito. Tahasang tinatanggihan ang plaintext na koneksyon, hindi lang basta ipinapayong iwasan sa configuration.
- Bineberipika ng application ang certificate ng database laban sa isang pinned na authority at sinusuri ang hostname nito, sa halip na magtiwala sa kung anumang certificate ang unang lumitaw.
Habang nakaimbak (at rest)
Naka-encrypt ang mga ID image at petsa ng kapanganakan. Tiyak kaming magsabi kung ano pa ang hindi pa naka-encrypt.
Madalas sabihin nang isang hininga na ang buong platform ay "encrypted at rest". Narito ang aktwal na sakop nito sa ngayon.
- Mga ID image at ang selfie
- Naka-encrypt gamit ang AES-256-GCM habang nakaimbak, bago ang awtomatikong purge na bumubura sa mga ito.
- Petsa ng kapanganakan
- Nakaimbak nang naka-encrypt, hindi kailanman sa plain text, saanman ito itago ng isang verification record.
- Mga secret (mga API key, database credential, signing key)
- Nakalagay sa isang dedikadong secrets vault, hindi sa application config o source.
- Ang natitirang bahagi ng database at mga pangkalahatang storage volume
- Hindi naka-encrypt sa antas ng disk o database sa ngayon. Direkta naming sinasabi ito sa halip na magpahiwatig ng pangkalahatang saklaw.
Mga secret
Isang vault, may token gate, at may nakatalang rotation.
Hindi nakakalat sa mga config file ang mga application credential.
Sentralisado
Ang mga API key, database credential, at webhook secret ay nakalagay sa isang dedikadong secrets-management system, binabasa at isinusulat lamang sa pamamagitan ng authenticated at token-gated na API.
Naka-audit ang rotation
Itinatala ng isang dedikadong rotation process ang bawat pagbabago ng credential at bawat tinanggihang pagtatangka sa isang tamper-evident na log na fingerprint lamang ng mga value ang iniimbak, hindi kailanman ang mga value mismo.
Hindi kailanman sa code o config
Binabasa ang mga secret mula sa vault sa boot, hindi ito kino-commit sa source o iniiwan sa isang environment file na kasama sa deploy.
Mga backup
Naka-encrypt bago pa lumabas sa memory, na may restore drill na maaari mong patakbuhin nang hindi ginagalaw ang production.
Sakop ng isang backup ang application, ang configuration nito, at ang database.
- Naka-encrypt gamit ang AES-256, gamit ang key na nasa secrets vault. Kung hindi available ang key na iyon, tumatangging magsulat ang backup script ng hindi naka-encrypt na file sa halip na tahimik na bumalik sa ganoon.
- May dokumentado at naka-script na restore procedure na sumusuporta sa rehearsal mode papunta sa isang scratch location, kaya masusubukan ang proseso nang hindi ginagalaw ang live na data.
- Nananatili ang mga backup sa iisang lugar sa ngayon. Hindi kami nag-aalok ng geo-redundant na backup o hiwalay na disaster-recovery site, at sinasabi namin ito sa mga pahina ng residency at compliance, hindi lang dito.
Mga password, session, at API key
Walang anumang nagpapatunay ng pagkakakilanlan mo ang nakaimbak sa anyong maaaring basahin at gamitin muli ng iba.
Tatlong magkakaibang uri ng secret, tatlong magkakaibang paraan ng pagtrato, na pawang one-way.
- Mga password
- Naka-hash, hindi kailanman iniimbak o nilolog sa plain text.
- Mga session token
- Ang token sa session cookie ng iyong browser ay isang random na 32-byte na value na itinakda bilang HttpOnly cookie.
- Mga API key
- Iniimbak bilang mga SHA-256 hash. Maikling prefix lamang ang itinatago nang hayag, upang makilala ninyo ang isang key sa listahan nang hindi na muling makukuha ang buong value.
Ang hindi inaangkin ng pahinang ito
Walang proteksyon sa DDoS, walang WAF, walang geo-redundancy.
Wala kami sa likod ng content-delivery network o web application firewall sa ngayon, at hindi namin inaangking may encryption sa antas ng disk o database ang bawat byte na iniimbak namin. Pinoprotektahan ng basic rate limiting ang sign-in at iba pang magastos na endpoint, ngunit hindi pa ito isang matibay at persistent na layer ng proteksyon laban sa abuse. Kung mahalaga sa sariling pagsusuri ng inyong organisasyon ang isang partikular na control, direkta kayong magtanong sa amin sa halip na ipagpalagay na sakop ito ng isang pangkalahatang pahayag.
Mga Tanong
Diretsahang sagot tungkol sa encryption.
Higit pa sa talaan
Basahin kung paano nagkakaugnay ang retention at residency.
Isa lang ang encryption sa maraming control. Tingnan kung ano ang buburahin, kailan, at saan nakalagay ang data habang nariyan pa ito.