{"id":106445,"date":"2023-01-22T12:48:15","date_gmt":"2023-01-22T10:48:15","guid":{"rendered":"https:\/\/prohoster.info\/?p=106445"},"modified":"2023-01-24T13:53:19","modified_gmt":"2023-01-24T11:53:19","slug":"sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","title":{"rendered":"Tv\u016frce C++ zkritizoval prosazov\u00e1n\u00ed bezpe\u010dn\u00fdch programovac\u00edch jazyk\u016f","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Bjarne Stroustrup, tv\u016frce jazyka C++, publikoval n\u00e1mitky proti z\u00e1v\u011br\u016fm uveden\u00fdm ve zpr\u00e1v\u011b NSA, ve kter\u00e9 bylo organizac\u00edm doporu\u010deno p\u0159ej\u00edt od pou\u017e\u00edv\u00e1n\u00ed programovac\u00edch jazyk\u016f, jako jsou C a C++, kter\u00e9 p\u0159esouvaj\u00ed spr\u00e1vu pam\u011bti na v\u00fdvoj\u00e1\u0159e, ve prosp\u011bch jazyk\u016f, jako jsou C#, Go, Java, Ruby, Rust a Swift, poskytuj\u00edc\u00edch automatickou spr\u00e1vu pam\u011bti nebo prov\u00e1d\u011bj\u00edc\u00edch kontroly bezpe\u010dn\u00e9 pr\u00e1ce s pam\u011bt\u00ed b\u011bhem kompilace.     <\/p>\n<p>Podle Stroustrupa zm\u00edn\u011bn\u00e9 v zpr\u00e1v\u011b NSA bezpe\u010dn\u00e9 jazyky ve skute\u010dnosti nep\u0159evy\u0161uj\u00ed C++ v d\u016fle\u017eit\u00fdch aplikac\u00edch z jeho pohledu. Zejm\u00e9na se v posledn\u00edch letech vyv\u00edjej\u00ed z\u00e1kladn\u00ed doporu\u010den\u00ed pro pou\u017e\u00edv\u00e1n\u00ed C++ (C++ Core Guidelines), kter\u00e1 zahrnuj\u00ed metody bezpe\u010dn\u00e9ho programov\u00e1n\u00ed a p\u0159edepisuj\u00ed pou\u017eit\u00ed prost\u0159edk\u016f zaru\u010duj\u00edc\u00edch bezpe\u010dnou pr\u00e1ci s typy a zdroji. P\u0159itom v\u00fdvoj\u00e1\u0159\u016fm, kte\u0159\u00ed nepot\u0159ebuj\u00ed takov\u00e9 p\u0159\u00edsn\u00e9 z\u00e1ruky bezpe\u010dnosti, z\u016fst\u00e1v\u00e1 mo\u017enost pokra\u010dovat v pou\u017e\u00edv\u00e1n\u00ed star\u00fdch metod v\u00fdvoje.     <\/p>\n<p>Stroustrup se domn\u00edv\u00e1, \u017ee dobr\u00fd statick\u00fd analytik spl\u0148uj\u00edc\u00ed doporu\u010den\u00ed C++ Core Guidelines m\u016f\u017ee zajistit pot\u0159ebn\u00e9 z\u00e1ruky bezpe\u010dnosti C++ k\u00f3du s pou\u017eit\u00edm v\u00fdrazn\u011b ni\u017e\u0161\u00edch n\u00e1klad\u016f ne\u017e p\u0159echod na nov\u00e9 bezpe\u010dn\u00e9 programovac\u00ed jazyky. Nap\u0159\u00edklad v\u011bt\u0161ina doporu\u010den\u00ed Core Guidelines byla ji\u017e implementov\u00e1na ve statick\u00e9m analytiku a profilu bezpe\u010dn\u00e9 pr\u00e1ce s pam\u011bt\u00ed obsa\u017een\u00e9m v Microsoft Visual Studio. N\u011bkter\u00e1 doporu\u010den\u00ed jsou tak\u00e9 zohledn\u011bna v statick\u00e9m analytiku Clang tidy.    <\/p>\n<p>Objektem kritiky se tak\u00e9 stalo zam\u011b\u0159en\u00ed zpr\u00e1vy NSA pouze na probl\u00e9my s prac\u00ed s pam\u011bt\u00ed, p\u0159i\u010dem\u017e p\u0159ehl\u00e9dlo mnoho dal\u0161\u00edch probl\u00e9m\u016f programovac\u00edch jazyk\u016f, kter\u00e9 ovliv\u0148uj\u00ed bezpe\u010dnost a spolehlivost. Stroustrup pova\u017euje bezpe\u010dnost za \u0161ir\u0161\u00ed pojem, jeho\u017e r\u016fzn\u00e9 aspekty mohou b\u00fdt dosa\u017eeny kombinac\u00ed stylu psan\u00ed k\u00f3du, knihoven a statick\u00fdch analytik\u016f. Pro \u0159\u00edzen\u00ed za\u010dle\u0148ov\u00e1n\u00ed pravidel zaji\u0161\u0165uj\u00edc\u00edch bezpe\u010dnou pr\u00e1ci s typy a zdroji se doporu\u010duje pou\u017e\u00edvat anotace v k\u00f3du a mo\u017enosti kompil\u00e1tor\u016f.     <\/p>\n<p>V aplikac\u00edch, kde je v\u00fdkon d\u016fle\u017eit\u011bj\u0161\u00ed ne\u017e bezpe\u010dnost, tento p\u0159\u00edstup umo\u017e\u0148uje selektivn\u00ed pou\u017eit\u00ed prost\u0159edk\u016f, kter\u00e9 zaji\u0161\u0165uj\u00ed bezpe\u010dnost pouze tam, kde je to nezbytn\u00e9. N\u00e1stroje pro zv\u00fd\u0161en\u00ed bezpe\u010dnosti lze tak\u00e9 pou\u017e\u00edvat \u010d\u00e1ste\u010dn\u011b, nap\u0159\u00edklad na za\u010d\u00e1tku se omezit na pravidla pro kontrolu rozsah\u016f a inicializaci, a pot\u00e9 postupn\u011b p\u0159izp\u016fsobovat k\u00f3d p\u0159\u00edsn\u011bj\u0161\u00edm po\u017eadavk\u016fm.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58527\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0421\u0438 \u0438 \u0421\u0438++, \u043f\u0435\u0440\u0435\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430, \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 \u044f\u0437\u044b\u043a\u043e\u0432, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a C#, Go, Java, Ruby, Rust \u0438 Swift, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0438\u0445 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438\u043b\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-106445","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c C++ \u0440\u0430\u0441\u043a\u0440\u0438\u0442\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-01-22T10:48:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-01-24T11:53:19+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Tv\u016frce C++ kritizoval prosazov\u00e1n\u00ed bezpe\u010dn\u00fdch programovac\u00edch jazyk\u016f | ProHoster","description":"Bjarne Stroustrup, tv\u016frce jazyka C++, zve\u0159ejnil n\u00e1mitky proti z\u00e1v\u011br\u016fm obsa\u017een\u00fdm ve zpr\u00e1v\u011b NSA, kter\u00e1 doporu\u010dila organizac\u00edm, aby se vzdaly pou\u017e\u00edv\u00e1n\u00ed programovac\u00edch jazyk\u016f.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c C++ \u0440\u0430\u0441\u043a\u0440\u0438\u0442\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster","og:description":"\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2023-01-22T10:48:15+00:00","article:modified_time":"2023-01-24T11:53:19+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/106445","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=106445"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/106445\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=106445"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=106445"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=106445"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}