این مقاله الزاماتی را شرح میدهد که هر گواهی در یک زنجیره X.509 باید داشته باشد تا برای استفاده با ایمیل رمزگذاری شده یا امضا شده با S/MIME قابل اعتماد باشد.
علاوه بر این الزامات، این زنجیره باید به یک گواهی مرجع صدور گواهی (CA) متصل باشد که صریحاً توسط گوگل برای این منظور مورد اعتماد است. همچنین میتوانید گواهیهای ریشه را از CAهایی که به آنها اعتماد دارید بپذیرید. برای اطلاعات بیشتر، به دستورالعملهای گواهی ریشه مراجعه کنید.
یادداشتها :
- گوگل فهرستی از گواهیهای CA مورد اعتماد Gmail برای S/MIME را ارائه و نگهداری میکند . فهرست CAها صرفاً به صلاحدید گوگل مورد اعتماد است. گوگل حق دارد CAهای ریشه را در هر زمان و بدون اطلاع قبلی حذف کند.
- مطمئن شوید که افزونههای نصبشده با سایر افزونههای موجود در همان گواهینامه مغایرت نداشته باشند. برای مثال، اگر nsCertTypes تعریف شده باشند، باید دقیقاً همان کاربردهای افزونهی کاربرد کلید، افزونهی کاربرد کلید توسعهیافته و افزونهی محدودیتهای اساسی را پوشش دهند.
قوانین زنجیره گواهی
روت کالیفرنیا
| میدان | ارزش |
|---|---|
صادرکننده DN | باید CA را شناسایی کند. برای مثال، DN نباید یک مقدار عمومی مانند «مرجع صدور گواهی» باشد. |
موضوع DN | فرم کدگذاری شده باید بایت به بایت با DN صادرکننده یکسان باشد. |
اطلاعات کلید عمومی موضوع | rsaEncryption با مدول RSA برابر با ۲۰۴۸، ۳۰۷۲ یا ۴۰۹۶. یا ecPublicKey با استفاده از secp256r1 یا secp384r1 . |
گواهینامههای CA میانی غیر از گواهینامههای CA میانی صادر شده
اگر بیش از یک CA واسطه بین ریشه و موجودیت انتهایی، به طور مستقیم یا غیرمستقیم، وجود دارد، از این اطلاعات استفاده کنید.
مرکز صدور گواهی میانی، مرکز صدور گواهی میانی است که گواهی موجودیت نهایی را صادر میکند. این بخش برای هر مرکز صدور گواهی میانی در زنجیره، غیر از مرکز صدور گواهی میانی، قابل اجرا است.
| میدان | ارزش | ||
|---|---|---|---|
| نسخه | نسخه ۳ | ||
| شماره سریال | باید بزرگتر از صفر (0) باشد. وقتی DER به صورت یک عدد صحیح کدگذاری میشود، باید کمتر یا مساوی 20 بایت باشد. | ||
| الگوریتم امضا | RSA با SHA-256 ، SHA-384 ، یا SHA-512 . یا ECDSA با SHA-256 ، SHA-384 ، یا SHA-512 | ||
| صادرکننده DN | باید بایت به بایت با DN موضوع CA صادرکننده یکسان باشد. | ||
| دوره اعتبار | بدون قید و شرط | ||
| موضوع DN | بدون قید و شرط | ||
| اطلاعات کلید عمومی موضوع | رمزگذاری rsa با مدول RSA برابر با ۲۰۴۸، ۳۰۷۲ یا ۴۰۹۶. یا ecPublicKey با استفاده از secp256r1 یا secp384r1 | ||
| پسوند | حضور | بحرانی | ارزش |
| کاربرد کلید | مورد نیاز | بله | موقعیتهای بیت باید برای موارد زیر تنظیم شوند: keyCertSign |
| محدودیتهای اساسی | مورد نیاز | بله | فیلد cA باید مقدار true داشته باشد. فیلد pathLenConstraint باید موجود باشد |
| نقاط توزیع CRL | مورد نیاز | خیر | حداقل یک HTTP با دسترسی عمومی |
| (یادداشت) | سرورهای ابطال باید با بخشهای زیر از سیاست صدور و مدیریت گواهیهای عمومی مورد اعتماد انجمن CA/Browser، نسخه ۱.۳.۲ یا بالاتر، مطابقت داشته باشند:
| ||
| هرگونه افزونهی دیگر | ممکن است حضور داشته باشد | ||
گواهی CA میانی که موجودیت نهایی را صادر میکند
مهم : حداقل یک گواهینامهی CA میانی باید در زنجیره وجود داشته باشد. یعنی، ریشه نباید مستقیماً گواهینامههای موجودیت نهایی را صادر کند.
| میدان | ارزش | ||
|---|---|---|---|
| نسخه | نسخه ۳ | ||
| شماره سریال | باید بزرگتر از صفر (0) باشد، و وقتی DER به صورت یک عدد صحیح کدگذاری میشود، کمتر یا مساوی 20 بایت باشد. | ||
| الگوریتم امضا | RSA با SHA-256 ، SHA-384 ، یا SHA-512 . یا ECDSA با SHA-256 ، SHA-384 ، یا SHA-512 . | ||
| صادرکننده DN | باید بایت به بایت با DN موضوع CA صادرکننده یکسان باشد. | ||
| دوره اعتبار | تفاوت بین notBefore و notAfter نباید بیش از 10 سال و نباید بیش از 20 سال باشد. | ||
| موضوع DN | باید استفاده از CA را نشان دهد. | ||
| اطلاعات کلید عمومی موضوع | رمزگذاری rsa با مدول RSA برابر با ۲۰۴۸، ۳۰۷۲ یا ۴۰۹۶. یا ecPublicKey با استفاده از secp256r1 یا secp384r1 | ||
| پسوند | حضور | بحرانی | ارزش |
| کاربرد کلید | مورد نیاز | بله | موقعیت بیتها باید برای موارد زیر تنظیم شود: موقعیتهای بیت دیگر نباید تنظیم شوند |
| کاربرد کلید توسعهیافته | مورد نیاز | یا | باید حضور داشته باشد: محافظت از ایمیل نباید حضور داشته باشند: سرورAuth امضای کد مهر زمانی anyExtendedKeyUsage |
محدودیتهای اساسی | مورد نیاز | بله | فیلد cA باید مقدار true داشته باشد. |
| سیاستهای گواهینامه | اختیاری | خیر | یک policyIdentifier باید ارائه شود که سیاستی را که CA تحت آن فعالیت میکند، مشخص کند و نباید anyPolicy باشد. |
| نقاط توزیع CRL | مورد نیاز | خیر | حداقل یک HTTP با دسترسی عمومی |
| (یادداشت) | سرورهای ابطال باید مطابق با بخشهای زیر از سیاست صدور و مدیریت گواهینامههای عمومی مورد اعتماد انجمن CA/Browser ، نسخه ۱.۳.۲ یا بالاتر، عمل کنند:
| ||
| هرگونه افزونهی دیگر | اختیاری | خیر | ممکن است حضور داشته باشد. |
گواهی موجودیت نهایی
| میدان | ارزش | ||
|---|---|---|---|
| نسخه | نسخه ۳ | ||
| شماره سریال | باید بزرگتر از صفر (0) باشد و حداقل شامل 64 بیت غیرقابل پیشبینی باشد. توجه: بهروزرسانی خواهد شد تا الزامات آنتروپی شماره سریال موجودیت پایان خطمشی گواهی، الزامات پایه انجمن CA/Browser را منعکس کند. | ||
| الگوریتم امضا | RSA با SHA-256 ، SHA-384 ، یا SHA-512 . یا ECDSA با SHA-256 ، SHA-384 ، یا SHA-512 . | ||
| صادرکننده DN | باید بایت به بایت با DN موضوع CA صادرکننده یکسان باشد. | ||
| دوره اعتبار | اختلاف بین notBefore و notAfter نباید بیشتر از ۲۷ ماه باشد. زمان notBefore باید نشان دهنده زمان امضا به اضافه یا منهای ۴۸ ساعت باشد. | ||
| موضوع DN | هرگونه نام خانوادگی متمایز به غیر از آدرس ایمیل باید قبل از صدور، با استفاده از یک رویه عمومی مستند و حسابرسی شده، به دقت اعتبارسنجی شود. برای یک رویه قابل قبول، به بخش 3.2.3 "احراز هویت فردی" از سیاست صدور گواهینامه الزامات پایه انجمن CA/Browser برای صدور و مدیریت گواهینامههای عمومی معتبر ، نسخه 1.3.2 یا بالاتر مراجعه کنید. هر آدرس ایمیلی (برای مثال، در فیلدهای commonName یا emailAddress) باید در پسوند Subject Alternate Name نیز به عنوان rfc822Name موجود باشد. | ||
| اطلاعات کلید عمومی موضوع | رمزگذاری rsa با مدول RSA برابر با ۲۰۴۸، ۳۰۷۲ یا ۴۰۹۶. یا ecPublicKey با استفاده از secp256r1 یا secp384r1 | ||
| پسوند | حضور | بحرانی | ارزش |
| استفاده از کلید (RSA) | مورد نیاز | بله | موقعیت بیتها باید برای هر یک از موارد زیر تنظیم شود: موقعیتهای بیت دیگر نباید تنظیم شوند. |
| کاربرد کلید (ECDH) | مورد نیاز | موقعیت بیتها باید برای موارد زیر تنظیم شود: موقعیتهای بیت دیگر نباید تنظیم شوند. | |
| کاربرد کلید توسعهیافته | مورد نیاز | یا | باید حضور داشته باشد: |
محدودیتهای اساسی | اختیاری | یا | در صورت وجود، فیلد cA نباید مقدار true داشته باشد. |
| سیاستهای گواهینامه | مورد نیاز | خیر | باید وجود داشته باشد: باید یک policyIdentifier ارائه شود که سیاستی را که گواهی تحت آن صادر شده است، مشخص کند و نباید anyPolicy باشد. ممکن است وجود داشته باشد: cps ، در صورت وجود، باید حاوی یک لینک معتبر HTTP یا HTTPS به CPS باشد که تحت آن گواهی صادر شده است. |
دسترسی به اطلاعات مرجع | اختیاری | خیر | caIssuers و در صورت وجود، ocsp ، باید حداقل حاوی یک HTTP uniformResourceIdentifier با قابلیت دسترسی عمومی باشند. AccessDescription نباید حاوی هیچ برچسب یا پارامتری باشد که مختص یک گواهی خاص باشد. |
| نقاط توزیع CRL | مورد نیاز | خیر | حداقل یک مورد که برای عموم قابل دسترسی باشد |
(یادداشت) | سرورهای ابطال باید مطابق با بخشهای زیر از سیاست صدور و مدیریت گواهیهای عمومی مورد اعتماد انجمن CA/Browser ، نسخه ۱.۳.۲ یا بالاتر، عمل کنند:
| ||
نام جایگزین موضوع | مورد نیاز | خیر | باید حداقل شامل یک آیتم از نوع rfc822Name باشد. |
هرگونه افزونهی دیگر | اختیاری | خیر | ممکن است حضور داشته باشد. |