{"id":500569,"date":"2026-10-27T22:01:46","date_gmt":"2026-10-27T19:01:46","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=500569"},"modified":"2026-10-27T22:01:46","modified_gmt":"2026-10-27T19:01:46","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=500569","title":{"rendered":"\u0421\u0435\u043c\u044c \u0441 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u043e\u0439 \u0447\u0430\u0441\u043e\u0432: \u043a\u0430\u043a Go \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u043b \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441 \u043a\u043b\u044e\u0447\u0430\u043c\u0438 eMudhra (\u0438 \u0447\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0443 \u0441\u0435\u0431\u044f)"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>17 \u043e\u043a\u0442\u044f\u0431\u0440\u044f 2026 \u0433\u043e\u0434\u0430 Mozilla \u0431\u0435\u0437 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0439 \u0432\u043d\u0435\u0441\u043b\u0430 \u0432 OneCRL \u0432\u043e\u0441\u0435\u043c\u044c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0435\u0433\u043e \u0446\u0435\u043d\u0442\u0440\u0430 eMudhra. \u0427\u0435\u0440\u0435\u0437 \u0434\u0432\u043e\u0435 \u0441\u0443\u0442\u043e\u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 Go \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 1.27.3 \u0438 1.26.10, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b\u0438 \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u044d\u0442\u0438\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c. \u041e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0434\u043e \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430 \u043f\u0440\u043e\u0448\u043b\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u0441\u0435\u043c\u0438 \u0441 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u043e\u0439 \u0447\u0430\u0441\u043e\u0432. \u042d\u0442\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 Go, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0439 \u043f\u043e \u043d\u043e\u0432\u043e\u043c\u0443 \u0442\u0440\u0435\u043a\u0443 <strong>URGENT<\/strong>.<\/p>\n<p>26 \u043e\u043a\u0442\u044f\u0431\u0440\u044f Roland Shoemaker \u0438\u0437 Go Security \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b <a href=\"https:\/\/go.dev\/blog\/emudhra-incident\" rel=\"noopener nofollow\">\u0440\u0430\u0437\u0431\u043e\u0440 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u0430<\/a>. \u041d\u0438\u0436\u0435 \u0435\u0433\u043e \u043f\u0435\u0440\u0435\u0441\u043a\u0430\u0437 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u043e\u043c \u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u0435 \u043d\u0435\u0442: \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0430\u0431\u044b\u043c\u0438 \u0431\u044b\u043b\u0438 \u043a\u043b\u044e\u0447\u0438 (\u0441 \u043a\u043e\u0434\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0445 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442), \u043f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043a\u043e\u0440\u0435\u043d\u044c, \u043a\u0430\u043a \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 Go-\u0441\u0435\u0440\u0432\u0438\u0441, \u043d\u0435 \u0434\u043e\u0436\u0438\u0434\u0430\u044f\u0441\u044c \u0440\u0435\u043b\u0438\u0437\u0430, \u0438 \u0447\u0442\u043e \u043d\u0435 \u0442\u0430\u043a \u0441 \u043e\u0442\u0437\u044b\u0432\u043e\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0432 Linux.<\/p>\n<h3>\u0427\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e<\/h3>\n<p>\u0412\u043e\u0441\u0435\u043c\u044c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 CA eMudhra \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u044b \u043e\u0442 \u043a\u043e\u0440\u043d\u044f <strong>emSign ECC Root CA \u2013 G3<\/strong>. \u0428\u0435\u0441\u0442\u044c \u0438\u0437 \u043d\u0438\u0445 \u0432\u044b\u0434\u0430\u044e\u0442 TLS-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b (DV, OV \u0438 EV, \u043f\u043e \u0434\u0432\u0430 \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f G3B\/G3C), \u0435\u0449\u0451 \u0434\u0432\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u043a\u043e\u0434. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u0435\u0441\u0442\u044c \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043e\u0442 \u043a\u043e\u0440\u043d\u044f Sectigo <strong>AAA Certificate Services<\/strong>.<\/p>\n<p>\u041a\u043b\u044e\u0447\u0438 \u044d\u0442\u0438\u0445 CA \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043d\u0430 \u0446\u0435\u0440\u0435\u043c\u043e\u043d\u0438\u0438 30 \u0430\u043f\u0440\u0435\u043b\u044f 2025 \u0433\u043e\u0434\u0430. \u041f\u043e \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c\u0443 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u044e eMudhra, \u043e\u0448\u0438\u0431\u043a\u0430 \u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u043b\u0430 \u0432\u0442\u043e\u0440\u043e\u0439, \u0441\u043b\u0430\u0431\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u043a\u043b\u044e\u0447\u0435\u0439. \u041c\u0435\u0442\u043a\u0438 \u0443 \u043d\u0438\u0445 \u0431\u044b\u043b\u0438 \u043f\u043e\u0447\u0442\u0438 \u0442\u0430\u043a\u0438\u0435 \u0436\u0435, \u043a\u0430\u043a \u0443 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445, \u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u043f\u043e \u043e\u0448\u0438\u0431\u043a\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0438\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u0438 \u043a\u043b\u044e\u0447\u0438.<\/p>\n<p>\u00ab\u0421\u043b\u0430\u0431\u044b\u0439\u00bb \u0437\u0434\u0435\u0441\u044c \u0437\u043d\u0430\u0447\u0438\u0442 \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435: \u043a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 <strong>\u043c\u0435\u043d\u044c\u0448\u0435 256<\/strong>. \u0421\u0440\u0435\u0434\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0431\u044b\u043b\u0438 4, 56 \u0438 115. \u041d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u2014 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0434\u043b\u0438\u043d\u043e\u0439 \u043e\u043a\u043e\u043b\u043e \u0441\u043e\u0442\u043d\u0438 \u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u044b\u0445 \u0446\u0438\u0444\u0440.<\/p>\n<p>\u0422\u0430\u043a\u0438\u0435 \u043a\u043b\u044e\u0447\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0438\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0437\u0430 \u0434\u043e\u043b\u0438 \u0441\u0435\u043a\u0443\u043d\u0434\u044b \u043d\u0430 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0435. \u0412\u043b\u0430\u0434\u0435\u043b\u0435\u0446 \u0442\u0430\u043a\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u0430\u043b\u0438\u0434\u043d\u044b\u0439 TLS-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043d\u0430 <strong>\u043b\u044e\u0431\u043e\u0439<\/strong> \u0434\u043e\u043c\u0435\u043d. \u041a\u043b\u0438\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u0432\u0435\u0440\u044f\u044e\u0442 \u043a\u043e\u0440\u043d\u044e eMudhra \u0438\u043b\u0438 \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0438 Sectigo, \u043f\u0440\u0438\u043c\u0443\u0442 \u0442\u0430\u043a\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u0438 \u044d\u0442\u043e \u0433\u043e\u0442\u043e\u0432\u044b\u0439 MITM.<\/p>\n<p>\u041a\u0440\u0430\u0442\u043a\u043e \u043e \u0445\u0440\u043e\u043d\u043e\u043b\u043e\u0433\u0438\u0438:<\/p>\n<ul>\n<li>\n<p><strong>17 \u043e\u043a\u0442\u044f\u0431\u0440\u044f.<\/strong> \u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 Apple, Google, Microsoft, Mozilla \u0438 eMudhra. Mozilla \u0432 \u0442\u043e\u0442 \u0436\u0435 \u0434\u0435\u043d\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043a\u043b\u044e\u0447\u0438 \u0438 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0447\u0435\u0440\u0435\u0437 OneCRL. Chrome \u0442\u043e\u0436\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0438\u0445 \u0432 \u0434\u0435\u043d\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f.<\/p>\n<\/li>\n<li>\n<p><strong>18 \u043e\u043a\u0442\u044f\u0431\u0440\u044f.<\/strong> eMudhra \u043e\u0442\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b.<\/p>\n<\/li>\n<li>\n<p><strong>19 \u043e\u043a\u0442\u044f\u0431\u0440\u044f.<\/strong> Apple, \u0440\u0435\u043b\u0438\u0437 Go.<\/p>\n<\/li>\n<li>\n<p><strong>20 \u043e\u043a\u0442\u044f\u0431\u0440\u044f.<\/strong> Microsoft. \u0423\u0442\u0440\u043e\u043c \u0442\u043e\u0433\u043e \u0436\u0435 \u0434\u043d\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u0441\u043b\u0430\u0431\u043e\u0441\u0442\u044c \u043a\u043b\u044e\u0447\u0435\u0439.<\/p>\n<\/li>\n<li>\n<p><strong>27 \u043e\u043a\u0442\u044f\u0431\u0440\u044f.<\/strong> \u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u0440\u043d\u044f eMudhra \u0438\u0437 Chrome Root Store \u0434\u043e\u0445\u043e\u0434\u0438\u0442 \u0434\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.<\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u043b\u043e\u0433\u0430\u0445 Certificate Transparency \u043d\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0448\u0435\u0441\u0442\u044c\u044e TLS-\u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u0430\u043c\u0438. \u0410\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e.<\/p>\n<h3>\u041f\u043e\u0447\u0435\u043c\u0443 Go \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0432\u043c\u0435\u0448\u0438\u0432\u0430\u0442\u044c\u0441\u044f<\/h3>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0432 Go \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445:<\/p>\n<ul>\n<li>\n<p><strong>Windows \u0438 macOS:<\/strong> <code>crypto\/x509<\/code> \u0434\u0435\u043b\u0435\u0433\u0438\u0440\u0443\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 (CryptoAPI \u0438 Security.framework). \u041a\u043e\u0433\u0434\u0430 Microsoft \u0438 Apple \u0432\u044b\u043a\u0430\u0442\u0438\u043b\u0438 \u043e\u0442\u0437\u044b\u0432, Go-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0430 \u044d\u0442\u0438\u0445 \u041e\u0421 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0435\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438.<\/p>\n<\/li>\n<li>\n<p><strong>Linux \u0438 \u043f\u0440\u043e\u0447\u0438\u0435:<\/strong> \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e API \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0446\u0435\u043f\u043e\u0447\u0435\u043a \u043d\u0435\u0442. Go \u0431\u0435\u0440\u0451\u0442 \u043a\u043e\u0440\u043d\u0438 \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 (<code>\/etc\/ssl\/certs\/...<\/code>) \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0443 <strong>\u0441\u0432\u043e\u0438\u043c<\/strong> \u0432\u0435\u0440\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u043c. \u041e\u0442\u0437\u044b\u0432 (CRL, OCSP) \u043e\u043d \u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430 Linux, \u0433\u0434\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0434\u043e\u0432\u043e\u0433\u043e Go, \u043a\u0440\u043e\u043c\u0435 Go-\u0440\u0430\u043d\u0442\u0430\u0439\u043c\u0430 \u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0434\u044b\u0440\u0443 \u0431\u044b\u043b\u043e \u043d\u0435\u0447\u0435\u043c. \u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 <code>ca-certificates<\/code> \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e (\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043d\u0438\u0436\u0435). \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 \u0440\u0435\u043b\u0438\u0437, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0436\u0451\u0441\u0442\u043a\u043e \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 CA.<\/p>\n<h3>\u0425\u0440\u043e\u043d\u043e\u043b\u043e\u0433\u0438\u044f \u0440\u0435\u043b\u0438\u0437\u0430<\/h3>\n<p>\u0412\u0440\u0435\u043c\u044f \u0442\u0438\u0445\u043e\u043e\u043a\u0435\u0430\u043d\u0441\u043a\u043e\u0435 (PDT), 19 \u043e\u043a\u0442\u044f\u0431\u0440\u044f:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\u0412\u0440\u0435\u043c\u044f<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0421\u043e\u0431\u044b\u0442\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">11:45<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u043d\u0435\u0448\u043d\u0438\u0439 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 Go Security \u043e \u043d\u0435\u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0445 Mozilla \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u043e\u0441\u044c\u043c\u0438 CA eMudhra. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u044b\u0441\u0442\u0440\u043e \u0443\u0431\u0435\u0436\u0434\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0432 \u0441\u043b\u0430\u0431\u044b\u0445 \u043a\u043b\u044e\u0447\u0430\u0445<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">12:30<\/p>\n<\/td>\n<td>\n<p align=\"left\">Mozilla \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 \u0438 \u043f\u0440\u043e\u0441\u0438\u0442 \u043d\u0435 \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0438, \u043d\u043e \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">14:00<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0430\u0442\u0447 \u0433\u043e\u0442\u043e\u0432. \u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0435\u0442 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">15:00<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0430\u0447\u0430\u0442 \u0432\u044b\u043f\u0443\u0441\u043a Go 1.27.3 \u0438 1.26.10<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">19:13<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0435\u043b\u0438\u0437 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0438 \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0443\u0442\u0440\u043e 20 \u043e\u043a\u0442\u044f\u0431\u0440\u044f<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043b\u0430\u0431\u044b\u0435 \u043a\u043b\u044e\u0447\u0438 \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044b \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0421\u0430\u043c \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u043e \u0442\u0440\u0435\u043a\u0443 URGENT \u0437\u0430\u043d\u044f\u043b \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u0442\u044b\u0440\u0451\u0445 \u0447\u0430\u0441\u043e\u0432. \u0410\u043d\u043e\u043d\u0441 \u0431\u044b\u043b \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0440\u0430\u0441\u043f\u043b\u044b\u0432\u0447\u0430\u0442\u044b\u043c: Go <em>\u00ab\u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0434\u043e\u0432\u0435\u0440\u0438\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u043c\u0443 \u043d\u0430\u0431\u043e\u0440\u0443 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0438\u0437-\u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0438\u0445 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0435\u0439\u00bb<\/em>. \u0422\u0430\u043a \u0437\u0430\u0449\u0438\u0449\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0441\u0438\u0433\u043d\u0430\u043b \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f, \u0430 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0435 \u043d\u0435 \u0443\u0437\u043d\u0430\u043b\u0438, \u0447\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0438\u0441\u043a\u0430\u0442\u044c.<\/p>\n<h3>\u0422\u0440\u0435\u043a\u0438 security-\u0440\u0435\u043b\u0438\u0437\u043e\u0432 Go<\/h3>\n<p>\u0423 Go \u0435\u0441\u0442\u044c <a href=\"https:\/\/go.dev\/doc\/security\/policy\" rel=\"noopener nofollow\">\u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438<\/a> \u0441 \u0442\u0440\u0435\u043a\u0430\u043c\u0438:<\/p>\n<ul>\n<li>\n<p><strong>PUBLIC:<\/strong> \u043c\u0430\u043b\u043e\u0437\u043d\u0430\u0447\u0438\u043c\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u043c\u0438\u043d\u043e\u0440\u043d\u044b\u0445 \u0440\u0435\u043b\u0438\u0437\u0430\u0445.<\/p>\n<\/li>\n<li>\n<p><strong>PRIVATE:<\/strong> \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u044b\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438. \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0433\u043e\u0442\u043e\u0432\u044f\u0442 \u0437\u0430\u043a\u0440\u044b\u0442\u043e, \u0440\u0435\u043b\u0438\u0437 \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u0443\u044e\u0442 \u0437\u0430 3\u20137 \u0434\u043d\u0435\u0439.<\/p>\n<\/li>\n<li>\n<p><strong>URGENT:<\/strong> \u043d\u043e\u0432\u044b\u0439 \u0442\u0440\u0435\u043a \u0434\u043b\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f \u0432\u043e\u0442-\u0432\u043e\u0442 \u043d\u0430\u0447\u043d\u0451\u0442\u0441\u044f \u0438 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u0442\u044c \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043d\u0435\u043a\u043e\u0433\u0434\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0440\u043e\u0433\u043e\u043d URGENT \u0432\u0441\u043a\u0440\u044b\u043b \u0443\u0437\u043a\u0438\u0435 \u043c\u0435\u0441\u0442\u0430 \u0432 \u0440\u0435\u043b\u0438\u0437\u043d\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435. \u041f\u043e\u043a\u0430 \u0440\u0435\u043b\u0438\u0437 \u0437\u0430\u043d\u0438\u043c\u0430\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439, \u043e\u043d\u0438 \u0431\u044b\u043b\u0438 \u043d\u0435\u0437\u0430\u043c\u0435\u0442\u043d\u044b. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0443\u0436\u0435 \u0438\u0445 \u0443\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442 \u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c URGENT-\u0440\u0435\u043b\u0438\u0437\u044b \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u0442\u0430\u0440\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u0447\u0442\u043e\u0431\u044b \u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0431\u044b\u043b\u043e \u0445\u043e\u0442\u044f \u0431\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u043e\u0432 \u043d\u0430 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0443. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c Go-\u0441\u0435\u0440\u0432\u0438\u0441\u044b, \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c\u0441\u044f \u043d\u0430 <a href=\"https:\/\/groups.google.com\/g\/golang-announce\" rel=\"noopener nofollow\">golang-announce<\/a>, \u0447\u0442\u043e\u0431\u044b \u0442\u0430\u043a\u043e\u0439 \u0430\u043d\u043e\u043d\u0441 \u043d\u0435 \u043f\u0440\u043e\u0448\u0451\u043b \u043c\u0438\u043c\u043e.<\/p>\n<h3>\u0427\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u044f\u043c\u043e \u0441\u0435\u0439\u0447\u0430\u0441<\/h3>\n<ol>\n<li>\n<p>\u041f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c <strong>\u0432\u0441\u0451<\/strong>, \u0447\u0442\u043e \u0445\u043e\u0434\u0438\u0442 \u043f\u043e TLS (\u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0447\u0435\u0440\u0435\u0437 <code>net\/http<\/code>\/<code>crypto\/tls<\/code> \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 gRPC, SDK \u043e\u0431\u043b\u0430\u043a\u043e\u0432, \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0411\u0414), \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c <strong>Go 1.27.3 \u0438\u043b\u0438 1.26.10<\/strong> \u043b\u0438\u0431\u043e \u043d\u043e\u0432\u0435\u0435. \u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0440\u0430\u043d\u0442\u0430\u0439\u043c \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e: \u0432\u0435\u0440\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0437\u0430\u0448\u0438\u0442 \u0432 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a. <strong>Go 1.25 \u0438 \u0431\u043e\u043b\u0435\u0435 \u0440\u0430\u043d\u043d\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0442.<\/strong><\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0447\u0435\u043c \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0438:<\/p>\n<\/li>\n<\/ol>\n<pre><code class=\"bash\">go version                      # \u0432\u0435\u0440\u0441\u0438\u044f \u0442\u0443\u043b\u0447\u0435\u0439\u043d\u0430go version -m .\/bin\/my-service  # \u043a\u0430\u043a\u043e\u0439 Go \u0441\u043e\u0431\u0440\u0430\u043b \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper\"><\/span><\/a><\/div><\/pre>\n<ol start=\"3\">\n<li>\n<p>\u041f\u0440\u043e\u0433\u043d\u0430\u0442\u044c <code>govulncheck<\/code> \u043f\u043e \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0430\u043c:<\/p>\n<\/li>\n<\/ol>\n<pre><code class=\"bash\">GOTOOLCHAIN=go1.27.3+auto go install golang.org\/x\/vuln\/cmd\/govulncheck@latestgovulncheck -mode=binary .\/bin\/my-service<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<ol start=\"4\">\n<li>\n<p>\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043e\u0431\u0440\u0430\u0437\u044b. <code>ca-certificates<\/code> \u0432 Debian \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d (<code>20250419+deb13u1<\/code> \u0434\u043b\u044f trixie, <code>20250419~deb12u2<\/code> \u0434\u043b\u044f bookworm). Distroless- \u0438 scratch-\u043e\u0431\u0440\u0430\u0437\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043e\u0440\u043d\u0435\u0439 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0441\u0431\u043e\u0440\u043a\u0438, \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c.<\/p>\n<\/li>\n<\/ol>\n<p>\u0414\u043b\u044f \u0438\u043d\u0432\u0435\u043d\u0442\u0430\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043f\u0430\u0440\u043a\u0430 \u0443\u0434\u043e\u0431\u043d\u043e \u043f\u0440\u043e\u0439\u0442\u0438\u0441\u044c \u043f\u043e \u0432\u0441\u0435\u043c \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0430\u043c \u0440\u0430\u0437\u043e\u043c:<\/p>\n<pre><code class=\"bash\">find \/usr\/local\/bin \/opt -type f -perm -u+x 2&gt;\/dev\/null | while read -r f; do  v=$(go version \"$f\" 2&gt;\/dev\/null | awk '{print $NF}') || continue  [ -n \"$v\" ] &amp;&amp; echo \"$v $f\"done | sort -V<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<hr\/>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u0438\u0434\u0443\u0442 \u0442\u0435\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0442 \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u043f\u043e\u0441\u0442\u0435.<\/p>\n<h3>\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0430\u0431\u044b\u043c \u0431\u044b\u043b \u043a\u043b\u044e\u0447: \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0435\u0433\u043e \u043d\u0430 Go<\/h3>\n<p>\u041a\u043e\u0440\u0435\u043d\u044c emSign ECC Root CA \u2013 G3 \u044d\u043b\u043b\u0438\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439, \u0437\u043d\u0430\u0447\u0438\u0442 \u0440\u0435\u0447\u044c \u043e ECDSA. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0437\u0434\u0435\u0441\u044c \u2014 \u0442\u043e\u0447\u043a\u0430 \u043d\u0430 \u043a\u0440\u0438\u0432\u043e\u0439 <code>Q = d\u00b7G<\/code>, \u0433\u0434\u0435 <code>G<\/code> \u2014 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u0442\u043e\u0447\u043a\u0430, \u0430 <code>d<\/code> \u2014 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u0441\u043a\u0430\u043b\u044f\u0440. \u0421\u0442\u043e\u0439\u043a\u043e\u0441\u0442\u044c \u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u043e <code>Q<\/code> \u043d\u0435\u043b\u044c\u0437\u044f \u043d\u0430\u0439\u0442\u0438 <code>d<\/code> \u0437\u0430 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, <strong>\u0435\u0441\u043b\u0438 <\/strong><code><strong>d<\/strong><\/code><strong> \u0432\u044b\u0431\u0440\u0430\u043d \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e \u0438\u0437 \u0432\u0441\u0435\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430<\/strong> (\u043e\u043a\u043e\u043b\u043e 2\u00b3\u2078\u2074 \u0434\u043b\u044f P-384). \u0415\u0441\u043b\u0438 <code>d &lt; 256<\/code>, \u0437\u0430\u0434\u0430\u0447\u0430 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043b\u043e\u0433\u0430\u0440\u0438\u0444\u043c\u0430 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u043f\u0435\u0440\u0435\u0431\u043e\u0440\u0443 255 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u044d\u0442\u043e \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u00ab\u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0439 \u0446\u0435\u043d\u0442\u0440\u00bb \u0441 \u043a\u043b\u044e\u0447\u043e\u043c <code>d = 115<\/code>:<\/p>\n<pre><code class=\"go\">\/\/ gen\/main.go \u2014 \u0441\u0430\u043c\u043e\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 CA \u0441 d = 115 \u043d\u0430 P-384 (\u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438!)package mainimport (\"crypto\/ecdh\"\"crypto\/ecdsa\"\"crypto\/elliptic\"\"crypto\/rand\"\"crypto\/x509\"\"crypto\/x509\/pkix\"\"encoding\/pem\"\"math\/big\"\"os\"\"time\")func main() {d := make([]byte, 48) \/\/ \u0441\u043a\u0430\u043b\u044f\u0440 P-384 \u2014 48 \u0431\u0430\u0439\u0442 big-endiand[47] = 115ek, err := ecdh.P384().NewPrivateKey(d)if err != nil {panic(err)}x, y := elliptic.Unmarshal(elliptic.P384(), ek.PublicKey().Bytes())priv := &amp;ecdsa.PrivateKey{PublicKey: ecdsa.PublicKey{Curve: elliptic.P384(), X: x, Y: y},D:         new(big.Int).SetBytes(d),}tmpl := &amp;x509.Certificate{SerialNumber:          big.NewInt(1),Subject:               pkix.Name{CommonName: \"Totally Secure TLS CA - G3X\"},NotBefore:             time.Now(),NotAfter:              time.Now().Add(24 * time.Hour),IsCA:                  true,BasicConstraintsValid: true,KeyUsage:              x509.KeyUsageCertSign,}der, err := x509.CreateCertificate(rand.Reader, tmpl, tmpl, &amp;priv.PublicKey, priv)if err != nil {panic(err)}pem.Encode(os.Stdout, &amp;pem.Block{Type: \"CERTIFICATE\", Bytes: der})}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u043a\u043b\u044e\u0447, \u0437\u043d\u0430\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c <code>crypto\/ecdh<\/code> \u0438 \u043c\u0435\u0442\u043e\u0434 <code>(*ecdsa.PublicKey).ECDH()<\/code> (Go 1.20+), \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0442\u0440\u043e\u0433\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439 <code>crypto\/elliptic<\/code>:<\/p>\n<pre><code class=\"go\">\/\/ recover\/main.go \u2014 \u043f\u0435\u0440\u0435\u0431\u043e\u0440 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 d: Q == d\u00b7G ?package mainimport (\"bytes\"\"crypto\/ecdsa\"\"crypto\/x509\"\"encoding\/pem\"\"fmt\"\"log\"\"os\")func main() {raw, err := os.ReadFile(os.Args[1])if err != nil {log.Fatal(err)}block, _ := pem.Decode(raw)cert, err := x509.ParseCertificate(block.Bytes)if err != nil {log.Fatal(err)}pub, ok := cert.PublicKey.(*ecdsa.PublicKey)if !ok {log.Fatal(\"\u043d\u0435 ECDSA-\u043a\u043b\u044e\u0447\")}target, err := pub.ECDH()if err != nil {log.Fatal(err)}curve := target.Curve()size := (pub.Curve.Params().BitSize + 7) \/ 8scalar := make([]byte, size)const limit = 1 &lt;&lt; 24for d := uint64(1); d &lt; limit; d++ {for i := 0; i &lt; 8; i++ {scalar[size-1-i] = byte(d &gt;&gt; (8 * i))}k, err := curve.NewPrivateKey(scalar)if err != nil {continue}if bytes.Equal(k.PublicKey().Bytes(), target.Bytes()) {fmt.Printf(\"%s: \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043d\u0430\u0439\u0434\u0435\u043d, d = %d\\n\", cert.Subject.CommonName, d)return}}fmt.Printf(\"%s: d &lt; %d \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\\n\", cert.Subject.CommonName, limit)}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<pre><code>$ go run .\/gen &gt; weak.pem &amp;&amp; time go run .\/recover weak.pemTotally Secure TLS CA - G3X: \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043d\u0430\u0439\u0434\u0435\u043d, d = 115real    0m0.270s<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0447\u0442\u0438 \u0432\u0441\u0451 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0443\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e. \u0422\u0430\u043a \u0447\u0442\u043e \u0444\u0440\u0430\u0437\u0430 \u00ab\u043a\u043b\u044e\u0447\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u043a\u0443\u043d\u0434\u044b\u00bb \u0438\u0437 \u043f\u043e\u0441\u0442\u0430 Go \u0432\u043e\u0432\u0441\u0435 \u043d\u0435 \u043f\u0440\u0435\u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435.<\/p>\n<p>\u042d\u0442\u043e\u0442 \u0436\u0435 \u043a\u043e\u0434 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a <strong>\u0434\u0435\u0448\u0451\u0432\u044b\u0439 \u0441\u0430\u043d\u0438\u0442\u0438-\u0447\u0435\u043a \u0434\u043b\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e PKI<\/strong>. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 CA, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0430\u043c\u043e\u043f\u0438\u0441\u043d\u044b\u043c \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c, \u043f\u0440\u043e\u0433\u043e\u043d\u0438\u0442\u0435 \u0435\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0447\u0435\u0440\u0435\u0437 \u0442\u0430\u043a\u043e\u0439 \u043f\u0435\u0440\u0435\u0431\u043e\u0440, \u0430 \u0437\u0430\u043e\u0434\u043d\u043e \u0447\u0435\u0440\u0435\u0437 <a href=\"https:\/\/badkeys.info\/\" rel=\"noopener nofollow\">badkeys<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043b\u043e\u0432\u0438\u0442 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u0441\u043b\u0430\u0431\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 (Debian OpenSSL 2008, ROCA, \u043e\u0431\u0449\u0438\u0435 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043c\u043d\u043e\u0436\u0438\u0442\u0435\u043b\u0438 \u0443 RSA \u0438 \u0442. \u043f.). \u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0448\u043b\u0430, \u043a\u043b\u044e\u0447 \u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0441\u0442\u043e\u0439\u043a\u0438\u043c. \u041d\u043e \u0435\u0441\u043b\u0438 \u043d\u0430\u0448\u043b\u0430, \u0440\u0430\u0437\u0431\u043e\u0440 \u043d\u0430 \u044d\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0442\u044c.<\/p>\n<h3>\u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043a\u043e\u0440\u0435\u043d\u044c<\/h3>\n<p>\u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443: \u0443\u0431\u0440\u0430\u0442\u044c emSign ECC Root CA \u2013 G3 \u0438\u0437 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430, \u0438 \u0434\u0435\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e. Mozilla \u0442\u0430\u043a \u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0430, NSS 3.131.1 \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u044d\u0442\u043e\u0442 \u043a\u043e\u0440\u0435\u043d\u044c. \u041d\u043e \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u043e\u0432 \u0435\u0441\u0442\u044c <strong>\u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043e\u0442 Sectigo AAA Certificate Services<\/strong>, \u0430 \u044d\u0442\u043e \u0441\u0442\u0430\u0440\u044b\u0439 \u0438 \u043e\u0447\u0435\u043d\u044c \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u0435\u043d\u044c. \u041a\u043b\u0438\u0435\u043d\u0442 \u0431\u0435\u0437 \u043a\u043e\u0440\u043d\u044f eMudhra \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0443<\/p>\n<pre><code>leaf (\u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a\u0430) \u2192 EM DV TLS CA - G3B \u2192 [\u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u044c] \u2192 AAA Certificate Services<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0435\u0441\u043b\u0438 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0439 \u043f\u043e\u043b\u043e\u0436\u0438\u0442 \u0432 TLS-\u0440\u0443\u043a\u043e\u043f\u043e\u0436\u0430\u0442\u0438\u0435 \u043d\u0443\u0436\u043d\u044b\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u0430 \u044d\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0432 \u0435\u0433\u043e \u0440\u0443\u043a\u0430\u0445.<\/p>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e <strong>\u0441\u0430\u043c\u0438 \u043a\u043b\u044e\u0447\u0438 \u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u043e\u0432<\/strong>, \u0430 \u043d\u0435 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0438 \u043d\u0435 \u043a\u043e\u0440\u0435\u043d\u044c. \u041e\u0442\u0441\u044e\u0434\u0430 \u0438 \u043f\u043e\u0434\u0445\u043e\u0434 Node.js (\u043e\u0442\u0432\u0435\u0440\u0433\u0430\u0442\u044c \u0446\u0435\u043f\u043e\u0447\u043a\u0438, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043a\u043b\u044e\u0447\u0438) \u0438 Go. \u0411\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e \u043f\u043e <strong>SPKI<\/strong> (SubjectPublicKeyInfo): \u0443 \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 CA \u0440\u0430\u0437\u043d\u044b\u0435 \u0438\u0437\u0434\u0430\u0442\u0435\u043b\u0438, \u0441\u0435\u0440\u0438\u0439\u043d\u0438\u043a\u0438 \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0438, \u0430 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435.<\/p>\n<h3>\u0421\u0432\u043e\u044f \u0437\u0430\u0449\u0438\u0442\u0430 \u0432 Go: deny-list \u043f\u043e SPKI<\/h3>\n<p>\u041f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c, \u0432\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0451 \u0437\u0430 \u0447\u0430\u0441. \u0418\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u043c\u0435\u0442\u044c \u00ab\u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0439 \u0440\u0443\u0431\u0438\u043b\u044c\u043d\u0438\u043a\u00bb \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435, \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439 \u0435\u0441\u043b\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u0441\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u0440\u0430\u043d\u044c\u0448\u0435 \u0440\u0435\u043b\u0438\u0437\u0430. \u0412 <code>crypto\/tls<\/code> \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u0445\u0443\u043a <code>VerifyConnection<\/code>. \u041e\u043d \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <strong>\u043f\u043e\u0441\u043b\u0435<\/strong> \u0448\u0442\u0430\u0442\u043d\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0446\u0435\u043f\u043e\u0447\u043a\u0438, \u043a\u043e\u0433\u0434\u0430 <code>VerifiedChains<\/code> \u0443\u0436\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u044b:<\/p>\n<pre><code class=\"go\">package mainimport (\"crypto\/sha256\"\"crypto\/tls\"\"crypto\/x509\"\"encoding\/hex\"\"fmt\"\"log\"\"net\/http\"\"time\")\/\/ SHA-256 \u043e\u0442 SubjectPublicKeyInfo \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 CA.\/\/ \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0431\u0435\u0440\u0438\u0442\u0435 \u0438\u0437 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u043e\u0432,\/\/ \u0437\u0434\u0435\u0441\u044c \u0437\u0430\u0433\u043b\u0443\u0448\u043a\u0430.var distrustedSPKI = map[string]bool{\"0000000000000000000000000000000000000000000000000000000000000000\": true,}func spkiHash(c *x509.Certificate) string {h := sha256.Sum256(c.RawSubjectPublicKeyInfo)return hex.EncodeToString(h[:])}func denyCompromisedCAs(cs tls.ConnectionState) error {for _, chain := range cs.VerifiedChains {for _, c := range chain {if distrustedSPKI[spkiHash(c)] {return fmt.Errorf(\"tls: \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043d\u0435\u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0439 CA %q\", c.Subject.CommonName)}}}return nil}func main() {tr := http.DefaultTransport.(*http.Transport).Clone()tr.TLSClientConfig = &amp;tls.Config{MinVersion:       tls.VersionTLS12,VerifyConnection: denyCompromisedCAs,}client := &amp;http.Client{Transport: tr, Timeout: 10 * time.Second}resp, err := client.Get(\"https:\/\/go.dev\/\")if err != nil {log.Fatal(err)}defer resp.Body.Close()fmt.Println(resp.Status)}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0436\u043d\u044b\u0445 \u0434\u0435\u0442\u0430\u043b\u0435\u0439:<\/p>\n<ul>\n<li>\n<p><strong>\u0425\u0435\u0448\u0438\u0440\u0443\u0439\u0442\u0435 <\/strong><code><strong>RawSubjectPublicKeyInfo<\/strong><\/code><strong>, \u0430 \u043d\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0446\u0435\u043b\u0438\u043a\u043e\u043c.<\/strong> \u0422\u043e\u043b\u044c\u043a\u043e \u0442\u0430\u043a \u043e\u0434\u043d\u0438\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u043e\u043c \u043f\u043e\u043a\u0440\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439, \u0438 \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u0430.<\/p>\n<\/li>\n<li>\n<p><strong>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0439\u0442\u0435 \u0432\u0441\u0435 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0438\u0437 <\/strong><code><strong>VerifiedChains<\/strong><\/code><strong>.<\/strong> \u0412\u0435\u0440\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0439\u0442\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0443\u0442\u0435\u0439 \u043a \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u043c \u043a\u043e\u0440\u043d\u044f\u043c. \u0417\u0434\u0435\u0441\u044c \u0432\u044b\u0431\u0440\u0430\u043d\u0430 \u043a\u043e\u043d\u0441\u0435\u0440\u0432\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430: \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u044c \u043e\u0434\u0438\u043d \u043f\u0443\u0442\u044c \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043f\u043b\u043e\u0445\u043e\u0439 CA, \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043e\u0442\u0432\u0435\u0440\u0433\u0430\u0435\u0442\u0441\u044f.<\/p>\n<\/li>\n<li>\n<p><strong>\u041f\u0440\u0438 <\/strong><code><strong>InsecureSkipVerify: true<\/strong><\/code><strong> \u043c\u0430\u0441\u0441\u0438\u0432 <\/strong><code><strong>VerifiedChains<\/strong><\/code><strong> \u043f\u0443\u0441\u0442<\/strong>, \u0438 \u0445\u0443\u043a \u043c\u043e\u043b\u0447\u0430 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442. \u042d\u0442\u043e \u0435\u0449\u0451 \u043e\u0434\u043d\u0430 \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0434\u0435\u0440\u0436\u0430\u0442\u044c <code>InsecureSkipVerify<\/code> \u043f\u043e\u0434\u0430\u043b\u044c\u0448\u0435 \u043e\u0442 \u043f\u0440\u043e\u0434\u0430.<\/p>\n<\/li>\n<li>\n<p><code><strong>VerifyPeerCertificate<\/strong><\/code><strong> \u0432 \u044d\u0442\u043e\u0439 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438 \u0445\u0443\u0436\u0435:<\/strong> \u043f\u0440\u0438 \u0432\u043e\u0437\u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u0441\u0435\u0441\u0441\u0438\u0438 \u043e\u043d \u043d\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u0430 <code>VerifyConnection<\/code> \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043f\u0440\u0438 resumption.<\/p>\n<\/li>\n<li>\n<p><strong>\u0425\u0443\u043a \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u0435\u0437\u0434\u0435<\/strong>, \u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u0432\u043e\u0451\u043c <code>http.Client<\/code>. gRPC (<code>credentials.NewTLS(cfg)<\/code>), \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0411\u0414, SDK \u043e\u0431\u043b\u0430\u043a\u043e\u0432 \u0447\u0430\u0441\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u044e\u0442 \u0441\u0432\u043e\u0438 <code>tls.Config<\/code>. \u0423\u0434\u043e\u0431\u043d\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0444\u0430\u0431\u0440\u0438\u043a\u0443 <code>tls.Config<\/code> \u0432 \u043e\u0434\u043d\u043e\u043c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u043c \u043f\u0430\u043a\u0435\u0442\u0435 \u0438 \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u0442\u044c <code>&amp;tls.Config{}<\/code> \u0432 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0435\u0441\u0442\u0430\u0445 \u043b\u0438\u043d\u0442\u0435\u0440\u043e\u043c (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0440\u0430\u0432\u0438\u043b\u043e\u043c <code>forbidigo<\/code>).<\/p>\n<\/li>\n<\/ul>\n<p>\u042d\u0442\u043e <strong>\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435<\/strong> \u043a \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044e Go, \u0430 \u043d\u0435 \u0435\u0433\u043e \u0437\u0430\u043c\u0435\u043d\u0430. \u0417\u0430\u0442\u043e \u0442\u0430\u043a\u043e\u0439 \u0440\u0443\u0431\u0438\u043b\u044c\u043d\u0438\u043a \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043a\u0430\u0442\u0438\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u043c, \u043d\u0435 \u0434\u043e\u0436\u0438\u0434\u0430\u044f\u0441\u044c \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u0432\u0441\u0435\u0433\u043e \u043f\u0430\u0440\u043a\u0430.<\/p>\n<h3>\u0421\u0432\u043e\u0439 \u043d\u0430\u0431\u043e\u0440 \u043a\u043e\u0440\u043d\u0435\u0439 \u0432\u043c\u0435\u0441\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e<\/h3>\n<p>\u0415\u0441\u0442\u044c \u0438 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f: \u043d\u0435 \u043f\u043e\u043b\u0430\u0433\u0430\u0442\u044c\u0441\u044f \u043d\u0430 <code>\/etc\/ssl\/certs<\/code> \u0438 \u044f\u0432\u043d\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u043a\u043e\u0440\u043d\u0438 \u0432 \u043a\u043e\u0434\u0435. \u0412 Go \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430.<\/p>\n<ul>\n<li>\n<p><code><strong>x509.SetFallbackRoots<\/strong><\/code><strong> \u0438 \u043f\u0430\u043a\u0435\u0442 <\/strong><code><strong>golang.org\/x\/crypto\/x509roots\/fallback<\/strong><\/code><strong>.<\/strong> \u0412\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442 \u0432 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a \u043d\u0430\u0431\u043e\u0440 \u043a\u043e\u0440\u043d\u0435\u0439 Mozilla, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f, \u043a\u043e\u0433\u0434\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u043d\u0435\u0442 (scratch-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b, \u044d\u043a\u0437\u043e\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b). \u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c\u044e <code>golang.org\/x\/crypto<\/code>: \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u044e, \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435, \u0438 \u043a\u043e\u0440\u0435\u043d\u044c \u043f\u0440\u043e\u043f\u0430\u0434\u0430\u0435\u0442. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u044d\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e fallback: \u0435\u0441\u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u043a\u043e\u0440\u043d\u0438 \u0435\u0441\u0442\u044c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043e\u043d\u0438.<\/p>\n<\/li>\n<li>\n<p><strong>\u042f\u0432\u043d\u044b\u0439 <\/strong><code><strong>RootCAs<\/strong><\/code><strong> \u0432 <\/strong><code><strong>tls.Config<\/strong><\/code><strong>.<\/strong> \u0414\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u0449\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e \u0441\u0432\u043e\u0438\u043c\u0438 \u044d\u043d\u0434\u043f\u043e\u0438\u043d\u0442\u0430\u043c\u0438, \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0441\u043e\u0442\u043d\u0435 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u043a\u043e\u0440\u043d\u0435\u0439. \u041f\u0443\u043b \u0438\u0437 \u043e\u0434\u043d\u043e\u0433\u043e-\u0434\u0432\u0443\u0445 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 CA \u0440\u0435\u0437\u043a\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u044c \u0430\u0442\u0430\u043a\u0438, \u0438 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u044b \u0432\u0440\u043e\u0434\u0435 eMudhra \u0432\u0430\u0441 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u043a\u0430\u0441\u0430\u044e\u0442\u0441\u044f.<\/p>\n<\/li>\n<\/ul>\n<p>\u041d\u043e \u0443\u0447\u0442\u0438\u0442\u0435 \u0443\u0440\u043e\u043a \u043f\u0440\u043e \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0438: \u0435\u0441\u043b\u0438 \u0432\u044b \u0434\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0435 Sectigo AAA, \u0432\u044b \u0434\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0435 \u0438 \u0432\u0441\u0435\u043c\u0443, \u0447\u0442\u043e \u043e\u043d \u043a\u043e\u0433\u0434\u0430-\u0442\u043e \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043b. \u0422\u043e\u043b\u044c\u043a\u043e \u044f\u0432\u043d\u044b\u0439 deny-list \u043f\u043e \u043a\u043b\u044e\u0447\u0430\u043c (\u043a\u0430\u043a \u0432\u044b\u0448\u0435) \u0438\u043b\u0438 \u043f\u0438\u043d\u043d\u0438\u043d\u0433 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u044d\u0442\u043e\u0442 \u0432\u0435\u043a\u0442\u043e\u0440.<\/p>\n<h3>\u041e\u0442\u0437\u044b\u0432 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0432 Linux: \u043f\u043e\u0447\u0435\u043c\u0443 \u0435\u0433\u043e \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435\u0442<\/h3>\n<p>\u0421\u0430\u043c\u044b\u0439 \u0432\u0430\u0436\u043d\u044b\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0441\u0442\u0430 Go \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0430 Linux \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0435\u0434\u0438\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043e\u0442\u0437\u044b\u0432\u0430, \u0438 Go \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442 \u044d\u0442\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c (<a href=\"https:\/\/github.com\/golang\/go\/issues\/82402\" rel=\"noopener nofollow\">golang\/go#82402<\/a>).<\/p>\n<p>\u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043f\u043b\u043e\u0445\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0442:<\/p>\n<ul>\n<li>\n<p><strong>CRL.<\/strong> \u0421\u043f\u0438\u0441\u043a\u0438 \u043e\u0442\u0437\u044b\u0432\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0435, \u0438\u0445 \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c. \u041c\u043d\u043e\u0433\u0438\u0435 CA \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u044e\u0442 \u0438\u0445 \u0431\u0435\u0437 \u043e\u0441\u043e\u0431\u043e\u0439 \u0437\u0430\u0431\u043e\u0442\u044b \u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e CA \u0441\u0432\u043e\u0439 \u0441\u043f\u0438\u0441\u043e\u043a.<\/p>\n<\/li>\n<li>\n<p><strong>OCSP.<\/strong> \u0417\u0430\u043f\u0440\u043e\u0441 \u043a CA \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438: \u043b\u0438\u0448\u043d\u044f\u044f \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430 \u0438 \u0443\u0442\u0435\u0447\u043a\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0442\u043e\u043c, \u043a\u0443\u0434\u0430 \u0432\u044b \u0445\u043e\u0434\u0438\u0442\u0435. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 soft-fail \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0439, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0439 \u0441\u0434\u0435\u043b\u0430\u0442\u044c MITM, \u043b\u0435\u0433\u043a\u043e \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0438 OCSP. Let\u2019s Encrypt \u0443\u0436\u0435 \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043e\u0442 OCSP \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 CRL, \u0430 CA\/B Forum \u0441\u0434\u0435\u043b\u0430\u043b OCSP \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c.<\/p>\n<\/li>\n<li>\n<p><strong>OCSP stapling<\/strong> \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0430 \u0432 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u043c \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0435\u043c\u0443.<\/p>\n<\/li>\n<\/ul>\n<p>\u0411\u0440\u0430\u0443\u0437\u0435\u0440\u044b \u0434\u0430\u0432\u043d\u043e \u0440\u0435\u0448\u0430\u044e\u0442 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443 \u0438\u043d\u0430\u0447\u0435: \u0432\u0435\u043d\u0434\u043e\u0440 \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u0443\u0435\u0442 \u043e\u0442\u0437\u044b\u0432\u044b \u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0443 \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443. \u0412 Firefox \u044d\u0442\u043e OneCRL (\u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u043e\u0432) \u0438 CRLite (\u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u043d\u0430 \u043a\u0430\u0441\u043a\u0430\u0434\u0435 Bloom-\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432), \u0432 Chrome \u2014 CRLSets. \u0418\u043c\u0435\u043d\u043d\u043e \u043f\u043e\u044d\u0442\u043e\u043c\u0443 Firefox \u0438 Chrome \u0431\u044b\u043b\u0438 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u044b 17 \u043e\u043a\u0442\u044f\u0431\u0440\u044f, \u0430 Go \u043d\u0430 Linux \u2014 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 19-\u0433\u043e, \u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438.<\/p>\n<p>Go \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442 upki \u0438\u0437 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 rustls (\u043f\u0440\u043e\u0435\u043a\u0442 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 Canonical, \u0441\u043c. <a href=\"https:\/\/discourse.ubuntu.com\/t\/upki-improving-certificate-revocation-on-linux\/79576\" rel=\"noopener nofollow\">\u0430\u043d\u043e\u043d\u0441 \u043d\u0430 Ubuntu Discourse<\/a>). \u0426\u0435\u043b\u044c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u2014 \u0434\u0430\u0442\u044c Linux \u043d\u0430\u0434\u0451\u0436\u043d\u044b\u0439, \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043e\u0442\u0437\u044b\u0432\u0430 \u0432 \u0434\u0443\u0445\u0435 CRLite, \u043e\u0431\u0449\u0438\u0439 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 TLS-\u0441\u0442\u0435\u043a\u043e\u0432. \u0415\u0441\u043b\u0438 \u0432\u0441\u0451 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f, \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442 \u043d\u0430 Linux \u0437\u0430\u043a\u0440\u043e\u044e\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445, \u0430 \u043d\u0435 \u044d\u043a\u0441\u0442\u0440\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u043e\u0439 \u0432\u0441\u0435\u0445 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u043e\u0432.<\/p>\n<h3>\u041a\u0430\u043a \u043e\u0431\u0441\u0442\u043e\u044f\u0442 \u0434\u0435\u043b\u0430 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445<\/h3>\n<p>\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0442\u044b \u043a\u0430\u0440\u0442\u0438\u043d\u044b, \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\u042d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Go<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.27.3 \/ 1.26.10, \u043d\u0443\u0436\u043d\u0430 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0430 (CVE-2026-111943)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Node.js<\/p>\n<\/td>\n<td>\n<p align=\"left\">22.23.4, 24.22.1, 26.12.1, \u043d\u0443\u0436\u0435\u043d \u0440\u0435\u0441\u0442\u0430\u0440\u0442<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Python certifi<\/p>\n<\/td>\n<td>\n<p align=\"left\">2026.10.19 (pip 26.2.2, uv 0.13.4+)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Rust<\/p>\n<\/td>\n<td>\n<p align=\"left\">webpki-roots \/ webpki-root-certs 1.0.10, rustls-webpki 0.103.16<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">PHP Composer ca-bundle<\/p>\n<\/td>\n<td>\n<p align=\"left\">1.6.0, 1.4.16<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">NSS<\/p>\n<\/td>\n<td>\n<p align=\"left\">3.131.1 (\u043a\u043e\u0440\u0435\u043d\u044c \u0443\u0434\u0430\u043b\u0451\u043d)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Debian ca-certificates<\/p>\n<\/td>\n<td>\n<p align=\"left\">20250419+deb13u1, 20250419~deb12u2<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">Firefox \/ Thunderbird<\/p>\n<\/td>\n<td>\n<p align=\"left\">158.0.1, ESR 153.5.1 \/ 115.43.1<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Java \u0438 \u0433\u043e\u043b\u044b\u0439 OpenSSL \u0432 \u044d\u0442\u043e\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u0435 \u043f\u043e\u043f\u0430\u043b\u0438: \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0439\u0442\u0435 \u0431\u044e\u043b\u043b\u0435\u0442\u0435\u043d\u0438 \u0441\u0432\u043e\u0435\u0433\u043e \u0432\u0435\u043d\u0434\u043e\u0440\u0430. \u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0432\u0438\u0441\u0438\u0442\u0435 \u043e\u0442 <code>ca-certificates<\/code> \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430, \u043e\u0446\u0435\u043d\u0438\u0442\u0435, \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043b\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u0440\u043d\u044f \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0435\u0439 (\u0441\u043c. \u0432\u044b\u0448\u0435).<\/p>\n<h3>\u0412\u044b\u0432\u043e\u0434\u044b<\/h3>\n<ul>\n<li>\n<p>\u0421\u043b\u0430\u0431\u044b\u0439 \u043a\u043b\u044e\u0447 \u2014 \u044d\u0442\u043e \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u00ab\u043c\u0430\u043b\u043e \u0431\u0438\u0442 \u0432 RSA\u00bb. \u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u043e\u0434\u043d\u043e\u043c \u0441\u043a\u0440\u0438\u043f\u0442\u0435 \u043d\u0430 \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0439 \u0446\u0435\u0440\u0435\u043c\u043e\u043d\u0438\u0438 \u0441\u0434\u0435\u043b\u0430\u043b\u0430 \u0432\u043e\u0441\u0435\u043c\u044c CA \u043f\u043e\u0434\u0434\u0435\u043b\u044b\u0432\u0430\u0435\u043c\u044b\u043c\u0438 \u0437\u0430 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u043a\u0443\u043d\u0434\u044b. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0439\u0442\u0435 \u043a\u043b\u044e\u0447\u0438 \u0441\u0432\u043e\u0435\u0433\u043e PKI \u0445\u043e\u0442\u044f \u0431\u044b \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u043f\u0435\u0440\u0435\u0431\u043e\u0440\u043e\u043c \u0438 badkeys.<\/p>\n<\/li>\n<li>\n<p>\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u0440\u043d\u044f \u043d\u0435 \u0440\u0430\u0432\u043d\u043e \u043e\u0442\u0437\u044b\u0432\u0443: \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u044e\u0442 \u043f\u0443\u0442\u044c \u0434\u043e\u0432\u0435\u0440\u0438\u044f. \u0411\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e \u043f\u043e \u043a\u043b\u044e\u0447\u0443 (SPKI).<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430 Linux Go-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043e \u0440\u043e\u0432\u043d\u043e \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043a\u043e, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0432\u0435\u0436 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043e\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u043d\u043e. \u0418\u043d\u0432\u0435\u043d\u0442\u0430\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u043e\u0432 (<code>go version -m<\/code>, <code>govulncheck -mode=binary<\/code>) \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c, \u0430 \u043d\u0435 \u0440\u0435\u0430\u043a\u0446\u0438\u0435\u0439 \u043d\u0430 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442.<\/p>\n<\/li>\n<li>\n<p>\u0414\u0435\u0440\u0436\u0438\u0442\u0435 \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0439 \u0440\u0443\u0431\u0438\u043b\u044c\u043d\u0438\u043a: \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0444\u0430\u0431\u0440\u0438\u043a\u0430 <code>tls.Config<\/code> \u0441 <code>VerifyConnection<\/code> \u0434\u0430\u0441\u0442 \u0432\u044b\u043a\u0430\u0442\u0438\u0442\u044c \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u043c.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0434\u043f\u0438\u0448\u0438\u0442\u0435\u0441\u044c \u043d\u0430 golang-announce: \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 URGENT-\u0440\u0435\u043b\u0438\u0437 \u043c\u043e\u0433\u0443\u0442 \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435\u0433\u043e \u0437\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u043e\u0432.<\/p>\n<\/li>\n<\/ul>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 Go \u0438 Mozilla \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043e\u0431\u0440\u0430\u0437\u0446\u043e\u0432\u043e: \u043f\u0430\u0442\u0447 \u0432\u044b\u0448\u0435\u043b \u0440\u0430\u043d\u044c\u0448\u0435, \u0447\u0435\u043c \u043a\u043b\u044e\u0447\u0438 \u0441\u0442\u0430\u043b\u0438 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u043c\u0438. \u041d\u043e \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435 \u043e\u043a\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043a\u043e\u0440\u043e\u0447\u0435, \u0442\u0430\u043a \u0447\u0442\u043e \u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u0441\u0442\u043e\u0438\u0442 \u0437\u0430\u0440\u0430\u043d\u0435\u0435.<\/p>\n<p><strong>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438:<\/strong> <a href=\"https:\/\/go.dev\/blog\/emudhra-incident\" rel=\"noopener nofollow\">Our Response To The eMudhra Key Disclosure Incident \u2014 The Go Blog<\/a> \u00b7 <a href=\"https:\/\/www.helpnetsecurity.com\/2026\/10\/21\/emudhra-certificates-private-keys-compromised\/\" rel=\"noopener nofollow\">Help Net Security<\/a> \u00b7 <a href=\"https:\/\/www.rescana.com\/post\/emudhra-intermediate-ca-key-compromise-october-2026\" rel=\"noopener nofollow\">Rescana<\/a> \u00b7 <a href=\"https:\/\/inc42.com\/buzz\/emudhras-security-key-flaw-what-went-wrong-and-why-google-mozilla-stepped-in\/\" rel=\"noopener nofollow\">Inc42<\/a> \u00b7 <a href=\"https:\/\/groups.google.com\/a\/mozilla.org\/g\/dev-security-policy\/c\/0R3XLJL6FuE\" rel=\"noopener nofollow\">Mozilla dev-security-policy<\/a><\/p>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1100286\/\">https:\/\/habr.com\/ru\/articles\/1100286\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>17 \u043e\u043a\u0442\u044f\u0431\u0440\u044f 2026 \u0433\u043e\u0434\u0430 Mozilla \u0431\u0435\u0437 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0439 \u0432\u043d\u0435\u0441\u043b\u0430 \u0432 OneCRL \u0432\u043e\u0441\u0435\u043c\u044c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0435\u0433\u043e \u0446\u0435\u043d\u0442\u0440\u0430 eMudhra. \u0427\u0435\u0440\u0435\u0437 \u0434\u0432\u043e\u0435 \u0441\u0443\u0442\u043e\u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 Go \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 1.27.3 \u0438 1.26.10, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b\u0438 \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u044d\u0442\u0438\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430\u043c. \u041e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0434\u043e \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430 \u043f\u0440\u043e\u0448\u043b\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u0441\u0435\u043c\u0438 \u0441 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u043e\u0439 \u0447\u0430\u0441\u043e\u0432. \u042d\u0442\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 Go, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0439 \u043f\u043e \u043d\u043e\u0432\u043e\u043c\u0443 \u0442\u0440\u0435\u043a\u0443 URGENT.26 \u043e\u043a\u0442\u044f\u0431\u0440\u044f Roland Shoemaker \u0438\u0437 Go Security \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0440\u0430\u0437\u0431\u043e\u0440 \u0438\u043d\u0446\u0438\u0434\u0435\u043d\u0442\u0430. \u041d\u0438\u0436\u0435 \u0435\u0433\u043e \u043f\u0435\u0440\u0435\u0441\u043a\u0430\u0437 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u043e\u043c \u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u0435 \u043d\u0435\u0442: \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0430\u0431\u044b\u043c\u0438 \u0431\u044b\u043b\u0438 \u043a\u043b\u044e\u0447\u0438 (\u0441 \u043a\u043e\u0434\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0445 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442), \u043f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043a\u043e\u0440\u0435\u043d\u044c, \u043a\u0430\u043a \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 Go-\u0441\u0435\u0440\u0432\u0438\u0441, \u043d\u0435 \u0434\u043e\u0436\u0438\u0434\u0430\u044f\u0441\u044c \u0440\u0435\u043b\u0438\u0437\u0430, \u0438 \u0447\u0442\u043e \u043d\u0435 \u0442\u0430\u043a \u0441 \u043e\u0442\u0437\u044b\u0432\u043e\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0432 Linux.\u0427\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e\u0412\u043e\u0441\u0435\u043c\u044c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 CA eMudhra \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u044b \u043e\u0442 \u043a\u043e\u0440\u043d\u044f emSign ECC Root CA \u2013 G3. \u0428\u0435\u0441\u0442\u044c \u0438\u0437 \u043d\u0438\u0445 \u0432\u044b\u0434\u0430\u044e\u0442 TLS-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b (DV, OV \u0438 EV, \u043f\u043e \u0434\u0432\u0430 \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f G3B\/G3C), \u0435\u0449\u0451 \u0434\u0432\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u043a\u043e\u0434. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u0435\u0441\u0442\u044c \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043e\u0442 \u043a\u043e\u0440\u043d\u044f Sectigo AAA Certificate Services.\u041a\u043b\u044e\u0447\u0438 \u044d\u0442\u0438\u0445 CA \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u043d\u0430 \u0446\u0435\u0440\u0435\u043c\u043e\u043d\u0438\u0438 30 \u0430\u043f\u0440\u0435\u043b\u044f 2025 \u0433\u043e\u0434\u0430. \u041f\u043e \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c\u0443 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u044e eMudhra, \u043e\u0448\u0438\u0431\u043a\u0430 \u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u043b\u0430 \u0432\u0442\u043e\u0440\u043e\u0439, \u0441\u043b\u0430\u0431\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u043a\u043b\u044e\u0447\u0435\u0439. \u041c\u0435\u0442\u043a\u0438 \u0443 \u043d\u0438\u0445 \u0431\u044b\u043b\u0438 \u043f\u043e\u0447\u0442\u0438 \u0442\u0430\u043a\u0438\u0435 \u0436\u0435, \u043a\u0430\u043a \u0443 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445, \u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u043f\u043e \u043e\u0448\u0438\u0431\u043a\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0438\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u0438 \u043a\u043b\u044e\u0447\u0438.\u00ab\u0421\u043b\u0430\u0431\u044b\u0439\u00bb \u0437\u0434\u0435\u0441\u044c \u0437\u043d\u0430\u0447\u0438\u0442 \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435: \u043a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 \u043c\u0435\u043d\u044c\u0448\u0435 256. \u0421\u0440\u0435\u0434\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0431\u044b\u043b\u0438 4, 56 \u0438 115. \u041d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u2014 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0434\u043b\u0438\u043d\u043e\u0439 \u043e\u043a\u043e\u043b\u043e \u0441\u043e\u0442\u043d\u0438 \u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u044b\u0445 \u0446\u0438\u0444\u0440.\u0422\u0430\u043a\u0438\u0435 \u043a\u043b\u044e\u0447\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0438\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0437\u0430 \u0434\u043e\u043b\u0438 \u0441\u0435\u043a\u0443\u043d\u0434\u044b \u043d\u0430 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0435. \u0412\u043b\u0430\u0434\u0435\u043b\u0435\u0446 \u0442\u0430\u043a\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u0430\u043b\u0438\u0434\u043d\u044b\u0439 TLS-\u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043d\u0430 \u043b\u044e\u0431\u043e\u0439 \u0434\u043e\u043c\u0435\u043d. \u041a\u043b\u0438\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u0432\u0435\u0440\u044f\u044e\u0442 \u043a\u043e\u0440\u043d\u044e eMudhra \u0438\u043b\u0438 \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u0438 Sectigo, \u043f\u0440\u0438\u043c\u0443\u0442 \u0442\u0430\u043a\u043e\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u0438 \u044d\u0442\u043e \u0433\u043e\u0442\u043e\u0432\u044b\u0439 MITM.\u041a\u0440\u0430\u0442\u043a\u043e \u043e \u0445\u0440\u043e\u043d\u043e\u043b\u043e\u0433\u0438\u0438:17 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. \u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 Apple, Google, Microsoft, Mozilla \u0438 eMudhra. Mozilla \u0432 \u0442\u043e\u0442 \u0436\u0435 \u0434\u0435\u043d\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043a\u043b\u044e\u0447\u0438 \u0438 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0447\u0435\u0440\u0435\u0437 OneCRL. Chrome \u0442\u043e\u0436\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0438\u0445 \u0432 \u0434\u0435\u043d\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f.18 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. eMudhra \u043e\u0442\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b.19 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. Apple, \u0440\u0435\u043b\u0438\u0437 Go.20 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. Microsoft. \u0423\u0442\u0440\u043e\u043c \u0442\u043e\u0433\u043e \u0436\u0435 \u0434\u043d\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u0441\u043b\u0430\u0431\u043e\u0441\u0442\u044c \u043a\u043b\u044e\u0447\u0435\u0439.27 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. \u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u0440\u043d\u044f eMudhra \u0438\u0437 Chrome Root Store \u0434\u043e\u0445\u043e\u0434\u0438\u0442 \u0434\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.\u0412 \u043b\u043e\u0433\u0430\u0445 Certificate Transparency \u043d\u0435\u0442 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0448\u0435\u0441\u0442\u044c\u044e TLS-\u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u0430\u043c\u0438. \u0410\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e.\u041f\u043e\u0447\u0435\u043c\u0443 Go \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0432\u043c\u0435\u0448\u0438\u0432\u0430\u0442\u044c\u0441\u044f\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0432 Go \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445:Windows \u0438 macOS: crypto\/x509 \u0434\u0435\u043b\u0435\u0433\u0438\u0440\u0443\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 (CryptoAPI \u0438 Security.framework). \u041a\u043e\u0433\u0434\u0430 Microsoft \u0438 Apple \u0432\u044b\u043a\u0430\u0442\u0438\u043b\u0438 \u043e\u0442\u0437\u044b\u0432, Go-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0430 \u044d\u0442\u0438\u0445 \u041e\u0421 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0435\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438.Linux \u0438 \u043f\u0440\u043e\u0447\u0438\u0435: \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e API \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0446\u0435\u043f\u043e\u0447\u0435\u043a \u043d\u0435\u0442. Go \u0431\u0435\u0440\u0451\u0442 \u043a\u043e\u0440\u043d\u0438 \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 (\/etc\/ssl\/certs\/&#8230;) \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0443 \u0441\u0432\u043e\u0438\u043c \u0432\u0435\u0440\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u043c. \u041e\u0442\u0437\u044b\u0432 (CRL, OCSP) \u043e\u043d \u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442.\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430 Linux, \u0433\u0434\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0434\u043e\u0432\u043e\u0433\u043e Go, \u043a\u0440\u043e\u043c\u0435 Go-\u0440\u0430\u043d\u0442\u0430\u0439\u043c\u0430 \u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0434\u044b\u0440\u0443 \u0431\u044b\u043b\u043e \u043d\u0435\u0447\u0435\u043c. \u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 ca-certificates \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e (\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043d\u0438\u0436\u0435). \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 \u0440\u0435\u043b\u0438\u0437, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0436\u0451\u0441\u0442\u043a\u043e \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 \u0441\u043a\u043e\u043c\u043f\u0440\u043e\u043c\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 CA.\u0425\u0440\u043e\u043d\u043e\u043b\u043e\u0433\u0438\u044f \u0440\u0435\u043b\u0438\u0437\u0430\u0412\u0440\u0435\u043c\u044f \u0442\u0438\u0445\u043e\u043e\u043a\u0435\u0430\u043d\u0441\u043a\u043e\u0435 (PDT), 19 \u043e\u043a\u0442\u044f\u0431\u0440\u044f:\u0412\u0440\u0435\u043c\u044f\u0421\u043e\u0431\u044b\u0442\u0438\u043511:45\u0412\u043d\u0435\u0448\u043d\u0438\u0439 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 Go Security \u043e \u043d\u0435\u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0445 Mozilla \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u043e\u0441\u044c\u043c\u0438 CA eMudhra. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0431\u044b\u0441\u0442\u0440\u043e \u0443\u0431\u0435\u0436\u0434\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0432 \u0441\u043b\u0430\u0431\u044b\u0445 \u043a\u043b\u044e\u0447\u0430\u044512:30Mozilla \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 \u0438 \u043f\u0440\u043e\u0441\u0438\u0442 \u043d\u0435 \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0438, \u043d\u043e \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u043514:00\u041f\u0430\u0442\u0447 \u0433\u043e\u0442\u043e\u0432. \u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0435\u0442 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u043815:00\u041d\u0430\u0447\u0430\u0442 \u0432\u044b\u043f\u0443\u0441\u043a Go 1.27.3 \u0438 1.26.1019:13\u0420\u0435\u043b\u0438\u0437 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0438 \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0443\u0442\u0440\u043e 20 \u043e\u043a\u0442\u044f\u0431\u0440\u044f\u0421\u043b\u0430\u0431\u044b\u0435 \u043a\u043b\u044e\u0447\u0438 \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044b \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0421\u0430\u043c \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u043e \u0442\u0440\u0435\u043a\u0443 URGENT \u0437\u0430\u043d\u044f\u043b \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u0442\u044b\u0440\u0451\u0445 \u0447\u0430\u0441\u043e\u0432. \u0410\u043d\u043e\u043d\u0441 \u0431\u044b\u043b \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0440\u0430\u0441\u043f\u043b\u044b\u0432\u0447\u0430\u0442\u044b\u043c: Go \u00ab\u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 \u0434\u043e\u0432\u0435\u0440\u0438\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u043c\u0443 \u043d\u0430\u0431\u043e\u0440\u0443 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0438\u0437-\u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0438\u0445 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0435\u0439\u00bb. \u0422\u0430\u043a \u0437\u0430\u0449\u0438\u0449\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0441\u0438\u0433\u043d\u0430\u043b \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f, \u0430 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0435 \u043d\u0435 \u0443\u0437\u043d\u0430\u043b\u0438, \u0447\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0438\u0441\u043a\u0430\u0442\u044c.\u0422\u0440\u0435\u043a\u0438 security-\u0440\u0435\u043b\u0438\u0437\u043e\u0432 Go\u0423 Go \u0435\u0441\u0442\u044c \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0441 \u0442\u0440\u0435\u043a\u0430\u043c\u0438:PUBLIC: \u043c\u0430\u043b\u043e\u0437\u043d\u0430\u0447\u0438\u043c\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u043c\u0438\u043d\u043e\u0440\u043d\u044b\u0445 \u0440\u0435\u043b\u0438\u0437\u0430\u0445.PRIVATE: \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u044b\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438. \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0433\u043e\u0442\u043e\u0432\u044f\u0442 \u0437\u0430\u043a\u0440\u044b\u0442\u043e, \u0440\u0435\u043b\u0438\u0437 \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u0443\u044e\u0442 \u0437\u0430 3\u20137 \u0434\u043d\u0435\u0439.URGENT: \u043d\u043e\u0432\u044b\u0439 \u0442\u0440\u0435\u043a \u0434\u043b\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f \u0432\u043e\u0442-\u0432\u043e\u0442 \u043d\u0430\u0447\u043d\u0451\u0442\u0441\u044f \u0438 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u0442\u044c \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043d\u0435\u043a\u043e\u0433\u0434\u0430.\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0440\u043e\u0433\u043e\u043d URGENT \u0432\u0441\u043a\u0440\u044b\u043b \u0443\u0437\u043a\u0438\u0435 \u043c\u0435\u0441\u0442\u0430 \u0432 \u0440\u0435\u043b\u0438\u0437\u043d\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435. \u041f\u043e\u043a\u0430 \u0440\u0435\u043b\u0438\u0437 \u0437\u0430\u043d\u0438\u043c\u0430\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439, \u043e\u043d\u0438 \u0431\u044b\u043b\u0438 \u043d\u0435\u0437\u0430\u043c\u0435\u0442\u043d\u044b. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0443\u0436\u0435 \u0438\u0445 \u0443\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442 \u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0430\u043d\u043e\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c URGENT-\u0440\u0435\u043b\u0438\u0437\u044b \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u0442\u0430\u0440\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u0447\u0442\u043e\u0431\u044b \u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0431\u044b\u043b\u043e \u0445\u043e\u0442\u044f \u0431\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u043e\u0432 \u043d\u0430 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0443. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c Go-\u0441\u0435\u0440\u0432\u0438\u0441\u044b, \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c\u0441\u044f \u043d\u0430 golang-announce, \u0447\u0442\u043e\u0431\u044b \u0442\u0430\u043a\u043e\u0439 \u0430\u043d\u043e\u043d\u0441 \u043d\u0435 \u043f\u0440\u043e\u0448\u0451\u043b \u043c\u0438\u043c\u043e.\u0427\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u044f\u043c\u043e \u0441\u0435\u0439\u0447\u0430\u0441\u041f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0451, \u0447\u0442\u043e \u0445\u043e\u0434\u0438\u0442 \u043f\u043e TLS (\u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0447\u0435\u0440\u0435\u0437 net\/http\/crypto\/tls \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 gRPC, SDK \u043e\u0431\u043b\u0430\u043a\u043e\u0432, \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0411\u0414), \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c Go 1.27.3 \u0438\u043b\u0438 1.26.10 \u043b\u0438\u0431\u043e \u043d\u043e\u0432\u0435\u0435. \u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0440\u0430\u043d\u0442\u0430\u0439\u043c \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e: \u0432\u0435\u0440\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0437\u0430\u0448\u0438\u0442 \u0432 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a. Go 1.25 \u0438 \u0431\u043e\u043b\u0435\u0435 \u0440\u0430\u043d\u043d\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0442.\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0447\u0435\u043c \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0438:go version                      # \u0432\u0435\u0440\u0441\u0438\u044f \u0442\u0443\u043b\u0447\u0435\u0439\u043d\u0430go version -m .\/bin\/my-service  # \u043a\u0430\u043a\u043e\u0439 Go \u0441\u043e\u0431\u0440\u0430\u043b \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u041f\u0440\u043e\u0433\u043d\u0430\u0442\u044c govulncheck \u043f\u043e \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0430\u043c:GOTOOLCHAIN=go1.27.3+auto go install golang.org\/x\/vuln\/cmd\/govulncheck@latestgovulncheck -mode=binary .\/bin\/my-service\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043e\u0431\u0440\u0430\u0437\u044b. ca-certificates \u0432 Debian \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d (20250419+deb13u1 \u0434\u043b\u044f trixie, 20250419~deb12u2 \u0434\u043b\u044f bookworm). Distroless- \u0438 scratch-\u043e\u0431\u0440\u0430\u0437\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043e\u0440\u043d\u0435\u0439 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0441\u0431\u043e\u0440\u043a\u0438, \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c.\u0414\u043b\u044f \u0438\u043d\u0432\u0435\u043d\u0442\u0430\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043f\u0430\u0440\u043a\u0430 \u0443\u0434\u043e\u0431\u043d\u043e \u043f\u0440\u043e\u0439\u0442\u0438\u0441\u044c \u043f\u043e \u0432\u0441\u0435\u043c \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0430\u043c \u0440\u0430\u0437\u043e\u043c:find \/usr\/local\/bin \/opt -type f -perm -u+x 2&gt;\/dev\/null | while read -r f; do  v=$(go version &#171;$f&#187; 2&gt;\/dev\/null | awk &#8216;{print $NF}&#8217;) || continue  [ -n &#171;$v&#187; ] &amp;&amp; echo &#171;$v $f&#187;done | sort -V\u0414\u0430\u043b\u044c\u0448\u0435 \u0438\u0434\u0443\u0442 \u0442\u0435\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0442 \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u043f\u043e\u0441\u0442\u0435.\u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0430\u0431\u044b\u043c \u0431\u044b\u043b \u043a\u043b\u044e\u0447: \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0435\u0433\u043e \u043d\u0430 Go\u041a\u043e\u0440\u0435\u043d\u044c emSign ECC Root CA \u2013 G3 \u044d\u043b\u043b\u0438\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439, \u0437\u043d\u0430\u0447\u0438\u0442 \u0440\u0435\u0447\u044c \u043e ECDSA. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0437\u0434\u0435\u0441\u044c \u2014 \u0442\u043e\u0447\u043a\u0430 \u043d\u0430 \u043a\u0440\u0438\u0432\u043e\u0439 Q = d\u00b7G, \u0433\u0434\u0435 G \u2014 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u0442\u043e\u0447\u043a\u0430, \u0430 d \u2014 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u0441\u043a\u0430\u043b\u044f\u0440. \u0421\u0442\u043e\u0439\u043a\u043e\u0441\u0442\u044c \u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u043e Q \u043d\u0435\u043b\u044c\u0437\u044f \u043d\u0430\u0439\u0442\u0438 d \u0437\u0430 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, \u0435\u0441\u043b\u0438 d \u0432\u044b\u0431\u0440\u0430\u043d \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e \u0438\u0437 \u0432\u0441\u0435\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430 (\u043e\u043a\u043e\u043b\u043e 2\u00b3\u2078\u2074 \u0434\u043b\u044f P-384). \u0415\u0441\u043b\u0438 d &lt; 256, \u0437\u0430\u0434\u0430\u0447\u0430 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043b\u043e\u0433\u0430\u0440\u0438\u0444\u043c\u0430 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u043f\u0435\u0440\u0435\u0431\u043e\u0440\u0443 255 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432.\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u044d\u0442\u043e \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u00ab\u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u044e\u0449\u0438\u0439 \u0446\u0435\u043d\u0442\u0440\u00bb \u0441 \u043a\u043b\u044e\u0447\u043e\u043c d = 115:\/\/ gen\/main.go \u2014 \u0441\u0430\u043c\u043e\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 CA \u0441 d = 115 \u043d\u0430 P-384 (\u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438!)package mainimport (&#171;crypto\/ecdh&#187;&#187;crypto\/ecdsa&#187;&#187;crypto\/elliptic&#187;&#187;crypto\/rand&#187;&#187;crypto\/x509&#8243;&#187;crypto\/x509\/pkix&#187;&#187;encoding\/pem&#187;&#187;math\/big&#187;&#187;os&#187;&#187;time&#187;)func main() {d := make([]byte, 48) \/\/ \u0441\u043a\u0430\u043b\u044f\u0440 P-384 \u2014 48 \u0431\u0430\u0439\u0442 big-endiand[47] = 115ek, err := ecdh.P384().NewPrivateKey(d)if err != nil {panic(err)}x, y := elliptic.Unmarshal(elliptic.P384(), ek.PublicKey().Bytes())priv := &amp;ecdsa.PrivateKey{PublicKey: ecdsa.PublicKey{Curve: elliptic.P384(), X: x, Y: y},D:         new(big.Int).SetBytes(d),}tmpl := &amp;x509.Certificate{SerialNumber:          big.NewInt(1),Subject:               pkix.Name{CommonName: &#171;Totally Secure TLS CA &#8212; G3X&#187;},NotBefore:             time.Now(),NotAfter:              time.Now().Add(24 * time.Hour),IsCA:                  true,BasicConstraintsValid: true,KeyUsage:              x509.KeyUsageCertSign,}der, err := x509.CreateCertificate(rand.Reader, tmpl, tmpl, &amp;priv.PublicKey, priv)if err != nil {panic(err)}pem.Encode(os.Stdout, &amp;pem.Block{Type: &#171;CERTIFICATE&#187;, Bytes: der})}\u0422\u0435\u043f\u0435\u0440\u044c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u043a\u043b\u044e\u0447, \u0437\u043d\u0430\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c crypto\/ecdh \u0438 \u043c\u0435\u0442\u043e\u0434 (*ecdsa.PublicKey).ECDH() (Go 1.20+), \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0442\u0440\u043e\u0433\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0439 crypto\/elliptic:\/\/ recover\/main.go \u2014 \u043f\u0435\u0440\u0435\u0431\u043e\u0440 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 d: Q == d\u00b7G ?package mainimport (&#171;bytes&#187;&#187;crypto\/ecdsa&#187;&#187;crypto\/x509&#8243;&#187;encoding\/pem&#187;&#187;fmt&#187;&#187;log&#187;&#187;os&#187;)func main() {raw, err := os.ReadFile(os.Args[1])if err != nil {log.Fatal(err)}block, _ := pem.Decode(raw)cert, err := x509.ParseCertificate(block.Bytes)if err != nil {log.Fatal(err)}pub, ok := cert.PublicKey.(*ecdsa.PublicKey)if !ok {log.Fatal(&#171;\u043d\u0435 ECDSA-\u043a\u043b\u044e\u0447&#187;)}target, err := pub.ECDH()if err != nil {log.Fatal(err)}curve := target.Curve()size := (pub.Curve.Params().BitSize + 7) \/ 8scalar := make([]byte, size)const limit = 1 &lt;&lt; 24for d := uint64(1); d &lt; limit; d++ {for i := 0; i &lt; 8; i++ {scalar[size-1-i] = byte(d &gt;&gt; (8 * i))}k, err := curve.NewPrivateKey(scalar)if err != nil {continue}if bytes.Equal(k.PublicKey().Bytes(), target.Bytes()) {fmt.Printf(&#171;%s: \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043d\u0430\u0439\u0434\u0435\u043d, d = %d\\n&#187;, cert.Subject.CommonName, d)return}}fmt.Printf(&#171;%s: d &lt; %d \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\\n&#187;, cert.Subject.CommonName, limit)}$ go run .\/gen &gt; weak.pem &amp;&amp; time go run .\/recover weak.pemTotally Secure TLS CA &#8212; G3X: \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043d\u0430\u0439\u0434\u0435\u043d, d = 115real    0m0.270s\u041f\u043e\u0447\u0442\u0438 \u0432\u0441\u0451 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0443\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044e. \u0422\u0430\u043a \u0447\u0442\u043e \u0444\u0440\u0430\u0437\u0430 \u00ab\u043a\u043b\u044e\u0447\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u043a\u0443\u043d\u0434\u044b\u00bb \u0438\u0437 \u043f\u043e\u0441\u0442\u0430 Go \u0432\u043e\u0432\u0441\u0435 \u043d\u0435 \u043f\u0440\u0435\u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435.\u042d\u0442\u043e\u0442 \u0436\u0435 \u043a\u043e\u0434 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a \u0434\u0435\u0448\u0451\u0432\u044b\u0439 \u0441\u0430\u043d\u0438\u0442\u0438-\u0447\u0435\u043a \u0434\u043b\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e PKI. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 CA, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0430\u043c\u043e\u043f\u0438\u0441\u043d\u044b\u043c \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c, \u043f\u0440\u043e\u0433\u043e\u043d\u0438\u0442\u0435 \u0435\u0433\u043e \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0447\u0435\u0440\u0435\u0437 \u0442\u0430\u043a\u043e\u0439 \u043f\u0435\u0440\u0435\u0431\u043e\u0440, \u0430 \u0437\u0430\u043e\u0434\u043d\u043e \u0447\u0435\u0440\u0435\u0437 badkeys, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043b\u043e\u0432\u0438\u0442 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u0441\u043b\u0430\u0431\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 (Debian OpenSSL 2008, ROCA, \u043e\u0431\u0449\u0438\u0435 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043c\u043d\u043e\u0436\u0438\u0442\u0435\u043b\u0438 \u0443 RSA \u0438 \u0442. \u043f.). \u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0448\u043b\u0430, \u043a\u043b\u044e\u0447 \u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0441\u0442\u043e\u0439\u043a\u0438\u043c. \u041d\u043e \u0435\u0441\u043b\u0438 \u043d\u0430\u0448\u043b\u0430, \u0440\u0430\u0437\u0431\u043e\u0440 \u043d\u0430 \u044d\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0442\u044c.\u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043a\u043e\u0440\u0435\u043d\u044c\u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443: \u0443\u0431\u0440\u0430\u0442\u044c emSign ECC Root CA \u2013 G3 \u0438\u0437 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430, \u0438 \u0434\u0435\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e. Mozilla \u0442\u0430\u043a \u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0430, NSS 3.131.1 \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u044d\u0442\u043e\u0442 \u043a\u043e\u0440\u0435\u043d\u044c. \u041d\u043e \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u043e\u0432 \u0435\u0441\u0442\u044c \u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043e\u0442 Sectigo AAA Certificate Services, \u0430 \u044d\u0442\u043e \u0441\u0442\u0430\u0440\u044b\u0439 \u0438 \u043e\u0447\u0435\u043d\u044c \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u0439 \u043a\u043e\u0440\u0435\u043d\u044c. \u041a\u043b\u0438\u0435\u043d\u0442 \u0431\u0435\u0437 \u043a\u043e\u0440\u043d\u044f eMudhra \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0443leaf (\u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a\u0430) \u2192 EM DV TLS CA &#8212; G3B \u2192 [\u043a\u0440\u043e\u0441\u0441-\u043f\u043e\u0434\u043f\u0438\u0441\u044c] \u2192 AAA Certificate Services\u0435\u0441\u043b\u0438 \u0430\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0439 \u043f\u043e\u043b\u043e\u0436\u0438\u0442 \u0432 TLS-\u0440\u0443\u043a\u043e\u043f\u043e\u0436\u0430\u0442\u0438\u0435 \u043d\u0443\u0436\u043d\u044b\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u0430 \u044d\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0432 \u0435\u0433\u043e \u0440\u0443\u043a\u0430\u0445.\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u043e \u0441\u0430\u043c\u0438 \u043a\u043b\u044e\u0447\u0438 \u0438\u043d\u0442\u0435\u0440\u043c\u0435\u0434\u0438\u0430\u0442\u043e\u0432, \u0430 \u043d\u0435 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-500569","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/500569","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=500569"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/500569\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=500569"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=500569"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=500569"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}