هویت غیرمتمرکز | شناسه غیرمتمرکز یا DID
هویت غیرمتمرکز چیست؟
هویت غیرمتمرکز یک رویکرد مبتنی بر فناوری دفتر کل توزیعشده (DLT) است که ایده اصلی آن کنترل بهتر هویت آنلاین و حریم خصوصی کاربران است. به اینصورت که اطلاعات کاربر توسط صادرکنندگان معتبر (certified issuers) مانند دولت ها، جمع آوری و تأیید (Verify) شده و سپس در یک کیف پول هویت (identity wallet) نگهداری می شود.
هرگاه یک سرویس شخص ثالث مانند بک وب سایت نیاز به اطلاعات کاربر داشته باشد، کاربر می تواند کیف پول هویتی خود را به وب سایت ارائه دهد تا بدون فاش شدن اطلاعات دیگر، فقط صحت اطلاعات مورد نیاز (برای مثال بالای 18 سال بودن کاربر) از طریق کیف پول کاربر بررسی و اثبات (Proof) شود. بدون اینکه تاریخ تولد فرد یا اطلاعات دیگری مانند نام کاربر برای وب سایت فاش شود!
این رویکرد نوظهور، اکنون به سرعت در حال گسترش بوده و توسط W3C و بنیاد هویت غیرمتمرکز (DIF) استاندارد شده و توسط شرکتهایی مانند IBM ، مایکروسافت و هایپرلجر پشتیبانی میشود.
شناسه چیست؟
هر موجودیت در دنیای واقعی دارای خصوصیات یا شناسه هایی (identifier) است که معرف آن موجودیت می باشد. از مهمترین شناسه های افراد می توان به موارد زیر اشاره کرد:
- نام
- شماره ملی / شناسه مالیاتی
- شماره موبایل
- تاریخ و محل تولد
هویت چیست؟
هویت (Identity) عبارت است از اطلاعات نشان دهنده شناسه های اصلی یک موجودیت. در زندگی امروزی ما هویت اهمیت و کاربرد زیادی پیدا کرده است. هر فعالیتی که بخواهیم انجام دهیم، به طریقی نیاز به اثبات هویت (proof of identity) خواهد داشت.
هویت دیجیتال
با ورود به عصر دیجیتال، در راستای تأثیرگذاری این تحول در تمام جنبه های زندگی افراد، هویت دیجیتال (digital identity) اهمیت ویژه ای پیدا کرد. به عنوان چند نمونه از شناسه های دیجیتال می توان به موارد زیر اشاره کرد:
- مدارک شناسایی دیجیتال
- آدرس ایمیل
- نام کاربری
- آواتار
در دنیای دیجیتال، هر فعالیتی اعم از استفاده از خدمات وب سایت ها، باز کردن حساب بانکی، شرکت در رای گیری الکترونیکی، خرید ملک، پیدا کردن شغل و … نیاز به ارائه هویت دیجیتالی دارد. هوشمندسازی یا همان دیجیتالی شدن کارت های شناسایی و فرآیندهای اثبات هویت دیجیتال، فعالیت های برجسته ای بودند که در این دوره انجام شد.
چالش های هویت دیجیتال
در سیستم سنتی، کاربر برای تعامل و استفاده از هر وب سایت یا سرویس دهنده ای، نیاز به ثبت نام و ساخت حساب کاربری (نام کاربری و رمز عبور) دارد. در چنین سیستمی، سرویس دهنده به اطلاعات یا همان شناسه های افراد (نام کاربری، رمز عبور، کد ملی، آدرس، اطلاعات بیومتریک، اطلاعات شهروندی، شغل، حساب های کارت اعتباری، سابقه اعتباری و …) دسترسی داشته و آنها را درون سیستم خود نگهداری می کند.
اصلی ترین چالشی که در این سیستم وجود داشت این بود که صدور و نگهداری اطلاعات هویتی افراد تحت کنترل ارگان های متمرکز بوده و این واقعیت، نگرانی های متعددی را در رابطه با حریم خصوصی و امنیت اطلاعات ایجاد می کند. بخصوص وقتی که سالانه حدود 17 میلیون نفر در جهان قربانی سرقت هویت (identity theft) و سایر جرایم سایبری می شوند و کسب و کارها سالانه حدود 1 تریلیون دلار به دلیل هک شدن از دست می دهند. برخی افراد برای جلوگیری از سرقت هویت، برای هر سامانه از نام کاربری و کلمات عبور متفاوت استفاده می کنند. این راهکار صرفا به عنوان یک عامل کاهنده (و نه لزوما بازدارنده) عمل می کند.
چالش بعدی این بود که کاربر کنترل خاصی روی حریم خصوصی خود نداشت و نمی توانست تنها بخش مورد نیاز از اطلاعات هویتی خود را در اختیار ارگان درخواست دهنده قرار دهد.
هویت غیرمتمرکز
با بررسی مشکلات رایج در سیستم سنتی هویت دیجیتال، به نتیجه می رسیم که این سیستم نقص های زیادی دارد که باید برطرف شود. برخی از چالش های موجود در سیستم هویت دیجیتال که باید برطرف گردد عبارتند از:
- کاربر به جای داشتن هویت های مختلف در سرویس دهنده های مختلف، بتواند برای تمام لاگین های خود، از یک هویت واحد استفاده کند.
- فرآیند ساخت هویت، ساده ولی در عین حال ایمن باشد.
- اطلاعات هویتی کاربر تحت کنترل ارگان خاصی نبوده و فقط در اختیار خودش باشد.
- سرویس دهنده های شخص ثالث فقط باید از صحت اطلاعات هویتی فرد، اطمینان حاصل کنند و نیازی به فاش شدن اطلاعات هویتی کاربر نباشد.
هویت خودمختار (Self-Sovereign Identity)
SSI به عنوان هسته اصلی ایده هویت غیرمتمرکز ما را از سیستم سنتی هویت دیجیتال به سمت هویت غیرمتمرکز سوق می دهد. در این سیستم برای مدیریت PII (Personally Identifiable Information) از پایگاه داده های توزیع شده استفاده می شود.
در یک سیستم SSI، کاربر به جای ساخت مجموعهای از هویتها در پلتفرم های مختلف، یک هویت واحد خواهد داشت که توسط شخص ثالث مدیریت میشود. کاربران در سیستم SSI یک کیف پول دیجیتالی دارند که اعتبارنامههای مختلف داخل آن ذخیره شده و برنامههای کاربردی قابل اعتماد می توانند به آنها دسترسی داشته باشند.
مولفه های اصلی یک سیستم SSI عبارتند از :
- بلاک چین (Blockchain)
- اعتبارنامه های قابل تأیید (VC – Verifiable Credentials)
- شناسه های غیرمتمرکز (DID – Decentralized Identifiers)
ولت های مبتنی بر بلاک چین
اساس مدیریت هویت غیرمتمرکز، استفاده از ولت های مبتنی بر بلاک چین (غیرمتمرکز و رمزگذاری شده) است. در رویکرد هویت غیرمتمرکز (Decentralized Identity) کاربر، اعتبار (credential) های خود را از چندین ارگان صادر کننده (مانند دولت، کارفرما، دانشگاه و …) دریافت کرده و آنها را در ولت دیجیتالی (digital wallet) خود نگهداری می کند. سپس کاربر (Holder) می تواند اثبات هویت خود را به شرکت درخواست دهنده (Verifier) ارائه دهد تا به کمک فناوری DLT مبتنی بر بلاکچین، اعتبارسنجی شود.
در هویت غیرمتمرکز، مدیریت هویت کاربران تحت اختیار هیچ مرجع مرکزی (central authority) نخواهد بود. بلکه یک دفتر کل توزیع شده مبتنی بر بلاکچین خواهیم داشت که به عنوان مرجع حقیقت عمل می کند. توجه داشته باشید که در این سیستم، اطلاعات هویتی افراد روی DLT ذخیره نخواهد شد. بلکه روی ولتی ذخیره می شود که فقط خود کاربر از طریق کلید خصوصی (Private Key) به آن دسترسی دارد. فقط اعتبارسنجی هویت کاربر توسط DLT انجام می شود.
معماری هویت غیرمتمرکز
معماری هویت غیرمتمرکز، به کمک یک فریمورک Identity Trust بستری را فراهم می کند تا کاربران و سازمان ها بتوانند با حفط امنیت و شفافیت با بکدیگر تعامل داشته باشند. تکنولوژی که کمک می کند تا حریم خصوصی و امنیت دسترسی به اطلاعات در این معماری، تأمین شود، تکنولوژی بلاکچین می باشد.
شناسه های غیرمتمرکز (Decentralized Identifiers – DID)
شناسههای سنتی مانند نام، کد ملی یا آدرس ایمیل متکی به اشخاص ثالث (برای مثال دولتها و سرویس دهنده های ایمیل و …) هستند. درحالی که شناسه های غیرمتمرکز (DID) در اختیار هیچ نهاد مرکزی نبوده و صدور، مدیریت و کنترل DID ها بصورت غیرمتمرکز صورت می گیرد. DID ها توسط خود افراد صادر، نگهداری و کنترل می شوند و البته فقط منحصر به افراد نبوده و میتواند مربوط به موجودیت های مختلفی از جمله سازمانها یا مؤسسات دولتی نیز باشد.
DID ها در دفتر کل توزیع شده (بلاک چین) یا شبکه های همتا به همتا (P2P) ذخیره می شوند. این باعث می شود DID ها در سطح جهانی منحصر به فرد باشند. حساب اتریوم نمونه ای از یک DID است که هر موجودیتی می تواند بدون کسب اجازه از کسی و بدون نیاز به ذخیره آن در یک رجیستری مرکزی، به تعداد دلخواه حساب اتریوم ایجاد کند.
اعتبارنامه های قابل تأیید (Verifiable Credentials – VC)
VC ها به عنوان مکمل DID ها، مولفه مهمی از مدیریت هویت غیرمتمرکز هستند. VC ها به طور تغییرناپذیر در بلاک چین ذخیره می شوند. بنابراین تا وقتی که کیف پول و کلیدخصوصی خود را دارید می توانید به آنها دسترسی داشته باشید. آنها را نمی توان از بین برد، تغییر داد، دزدید یا حذف کرد. مهمتر از همه، VC ها تحت کنترل سازمان صادر کننده نیستند.
به کمک VCها، میتوانیم برای اعتبارنامه های فیزیکی (physical credentials) نسخه دیجیتالی ایجاد کنیم و بدون نیاز به افشای غیرضروری اطلاعات، از آنها به صورت آنلاین استفاده کنیم. اشخاص ثالث نیز برای تأیید صحت مدارک نیازی به گرفتن استعلام از موسسه صادرکننده نخواهند داشت.
تعریف دقیق VC
W3C مفهوم VC را اینگونه تعریف میکند:
اعتبارنامههای قابل تأیید، عبارتند از اظهارات (statements) ارائه شده توسط Issuer که غیرقابل دستکاری بوده و حریم خصوصی را نیز رعایت کرده است.
به عنوان چند نمونه از VC ها به مثال های زیر توجه کنید:
- مدرک تحصیلی، ادعا می کند که دریافت کننده برای مدت معینی در دانشگاه مشخص، تحصیل کرده است.
- کارت واکسیناسیون ادعا می کند که شما واکسن را دریافت کرده اید.
- گواهینامه رانندگی ادعا می کند که شما به رانندگی مسلط هستید و به سن قانونی رسیده اید.
چالش استفاده از ادعاها در هویت غیرمتمرکز
قبلاً که ادعاها به صورت اسناد فیزیکی بودند، مشکل خاصی در استفاده از آنها وجود نداشت. ولی اکنون با مطرح شدن بحث استفاده از VC ها در فضای دیجیتال، چالش های متعددی ایجاد شده است. برای مثال، در فرآیند KYC شما باید گواهینامه رانندگی خودتان را در سامانه آپلود کنید تا سن شما از این طریق تأیید شود. این مسئله چالش های متعددی را پیش می آورد:
- تایید صحت ادعا برای سامانه سرویس دهنده امکانپذیر نیست.
- اطلاعات شخصی شما در چندین سرور ذخیره می شود و خطر سرقت هویت افزایش می یابد.
- اگر نسخه فیزیکی مجوز خود را گم کرده باشید، نمی توانید هویت خود را ثابت کنید.
راهکارهای VC ها برای رفع چالش
VC ها برای رفع مشکلات اشاره شده، از 3 روش استفاده می کنند:
- استفاده از شواهد دانش صفر (ZKP) برای اثبات اعتبار ادعا بدون افشای اطلاعات خصوصی
- استفاده از رمزنگاری کلید عمومی برای تأیید صادرکنندگان ادعا (claims issuers)
- ذخیره اطلاعات ادعا در Data Registry های قابل اعتبارسنجی (بلاک چین، دفتر کل توزیع شده)
با راهکاری که VC ها ارائه می دهند، دیگر نیاز نیست برای انجام شدن فرآیند KYC، کل گواهینامه رانندگی خود را در سامانه ای آپلود کنید، بلکه کافی است لینک مربوط به VC گواهینامه را ارائه دهید.
عملکرد ZKP در حفظ حریم خصوصی
VC ها برای محافظت از حریم خصوصی کاربر از فناوری ZKP استفاده میکنند. ZKP به اثبات صحت اطلاعات بدون نیاز به افشای کل اطلاعات کمک می کند. برای درک ساده تر از بحث محافظت از حریم خصوصی توسط فناوری ZK-Proof مثال گواهینامه رانندگی را به خاطر بیاورید. سرویس دهنده نیاز دارد از سن شما مطمئن شود. با اینکه سن شما صراحتا روی گواهینامه درج نشده است، ولی صادرکننده گواهینامه (اداره راهنمایی رانندگی) از طریق public key مشخصی که دارد قابل تشخیص است. از آنجایی که اداره راهنمایی رانندگی فقط به افراد دارای سن قانونی گواهینامه صادر می کند پس می توان فرض کرد که ادعای شما در رابطه با سنتان صحیح بوده است.
مزایای هویت غیرمتمرکز
هویت غیرمتمرکز می تواند طرز فکر ما را نسبت به اطلاعات شخصی و داده های کاربر تغییر دهد. با DID ها و VC ها، کاربران می توانند به جای اعتماد به شرکت های بزرگ فناوری، محافظت از اطلاعات حساس و کنترل هویت خود را در اختیار داشته باشند. هویت غیرمتمرکز مزایای انقلابی برای مشاغل نیز دارد. آنها می توانند با برداشتن فرآیندهای پیچیده تأیید هویت و ایجاد حس یکپارچگی و امنیت، تجربه کاربری را بهبود دهند و سازمان ها می توانند با متعهد شدن به حفاظت از اطلاعات کاربران، حس اعتماد را تقویت کنند و از روابط بهتر با مشتریان لذت ببرند. در ادامه از زوایای مختلف به بررسی مزایای هویت غیرمتمرکز خواهیم پرداخت.
1- امنیت (Security)
یکی از دلایل اصلی استفاده از بلاک چین در سیستم های هویت غیرمتمرکز، تضمین امنیت قوی است. بلاک چین به کمک امضای دیجیتال، الگوریتمهای اجماع و توابع هش رمزنگاری از هویت کاربر در برابر نفوذ و سرقت محافظت میکند. به این ترتیب، می توان از ردیابی دستگاه و داده های وب سایت ها به طور کامل جلوگیری کرد و از کاربران در برابر انتشار داده ها بدون اطلاع آنها محافظت کرد.
2- قابلیت اعتماد (Trustworthiness)
فناوری بلاک چین از یک رویکرد اجماع برای اثبات صحت داده ها (data authenticity) توسط گره های مختلف شبکه، استفاده می کند و به عنوان منبع اعتماد (source of trust) برای تأیید هویت کاربر عمل می کند.
3- کاربردهای کاربر مجور (User Centric Apps)
هویت غیرمتمرکز به توسعه دهندگان این فرصت را می دهد تا برنامه های کاربر محوری بسازند که با از میان برداشتن رمزهای عبور و فرآیندهای احراز هویت ناکارآمد، تجربه کاربری را بهبود دهد و کاربران بتوانند با حفظ حریم خصوصی خود، مستقیماً از سایر کاربران اطلاعات درخواست کنند.
4- حریم خصوصی (Privacy)
سیستم های هویت غیرمتمرکز، با شناسه های شبه-ناشناس (شناسه غیرمتمرکز) در کاهش نگرانی های مربوط به حریم خصوصی، به بلاکچین کمک می کنند. هر کاربر به طور کامل مالک داده های خود بوده و می تواند انتخاب کند که با چه کسی و چه مقدار، این اطلاعات را به اشتراک بگذارد.
5- یکپارچگی داده ها (Data Integrity)
مکانیزم ذخیره سازی داده ها در بلاک چین، تغییرناپذیر (immutable) و دائمی (permanent) است و امکان اصلاح یا حذف اطلاعات وجود ندارد. هویت غیرمتمرکز می تواند از این مکانیسم استفاده کند تا اطمینان حاصل کند که داده های هویتی افراد نمی توانند توسط نهادهای خارجی تغییر یا دستکاری شوند.
6- سادگی (Simplicity)
صادرکنندگان هویت میتوانند از فرآیند صدور هویت دیجیتال استفاده کنند. تأییدکنندگان هویت می توانند به طور مؤثری فرآیند تأیید اطلاعات کاربران جدید را انجام دهند. صاحبان هویت می توانند بدون دردسر هویت خود را در یک کیف پول هویت غیرمتمرکز ذخیره و مدیریت کنند. این رویکرد دادهها را پنهان میکند و خطر ردیابی اعتبار (credential tracking)، هک و دسترسی غیرمجاز (unauthorized access) را که در غیر این صورت منجر به سرقت دادههای افراد میشود، بسیار کاهش میدهد.
پیاده سازی هویت غیرمتمرکز
استانداردها و مستندات فنی
کنسرسیوم وب (W3C) که عمدتاً مسئول تنظیم استانداردها در سراسر وب است، استاندارد و مستندات فنی DID ها را تدوین کرده است. این استاندارد به عنوان یک راه حل بالقوه برای مدیریت هویت غیرمتمرکز در سطح جهانی است که در فناوری های مختلف قابل استفاده است.
همچنین EIP های مختلفی در زمینه هویت غیرمتمرکز ارائه شده است که به توسعه دهندگان اتریوم (و پلتفرم های مبتنی بر evm) کمک می کند تا کاربردهای مربوط به حوزه هویت غیرمتمرکز را به کمک این استانداردها توسعه دهند.
ساختار کلی DID در استاندارد W3C
طبق این استاندارد، فرمت DID را می توان مشابه نحوه نوشتن آدرس وب سایت در مرورگر در نظر گرفت. هنگامی که می خواهید وارد یک وب سایت شوید، URL آن وب سایت را وارد می کنید. برای مثال آدرس https://example.com/about.html شامل بخش های زیر است:
- پروتکل : https://
- نام دامنه وب سایت : example.com
- مسیر صفحه : /about.html
ساختار یک DID نیز به طور مشابه قابل تعریف است:
Scheme : این بخش همواره ثابت بوده و عبارت “did” نشان می دهد که ما با یک id غیرمتمرکز کار می کنیم.
DID Method : این بخش، در واقع بخش اصلی DID است که به شما کمک می کند تا بدانید کجا هستید و در مورد چه چیزی صحبت می کنید. در این بخش، نام گروهی درج می شود که DID متعلق به آن است. برای مثال اگر DID را معادل URL وب سایت فرض کنیم، Method معادل example.com خواهد بود.
DID Method Specific String : این بخش نیز اهیمت خاصی دارد. این string، یک public identifier خاص برای هر کسی یا هر چیزی است که در DID Method باید شناسایی شود.
دو DID ممکن است String یکسانی داشته باشند ولی Method دو DID نمی تواند یکسان باشد.
- did:forbes:william-anderson
- did:medium:william-anderson
ساختار Method در استاندارد W3C
طبق مستندات DID ارئه شده توسط W3C، هر DID باید به صورت یک فایل JSON با فرمت مشخص شده نوشته شده باشد که به آن Method گفته می شود. W3C یک ریپازیتوری در Github دارد که داخل آن پوشه ای به نام Methods وجود دارد که تمام DID های شناخته شده در آنجا ذخیره می شود.
برای Register کردن یک Method جدید ابتدا باید یک فایل JSON با فرمت زیر آماده گردد:
1 2 3 4 5 6 7 8 9 10 11 |
{ // These fields are required "name": "example", "status": "registered", "specification": "https://w3c-ccg.github.io/did-spec/", // These fields are optional "contactName": "W3C Credentials Community Group", "contactEmail": "", "contactWebsite": "", "verifiableDataRegistry": "DID Specification" } |
سپس این فایل را به پوشه ./methods اضافه کرده و یک pull request باز می کنید تا فایل json شما به ریپازیتوری اضافه شود. به همین سادگی می توانید یک DID را رجیستر کنید. طبق نظر W3C هر کسی می تواند Methods مورد نظر خود را به این ریپازیتوری اضافه کند فقط باید صحیح و معتبر و همچنین ساده و قابل خواندن توسط انسان باشد.
EIP-5114
استاندارد ERC-5114 مربوط به توکن هایی است که در زمان mint شدن به یک Non-Fungible Token (NFT) دیگر باند (bound) شده و دیگر قابل فروش یا انتقال نخواهد بود.
EIP-4361
استاندارد EIP-4361 مربوط به احراز هویت خارج از زنجیره برای حساب های اتریوم است که برای لاگین کردن (Sign-In) و ایجاد نشست (session) با اتریوم کاربرد دارد.
EIP-4337
استاندارد EIP-4337 مربوط به انتزاع حساب (Account Abstraction) می باشد که به طور کامل از نیاز به تغییرات در پروتکل لایه اجماع جلوگیری می کند. این استاندارد به جای افزودن ویژگی جدید به پروتکل و تغییر نوع تراکنش در لایه پایین، یک شی شبه تراکنش در لایه بالاتر به نام UserOperation را معرفی میکند. کاربران آبجکت UserOperation را به یک mempool جداگانه ارسال می کنند. یک کلاس خاص از بازیگران به نام bundlers مجموعه ای از این اشیاء را در یک تراکنش بسته بندی می کند که یک فراخوانی handleOps به یک کانترکت خاص انجام می دهد و سپس آن تراکنش در یک بلاک گنجانده می شود.
EIP 712
استاندارد EIP-712 توسط جامعه توسعه دهندگان اتریوم پیشنهاد شده و مربوط به محاسبه هش و امضای دیتا های ساختارمند (structured data) مانند فایل های JSON می باشد.
بخش های اصلی این استاندارد عبارتند از:
- یک فریمورک تئوری برای صحت توابع رمزگذاری
- مشخصات دیتای ساختارمند مشابه و سازگار با نوع داده استراکت در زبان Solidity
- الگوریتم هش ایمن برای داده های ساختارمند (structured data)
- گنجاندن ایمن داده های ساختارمند در مجموعه پیام های قابل امضاء
- یک مکانیزم قابل توسعه برای جداسازی دامنه (domain separation)
- یک متد RPC Call جدید به نام eth_signTypedData
- پیاده سازی بهینه الگوریتم هش در EVM
EIP-1078
استاندارد EIP-1078 برای پیاده سازی مکانیزم استاندارد جهانی login / signup با استفاده از سرویس نام اتریوم (ENS) می باشد. این استاندارد، روشی برای جایگزین کردن دیزاین پترن signup/login معمولی با یک طرح حداقلی اتریوم ارائه میکند که نیازی به رمز عبور، پشتیبانگیری از کلیدهای خصوصی و تایپ عبارات اولیه ندارد. از نقطه نظر کاربر، این متد، بسیار شبیه به الگوهایی است که از احراز هویت فاکتور دوم (بدون تکیه بر سرور مرکزی) استفاده می کردند، اما برای توسعهدهندگان dapp نیاز به روش جدیدی برای فکر کردن درباره تراکنشهای اتریوم دارد.
EIP-1812
استاندارد EIP-1812 روشی جدید برای ادعاهای قابل تأیید (Verifiable Claims) خارج از زنجیره که بر اساس EIP-712 ساخته شده است. این ادعاها می تواند توسط هر کاربری با ارائه دهنده وب 3 سازگار با EIP 712 صادر شود. ادعاها می توانند خارج از زنجیره ذخیره شده و روی زنجیره توسط قرارداد هوشمند سالیدیتی، پیاده سازی های State Channel یا کتابخانه های off-chain وریفای شوند.
EIP 725
استانداد EIP-725 مربوط به توسعه اکانت های مبتنی بر قرارداد هوشمند با قابلیت ضمیمه کردن دیتا با ساختار کلید/مقدار می باشد.
راه حل ها و پلتفرم ها
جنبش هویت غیرمتمرکز چند سالی است که به سرعت در حال رشد است و چندین سازمان برجسته این جریان را رهبری می کنند. Microsoft، هایپرلجر و بنیاد هویت غیرمتمرکز (Decentralized Identity Foundation) از جمله شرکت های تاثیرگذار در پروژه هویت غیرمتمرکز هستند.
مایکروسافت
این شرکت در سال 2014 با انتشار سرویس Azure Active Directory وارد این حوزه شد. این سرویس امکان استفاده از شناسه های غیرمتمرکز (DID) و اعتبارنامه های قابل تأیید (VC) را فراهم می کند. مایکروسافت در این سرویس از شبکه Identity Overlay Network (ION) استفاده می کند. در این لینک اطلاعات بیشتری از راهکارهای مایکروسافت برای پیاده سازی هویت غیرمتمرکز ارائه شده است.
ION یک سایدچین (Sidechain) روی شبکه بیت کوین است که برای مدیریت ایمن هویت کاربران ساخته شده است.
هایپرلجر
بلاک چین خصوصی هایپرلجر (Hyperledger) برای کمک به پیاده سازی راه حل های هویت غیرمتمرکز ابزارهای متعددی را برای توسعه دهندگان و سازمان ها ارائه داده است.
Hyperledger Indy مجموعه ابزاری است که برای ایجاد سیستمی از هویتهای دیجیتال ذخیرهشده در زنجیرههای بلوکی و دفتر کل توزیعشده ارائه شده است.
Sovrin یک راه حل مدیریت هویت غیرمتمرکز محبوب است که با استفاده از Hyperledger Indy ساخته شده است.
بنیاد هویت غیرمتمرکز
بنیاد هویت غیرمتمرکز (DIF) متعهد به ایجاد یک سیستم تعاملی برای هویت های غیرمتمرکز است. برای سالها، فقدان قابلیت همکاری، مانعی برای پذیرش گسترده DID ها بوده است. DIF در حال همکاری نزدیک با بازیگران کلیدی برای دستیابی به کاربرد بین پلتفرمی از چارچوب های DID است. این به کاربران اجازه می دهد تا از هویت دیجیتال خود در دنیایی از برنامه ها، دستگاه ها و خدمات استفاده کنند.
اعضای برجسته DIF عبارتند از:
- Microsoft
- Evernym
- Sovrin
- IBM
- Hyperledger
- Blockstack
- Enterprise Ethereum Alliance
پروژه های مبتنی بر هویت غیرمتمرکز
Ethereum Name Service (ENS)
ENS یا سرویس نام اتریوم یک سیستم نامگذاری غیرمتمرکز برای شناسههای on-chain و قابل خواندن توسط ماشین، مانند آدرس ولت اتریوم، هش محتوا (content hash) و متادیتا می باشد. ENS ها در یک قرارداد هوشمند روی بلاکچین اتریوم رجیستر می شوند و مانند هر آبجکت دیجیتال دیگری روی بلاکچین قابل verify هستند. از آنجایی که ENS ها توسط یک اسمارت کانترکت تولید می شوند، می توان گفت همه ENS ها فضای نام (namespace) مشترکی دارند.
ENS ها به عنوان یک توکن غیرقابل تعویض (NFT) به مالک فعلی داده می شود که می تواند اثباتی برای مالکیت نام دامنه خاص باشد. ENS ها از لحاظ ظاهری شبیه به نام دامنه های عادی هستند با این تفاوت که پسوند آنها به جای com و org و … عبارت .eth می باشد. مانند example.eth
SpruceID
SpruceID یک پروژه هویت غیرمتمرکز محسوب می شود که به کاربران اجازه می دهد به جای اتکا به خدمات شخص ثالث، هویت دیجیتال را با اکانت های اتریوم و پروفایل های ENS کنترل کنند.
Ethereum Attestation Service (EAS)
EAS یک دفتر کل/پروتکل غیرمتمرکز است که برای ساخت گواهیهای روی زنجیره یا خارج از زنجیره قابل استفاده است.
(PoH) Proof of Humanity
PoH یک سیستم اعتبارسنجی هویت اجتماعی (social identity) است که بر روی اتریوم ساخته شده است.
BrightID
BrightID یک شبکه هویت اجتماعی غیرمتمرکز و اوپن سورس است که به دنبال اصلاح فرآیند اعتبارسنجی هویت (identity verification) از طریق ایجاد و تجزیه و تحلیل یک گراف اجتماعی (social graph) است.
Proof-of-personhood Passport
Passport یک تجمیع کننده (aggregator) هویت دیجیتال غیرمتمرکز است که به کاربران امکان می دهد از طریق یک پروفایل گرافیکی ایمن و غیرمتمرکز، هویت خود را اثبات کنند.
موانع اجرایی پروژه هویت غیرمتمرکز
نقص در مستندات فنی DID
در رابطه با مستندات فنی DID ها هنوز سوالات بدون پاسخی وجود دارد:
- چگونه می توانیم یک DID راهاندازی کنیم؟
- چه کسی راهاندازی DID را انجام می دهد؟
- آیا میتوانید یک یا چند DID داشته باشیم؟
- چه کسی قانونی و غیرقانونی بودن DID ها را تعیین می کند؟
رجیستر کردن DID به روش فعلی از اعتبار کافی برخوردار نیست و اطلاعات ثبت شده ممکن است درست نباشد. فعلا ریپازیتوری ./methods فقط به عنوان یک مرجع حقیقت (source of truth) برای کسب و کارها و افراد عمل می کند که صرفاً می توان به آن رجوع کرد.
منافع شخصی
اغلب کسبوکارها و دولتها به دلیل منافع شخصی، ترجیح میدهند همچنان از سیستم سنتی استفاده کنند. بنابراین طرفدار سیستم جدید نیستند و در مقابل این تغییرات مقاومت میکنند. این موضوع می تواند مانعی برای اجرای هویت غیرمتمرکز شود.
خطر سرقت هویت
اگرچه هویت غیرمتمرکز روی بلاک چین اجرا میشود که هک کردن آن تقریباً غیرممکن است، اما هنوز نقاط ضعفی در خارج از بلاک چین وجود دارد که اغلب میتواند منجر به خطر سرقت هویت شود. نگهداری عبارات اولیه (seed phrase) ولت در مکان ناامن یکی از راه های دسترسی هکرها به کیف پول های هویتی است.
عدم اعتماد و پذیرش فناوری جدید
با اینکه هویت غیرمتمرکز مزایای بسیاری دارد، برخی کاربران تمایل کمتری به این فناوری جدید دارند. این سری کاربران مشکل عدم اعتماد و پذیرش فناوری جدید را دارند. همچنین افرادی که دانش فنی کافی ندارند نیز ممکن است در پذیرش و انطباق با این پدیده جدید مشکل داشته باشند چراکه فکر می کنند قرار است تمام اطلاعات شخصی آنها در اینترنت قرار گیرد!
اصطلاحات مرتبط با DID
- Verifiable Credentials : VC
- Decentralized Identifiers : DID
- Centralized Identity Management : CIM
- Decentralized Identity Management : DIM
- Personally Identifiable Information : PII
- Identity Access Management : IAM
- Self-Sovereign Identity : SSI
- Pseudo-Anonymous Identifiers : PAI
- Decentralized Identity Foundation : DIF
درباره مجید شبیری
کارشناس ارشد فناوری اطلاعات از دانشگاه صنعتی امیرکبیر. مدیر و مؤسس "علوم نوین امیرکبیر"، متخصص برنامه نویسی، شبکه، لینوکس و امنیت. از سال 84 همزمان با شروع تحصیلات دانشگاهی، وارد حوزه تخصصی مهندسی نرم افزار شدم و اکنون مشغول تحقیق، توسعه و آموزش در حوزه بلاک چین هستم و معتقدم بلاکچین به زودی فضای کسب و کارها را منقلب خواهد کرد.
نوشته های بیشتر از مجید شبیری
دیدگاهتان را بنویسید