Amatörce bir tahminde bulunmak istiyorum.
AES gibi iki yönlü bir algoritma ile yapılıyor olabilir. Örneğin sayfa yüklenirken key ile gelir, login butonuna basınca şifreyi şifreler ve sunucuya gönderir. Sunucu key ile çözer ve yoluna devam eder (tabiki kendisi tek yönlü bir algoritma ile şifreleyip devam edecek).
Burada captcha gibi düşündüm ben. Captcha sayfa yüklendiğinde üretiliyor ve ilk yükleme ile ekrana basılıyor istek yaptıkça session veya sunucuda nasıl tutuluyorsa öyle kıyaslanıyor (ilkel captcha mekanizmalarından bahsediyorum). Buna benzer bir mantık yani.
Peki keyi client ile paylaşsak ne anlamı kalır ki? Sanırım buradaki mantık ağı izleyen birinin giden şifrenin ne olduğunu görememesi üzerine kurulu olabilir.
Eğer mega bu mekanizmayı sadece sadece web sitesinde kullanmıyorsa, api'lerde de zorunlu ise mega için yazılmış kütüphaneler incelenebilir.