معماری امنیتی 1Password: چرا حتی خودشان هم رمزها رو نمیبینن
خلاصهٔ کاملتر
یه سوال که خیلیها از 1Password میپرسن اینه: «آیا شما میتونید محتوای vault من رو ببینید؟» جواب کوتاهه: نه. اما نه بهخاطر اینکه قول دادن — بلکه بهخاطر اینکه از نظر فنی غیرممکنه. این تفاوت مهمیه؛ چون تاریخ نشون داده که قولها شکسته میشن، شرکتها هک میشن و خریداری میشن.
رمزنگاری قبل از ترک دستگاه شما
وقتی یه پسورد یا کارت بانکی رو توی 1Password ذخیره میکنید، اول روی همون دستگاه خودتون رمزنگاری میشه — قبل از اینکه هر دادهای جایی بره. دو عنصر کلیدی در این فرآیند وجود داره: Secret Key (یه مقدار ۱۲۸ بیتی) و پسورد حساب شما. ترکیب این دو، کلید رمزنگاری واقعی رو میسازه. نه Secret Key و نه پسورد حساب هیچوقت به سرورهای 1Password ارسال نمیشن یا روی اونها ذخیره نمیشن.
چیزی که روی سرورهای 1Password ذخیره میشه فقط ciphertext هست — دادهای که بدون کلید، عملاً تفاوتی با داده تصادفی نداره. حتی اگه سرورها فردا هک بشن، مهاجم فقط یه سری blob رمزنگاریشدهی بیمصرف به دست میاره. سریعترین ابررایانههای دنیا هم برای حدس یه کلید ۱۲۸ بیتی به میلیاردها میلیارد سال نیاز دارن.
zero-knowledge یعنی چی و چی رو از دست میدید
این طراحی رو zero-knowledge architecture میگن؛ یعنی ارائهدهنده سرویس از محتوای plaintext (داده خام رمزنگارینشده) کاربرانش هیچ اطلاعی نداره. اما این معماری هزینه هم داره: اگه پسوردتون رو فراموش کنید یا Secret Key رو گم کنید، 1Password نمیتونه کمکتون کنه — چون این اطلاعات رو ندارن.
همین محدودیت روی قابلیتهای محصول هم تاثیر میذاره. مثلاً جستجوی سمت سرور روی vault غیرممکنه. وقتی 1Password بررسی میکنه که پسوردتون لو رفته یا نه، این محاسبه روی دستگاه شما انجام میشه و فقط یه hash جزئی از پسورد با پایگاه داده نقضها مقایسه میشه — نه پسورد اصلی. یه مزیت مهم دیگه هم اینه که حکم قضایی هم نمیتونه 1Password رو مجبور کنه کلید رمزگشایی رو تحویل بده، چون این کلید اصلاً روی سیستمهاشون وجود نداره.
وقتی پردازش باید در ابر بشه
برخی قابلیتهای سازمانی مثل گزارشهای امنیتی شرکتی، نیاز به پردازش سمت سرور دارن. 1Password برای این چالش از تکنولوژی confidential computing استفاده میکنه. ایده اصلی اینه که پردازش داده نه روی یه سرور معمولی، بلکه داخل یه enclave سختافزاری انجام میشه — یه اتاق پردازش مُهرشده که حتی ارائهدهنده ابر هم نمیتونه ببینه داخلش چه خبره.
1Password کدی که داخل این enclaveها اجرا میشه رو بهصورت عمومی منتشر کرده و از cryptographic attestation استفاده میکنه تا بشه مستقلاً تأیید کرد که دقیقاً همون کد در حال اجراست. یه شرکت امنیتی مستقل هم این پیادهسازی رو بررسی کرده و گزارشش بهصورت عمومی در دسترسه.
چرا این طراحی الان مهمتره
مدیران پسورد دیگه فقط برای ذخیره رمزهای ورود به سایتها استفاده نمیشن. اونها به لایه اعتبارسنجی ابزارهای مرورگر، محیطهای توسعه، اتوماسیون کاری، و حالا عاملهای هوش مصنوعی (AI agents) که میتونن از طرف شما اقدام کنن تبدیل شدن. هرچقدر این اتصالات بیشتر بشن، اهمیت یه معماری که روی اصول zero trust و zero-knowledge بنا شده بیشتر میشه — نه فقط روی وعده.
نکات کلیدی:
- رمزنگاری کامل روی دستگاه کاربر انجام میشه؛ کلیدها هیچوقت به سرورهای 1Password نمیرسن
- معماری zero-knowledge یعنی 1Password از نظر فنی غیرممکنه محتوای vault رو بخونه
- هزینه این معماری: بازیابی حساب در صورت فراموشی پسورد یا گمشدن Secret Key ممکن نیست
- برای پردازش ابری از confidential computing (enclave سختافزاری) استفاده میشه
- کد enclaveها عمومیه و از cryptographic attestation برای تأیید مستقل استفاده میشه
- حتی حکم قضایی هم نمیتونه کلید رمزگشایی رو از 1Password بگیره چون وجود نداره




