Mula Splync v1.0 patungo sa Splync v1.1
Kapag nag-sign up ka para sa Splync, hihilingin sa'yo na ilagay ang iyong email address at password. Gaya ng nabanggit ko sa mga naunang artikulo, ang Splync v1.0 ay mayroon nang mga pangunahing hakbang pangseguridad. Ang iyong data transfer ay protektado ng HTTPS. Ang aming server ay ligtas sa pamamagitan ng SSH para walang ibang makapasok kundi ang developer. Ang iyong password ay hindi kailanman naka-store na plain text kundi naka-hash sa database para walang makapag-decode nito. Gayunpaman, ang lihim ng v1.0 ay wala itong email verification sa proseso ng paglikha ng account. Ang Splync, bilang isang MVP (Minimum Viable Product), ay inilabas nang wala ito dahil nasa yugto pa lang ito kung saan mga kaibigan ko lang ang may alam. Sa v1.0, sinisiyasat lang ng app kung ang inilagay na email ay may “@” sa pagitan ng mga letra at kung ito ay natatangi sa mga umiiral na account.
Ano ang Mangyayari Kung Walang Email Verification
Kung ang isang app ay nagpapahintulot sa mga gumagamit na gumawa ng account nang hindi kinukumpirma ang kanilang pagkakakilanlan, madali mong maisip na maaaring gamitin ng isang tao ang email ng iba para gumawa ng sariling account. Ito mismo ang maaaring mangyari. Kahit hindi nito ibig sabihin na malalantad ang iyong data, hindi ka na makakapagparehistro gamit ang sariling mong email kung nagamit na ito. Bukod pa rito, maaaring gumawa ng account gamit ang ganap na gawa-gawang email address. Sa unang tingin, parang hindi ito seryoso pero magiging problema ito kapag sinubukan ng developer na singilin o kontakin ang user na iyon sa kalaunan. Hindi ko man lang malalaman kung sino talaga ang taong iyon! Kaya, ang email verification ang susunod na hakbang para sa Splync.
Paano Gumagana ang Email Verification
Sa Splync v1.1, kapag nag-sign up ang bagong user, awtomatikong nagpapadala ang app ng email sa address na inilagay nila. Ang email na ito ay naglalaman ng natatanging, awtomatikong binuong verification link. Sa pag-click sa link na iyon, kinukumpirma ng user na may access talaga sila sa email account na iyon. Kapag nakumpirma na, ina-activate ng server ang account ng user at iniimbak ito sa database bilang valid at authenticated na user. Pamilyar, hindi ba? Tinitiyak ng prosesong ito na ang bawat account sa Splync ay pagmamay-ari ng isang tunay at maabot na tao — isang maliit ngunit mahalagang hakbang patungo sa pagbuo ng mapagkakatiwalaang komunidad. Tingnan natin nang mas malapit kung paano ito ipinatupad mula sa teknikal na perspektibo.
Teknikal na Pagpapatupad ng Email Verification
Ang backend ng Splync ay gumagamit ng Python/FastAPI, at ang mobile app ay binuo sa SwiftUI. Ang app ay humahawak lamang ng user interface, habang ang lohika ng pag-verify at sensitibong mga kredensyal ay nananatiling ligtas sa server. Sa v1.1, nagdagdag kami ng karaniwang hakbang ng email verification sa pagitan ng “unverified user” at “verified user.” Kapag nag-sign up ang bagong user, ipinapadala ng app ang inilagay na data sa server. Ang server ay may database ng MariaDB. Iniimbak nito ang user bilang unverified sa database. Ang password ay naka-hash at naka-save, ngunit ang account ay hindi pa aktibo. Sa sandaling iyon, bumubuo rin ang server ng natatanging verification token na may expiration time. Pagkatapos, gamit ang SMTP (Simple Mail Transfer Protocol) server, nagpapadala ang server ng verification email na naglalaman ng secure, one-time link. Kapag binuksan ng user ang link, sinusuri ng server kung ang token ay valid at hindi pa expired. Kapag nakumpirma na, nagiging aktibo ang account, at ang user ay makakapag-sign in na nang normal mula sa app. Pinapanatili nito ang authentication na ligtas at magaan.
Python? FastAPI? SwiftUI? SMTP? MariaDB
Kung ang mga ito ay parang lihim na kodigo, huwag mag-alala — mga kasangkapan lang ang mga ito na nagpapagana sa sistema. Isipin ang proseso ng pag-sign up sa Splync na parang customer support center na nagbe-verify ng pagkakakilanlan ng isang tao. “Maaari ko bang malaman ang iyong pangalan at email address?” tanong ni SwiftUI, ang mabait na operator sa front desk. Ibinigay mo ang iyong mga detalye, at sinasabi niya, “Puwede bang maghintay ka muna sandali?” Agad niyang ipinapasa ang mga ito sa FastAPI, ang internal na phone system ng opisina. Kinokonekta siya ng FastAPI kay Python, ang espesyalista sa back-office na namamahala sa pag-verify. Tinitingnan ni Python kay MariaDB, ang customer database, upang ligtas na maitala ang iyong impormasyon — minamarkahan ang iyong status bilang “unverified.” Pagkatapos ay hinihiling ni Python kay SMTP, ang external na mensahero, na magpadala sa'yo ng confirmation email na may kasamang secure link. Kapag klinick mo ang link, biniberipika ni Python na ito ay valid at ina-update ang iyong record sa MariaDB para maging “verified.” Sa wakas, ipinaalam ng FastAPI sa operator na nakumpirma na ang iyong pagkakakilanlan, at aktibo na ang iyong account. Sama-sama, ginagawa ng mga bahaging ito ang proseso ng pag-verify ng Splync na makatao at ligtas.
Ang Susunod na Hakbang sa Paglalakbay sa Seguridad ng Splync
Maaaring mukhang maliit na feature ang email verification, pero binabago nito ang lahat tungkol sa tiwala. Minamarkahan nito ang moment kung saan nag-e-evolve ang Splync mula sa personal na proyekto sa mga kaibigan patungo sa pampublikong app kung saan sinuman ay makakasali nang may kumpiyansa. Ang pagpapadala ng verification link via SMTP ay parang unang pakikipagkamay ng Splync sa bagong user. Sa likod ng eksena, nagbibigay-daan ang feature na ito para sa mga susunod na pagpapabuti — mga password reset, multi-factor authentication, at mga pag-recover ng account. Bawat layer ng seguridad ay itinatayo sa nauna. Sa email verification, ang Splync v1.1 ay gumagawa ng makabuluhang hakbang pasulong — ginagawang hindi lang maginhawa kundi tunay na maaasahan ang pamamahala ng shared expenses.