{"id":315259,"date":"2020-12-21T15:01:58","date_gmt":"2020-12-21T15:01:58","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=315259"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=315259","title":{"rendered":"RC6. \u041e\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u043a \u0441\u043b\u043e\u0436\u043d\u043e\u043c\u0443"},"content":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<h2>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435 <\/h2>\n<ul>\n<li>\n<p>\u041a\u0442\u043e \u044d\u0442\u043e\u0442 \u0432\u0430\u0448 \u0431\u043b\u043e\u0447\u043d\u044b\u0439 \u0448\u0438\u0444\u0440.<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a\u0438\u0445 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 \u043f\u0440\u0438\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430.<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430.<\/p>\n<\/li>\n<li>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0418 \u043f\u0440\u0438\u0447\u0435\u043c \u0442\u0443\u0442 \u0432\u043e\u043e\u0431\u0449\u0435 RC5?<\/p>\n<\/li>\n<\/ul>\n<h2>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 RC6.<\/h2>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c RC6 (<em>Rivest\u2019s Cipher 6<\/em>) &#8212; <strong>\u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0439<\/strong> <strong>\u0431\u043b\u043e\u0447\u043d\u044b\u0439<\/strong> \u0448\u0438\u0444\u0440, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u0432\u043e\u0435\u0439 \u043e\u0441\u043d\u043e\u0432\u044b <strong>\u0441\u0435\u0442\u044c \u0424\u0435\u0441\u0442\u0435\u043b\u044f<\/strong>,<strong> <\/strong>\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0439 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u043e\u043c \u0420\u0438\u0432\u0435\u0441\u0442\u043e\u043c \u0432 1998 \u0433\u043e\u0434\u0443.<\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0441 \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u0435\u0439:<\/p>\n<h4>\u0427\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442 \u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0439?<\/h4>\n<p>\u0415\u0441\u0442\u044c \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 <s>\u043b\u044e\u0434\u0435\u0439<\/s> \u0448\u0438\u0444\u0440\u043e\u0432:<\/p>\n<ol>\n<li>\n<p>\u0421\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0435 (\u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e)<\/p>\n<\/li>\n<li>\n<p>\u0410\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0435 (\u043a\u0430\u043a-\u043d\u0438\u0431\u0443\u0434\u044c \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u0440\u0430\u0437, \u0431\u0440\u043e)<\/p>\n<\/li>\n<\/ol>\n<p>\u0412 <em>\u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u043c<\/em> \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0438, \u0434\u043b\u044f \u0442\u043e\u0433\u043e \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f <em>\u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 <\/em>\u043a\u043b\u044e\u0447. \u041e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f <em>\u0432 \u0441\u0435\u043a\u0440\u0435\u0442\u0435<\/em>. \u0422.\u0435. \u043d\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u0435\u043b\u044c, \u043d\u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u043d\u0438\u043a\u043e\u043c\u0443 \u0435\u0433\u043e \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c. \u0418\u043d\u0430\u0447\u0435, \u0432\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442\u044c\/\u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u043b\u0438 \u0435\u0449\u0435 \u0447\u0435\u0433\u043e \u043f\u043e\u0445\u0443\u0436\u0435. <\/p>\n<blockquote>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f:<\/p>\n<p>AES (Advanced Encryption Standard) <\/p>\n<p>3DES (Triple Data Encryption Algorithm ) <\/p>\n<p>RC4, RC5, RC6 (Rivest cipher)<\/p>\n<\/blockquote>\n<p>\u0412 <em>\u0430\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u043c<\/em> \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u0432\u0430 \u043a\u043b\u044e\u0447\u0430: \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0439. \u0418\u0437 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0439 \u044f\u0441\u043d\u043e, \u0447\u0442\u043e <em>\u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439<\/em> \u043a\u043b\u044e\u0447 \u043c\u043e\u0436\u0435\u0442 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u043e \u043a\u0430\u043d\u0430\u043b\u0430\u043c \u0441\u0432\u044f\u0437\u0438, \u0430 \u0432\u043e\u0442 <em>\u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0439<\/em> \u043a\u043b\u044e\u0447 \u043d\u0443\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432 \u0442\u0430\u0439\u043d\u0435.<\/p>\n<blockquote>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u0430\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f:<\/p>\n<p>RSA (Rivest-Shamir-Adleman) <\/p>\n<p>DSA (Digital Signature Algorithm), DSS (Digital Signature Standard) <\/p>\n<p>Diffie-Hellman<\/p>\n<\/blockquote>\n<h4>\u0427\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442 \u0431\u043b\u043e\u0447\u043d\u044b\u0439?<\/h4>\n<p><em>\u0411\u043b\u043e\u0447\u043d\u043e\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/em> <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/dda\/b78\/6c8\/ddab786c89c6ea6004e58d3f0a855539.svg\">\u044d\u0442\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u0432\u0438\u0434\u043e\u0432 \u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u043d \u0442\u0430\u043a, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0431\u043b\u043e\u043a\u0430\u043c\u0438: \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438 \u0431\u0438\u0442, \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b. <\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0441\u0442\u0430\u043b\u043e \u044f\u0441\u043d\u0435\u0435, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0434\u0438\u043d \u0438\u0437 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0431\u043b\u043e\u0447\u043d\u044b\u0445 \u0448\u0438\u0444\u0440\u043e\u0432: \u0441\u0435\u0442\u044c \u0424\u0435\u0441\u0442\u0435\u043b\u044f.<\/p>\n<h4>\u041a\u0430\u043a\u0430\u044f, \u043a\u0430\u043a\u0430\u044f \u0441\u0435\u0442\u044c?<\/h4>\n<p>\u0424\u0435\u0441\u0442\u0435\u043b\u044f. \u042d\u0442\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0438\u0437 \u044f\u0447\u0435\u0435\u043a. \u041d\u0430 \u0432\u0445\u043e\u0434 \u043a\u0430\u0436\u0434\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u044e\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043a\u043b\u044e\u0447. \u0410 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0437 \u043d\u0438\u0445 <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/764\/8fd\/fc0\/7648fdfc0a6e3b33bbd8164602c99038.svg\">\u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0435\u0435 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u044e\u0442 \u043d\u0430 \u0431\u043b\u043e\u043a\u0438 <em>\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b<\/em>. \u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0434\u043b\u0438\u043d\u0430 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0431\u043b\u043e\u043a\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f&nbsp;\u0441\u0442\u0435\u043f\u0435\u043d\u044c\u044e \u0434\u0432\u043e\u0439\u043a\u0438.<\/p>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f:<\/p>\n<ul>\n<li>\n<p>\u041a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u0434\u0435\u043b\u0438\u0442\u0441\u044f \u043d\u0430 \u0434\u0432\u0430 <em>\u043f\u043e\u0434\u0431\u043b\u043e\u043a\u0430<\/em> \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430&nbsp;\u2014 \u043b\u0435\u0432\u044b\u0439 \u0438 \u043f\u0440\u0430\u0432\u044b\u0439.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0430\u0432\u044b\u0439 \u043f\u043e\u0434\u0431\u043b\u043e\u043a <img decoding=\"async\" class=\"formula inline\" source=\"R_0\" alt=\"R_0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/572\/f9a\/448\/572f9a4487a8e7db01c59b1850a2eeb1.svg\">\u0441\u043a\u0430\u0440\u043c\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <img decoding=\"async\" class=\"formula inline\" source=\"F(R_0, K_0)\" alt=\"F(R_0, K_0)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/edd\/0c2\/24b\/edd0c224bec255d774724fd7f2eb6dfa.svg\">. <\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e 2 (\u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f xor) \u0441 \u043b\u0435\u0432\u044b\u043c \u0431\u043b\u043e\u043a\u043e\u043c <img decoding=\"async\" class=\"formula inline\" source=\"L_0\" alt=\"L_0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c3f\/a5a\/2f6\/c3fa5a2f6a2974c56a917ba28ae1c686.svg\">.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0430\u0443\u043d\u0434\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0433\u0440\u0430\u0442\u044c \u0440\u043e\u043b\u044c <em>\u043f\u0440\u0430\u0432\u043e\u0433\u043e<\/em> \u043f\u043e\u0434\u0431\u043b\u043e\u043a\u0430.<\/p>\n<\/li>\n<li>\n<p>\u0410 \u043f\u0440\u0430\u0432\u044b\u0439 \u043f\u043e\u0434\u0431\u043b\u043e\u043a(\u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439) \u0432\u044b\u0441\u0442\u0443\u043f\u0438\u0442 \u0432 \u0440\u043e\u043b\u0438  <em>\u043b\u0435\u0432\u043e\u0433\u043e<\/em> \u043f\u043e\u0434\u0431\u043b\u043e\u043a\u0430.<\/p>\n<\/li>\n<\/ul>\n<p><em>\u0420\u0430\u0443\u043d\u0434\u043e\u043c<\/em> \u0432 <s>\u0431\u0430\u0442\u043b\u0435<\/s> \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0448\u0430\u0433\u043e\u0432(\u0446\u0438\u043a\u043b\u043e\u0432) \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 \u0431\u043b\u043e\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f.<img decoding=\"async\" class=\"formula inline\" source=\"K_i~- \" alt=\"K_i~- \" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/96e\/c92\/62c\/96ec9262c9fa3cc3b791eebb0aa4d7cc.svg\"> \u043a\u043b\u044e\u0447 \u043d\u0430 <img decoding=\"async\" class=\"formula inline\" source=\"i\" alt=\"i\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f4f\/94b\/17e\/f4f94b17edf68ccd2c3423179225421f.svg\">&#8212; \u043e\u043c \u0440\u0430\u0443\u043d\u0434\u0435 (\u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u043e\u0437\u0436\u0435).<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u044e\u0442\u0441\u044f \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0434\u0430\u043d\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432.<\/p>\n<p><strong>\u0417\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u0435<\/strong><em>. \u0420\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430<\/em> \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0442\u0430\u043a \u0436\u0435, \u043a\u0430\u043a \u0438 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0441 \u0442\u0435\u043c \u043b\u0438\u0448\u044c \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c, \u0447\u0442\u043e&nbsp;\u043a\u043b\u044e\u0447\u0438&nbsp;\u0441\u043b\u0435\u0434\u0443\u044e\u0442 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435.<\/p>\n<p>\u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u044d\u0442\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<figure class=\"float full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d3a\/733\/c87\/d3a733c8718dc1249941871f00e26062.png\" width=\"1478\" height=\"2128\"><figcaption><\/figcaption><\/figure>\n<h2>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 <\/h2>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0438\u0441\u044c \u0441 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u043c\u0438, \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043a\u043e\u043f\u043d\u0443\u0442\u044c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0433\u043b\u0443\u0431\u0436\u0435.<\/p>\n<p>RC6 <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/828\/db7\/489\/828db748937813ca7d61dc8837b4ba7d.svg\"> <em>\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439<\/em> \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0447\u0430\u043b\u043e\u043c \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043f\u043e\u043d\u044f\u0442\u044c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 <img class=\"formula inline\" source=\"w\" alt=\"w\">:<\/p>\n<p>\u0412\u0441\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u0438\u043c\u0435\u044e\u0442 <img decoding=\"async\" class=\"formula inline\" source=\"w~-\" alt=\"w~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2d8\/ca4\/7f5\/2d8ca47f5a823e06e6e5f9f72bdec93a.svg\">\u0431\u0438\u0442\u043d\u044b\u0435 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/\u041c\u0430\u0448\u0438\u043d\u043d\u043e\u0435_\u0441\u043b\u043e\u0432\u043e\" rel=\"noopener noreferrer nofollow\">\u043c\u0430\u0448\u0438\u043d\u043d\u044b\u0435 \u0441\u043b\u043e\u0432\u0430<\/a> \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u0445\u043e\u0434\u0430 \u0438 \u0432\u044b\u0445\u043e\u0434\u0430. \u041a\u0430\u043a \u043c\u044b \u0443\u0436\u0435 \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u0438, RC6 <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/828\/db7\/489\/828db748937813ca7d61dc8837b4ba7d.svg\">\u0431\u043b\u043e\u0447\u043d\u044b\u0439 \u0448\u0438\u0444\u0440. \u041f\u0440\u0438\u0447\u0435\u043c \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u0438 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0431\u043b\u043e\u043a \u0438\u043c\u0435\u044e\u0442 4 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A, B, C, D \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c \u043f\u043e <img decoding=\"async\" class=\"formula inline\" source=\"w~-\" alt=\"w~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d50\/23d\/9b9\/d5023d9b9e65c8ec4cffc1d51ec50bdc.svg\">\u0431\u0438\u0442. \u041e\u0431\u044b\u0447\u043d\u043e <img decoding=\"async\" class=\"formula inline\" source=\"w=32\" alt=\"w=32\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/599\/693\/4ad\/5996934ad4fd5d5c9084ca007765a746.svg\">. \u0422\u043e\u0433\u0434\u0430 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u043b\u043e\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 <img decoding=\"async\" class=\"formula inline\" source=\"4\\times 32=128\" alt=\"4\\times 32=128\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9bb\/03c\/0c9\/9bb03c0c969d6e62443bb7daaa354f07.svg\">\u0431\u0438\u0442.<\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c <img decoding=\"async\" class=\"formula inline\" source=\"w\" alt=\"w\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e9f\/3ac\/b8e\/e9f3acb8e95cf8a647f8af35dbb8ff8a.svg\"> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0438\u043c \u0438\u0437 <em>\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432<\/em> \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c. \u0412\u044b\u043f\u0438\u0448\u0435\u043c \u0438\u0445 \u0432\u0441\u0435:<\/p>\n<ul>\n<li>\n<p><img decoding=\"async\" class=\"formula inline\" source=\"w~-\" alt=\"w~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8ca\/30a\/258\/8ca30a2585b52a5157435b05d059b604.svg\">\u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u043b\u043e\u0432\u0430 \u0432 \u0431\u0438\u0442\u0430\u0445. \u041a\u0430\u0436\u0434\u043e\u0435 \u0441\u043b\u043e\u0432\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 <img decoding=\"async\" class=\"formula inline\" source=\"u = w\/8\" alt=\"u = w\/8\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c27\/7a9\/c21\/c277a9c2169f312bfbc5be38ae35e9e4.svg\">\u0441\u043b\u043e\u0432 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445. \u0411\u043b\u043e\u043a\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0438 \u0448\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442\u0430 \u0438\u043c\u0435\u044e\u0442 \u0434\u043b\u0438\u043d\u0443 \u043f\u043e<img class=\"formula inline\" source=\"4w~-\" alt=\"4w~-\">\u0431\u0438\u0442 (\u0442.\u043a. 4 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430).<\/p>\n<\/li>\n<li>\n<p><img decoding=\"async\" class=\"formula inline\" source=\"r~-\" alt=\"r~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/3c7\/113\/d2e\/3c7113d2eee943d2ccfadb464d838ab7.svg\">\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432. \u0422\u0430\u043a \u0436\u0435 \u0440\u0430\u0437\u043c\u0435\u0440 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043a\u043b\u044e\u0447\u0435\u0439<img decoding=\"async\" class=\"formula inline\" source=\"S\" alt=\"S\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/7db\/471\/272\/7db4712726582ffe90d9793f1db39934.svg\">\u0431\u0443\u0434\u0435\u0442 \u0438\u043c\u0435\u0442\u044c<img decoding=\"async\" class=\"formula inline\" source=\"t=(2r+4) \" alt=\"t=(2r+4) \" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/97b\/91a\/ecc\/97b91aeccc2904e75f2fc89af7ccdeaf.svg\">\u0441\u043b\u043e\u0432\u043e (\u043e\u0431 \u044d\u0442\u043e\u043c \u0434\u0430\u043b\u0435\u0435). \u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f <img decoding=\"async\" class=\"formula inline\" source=\"0\\leq r\\leq 255\" alt=\"0\\leq r\\leq 255\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/094\/ba7\/4b5\/094ba74b5d0ed131c978eb4a015a26b3.svg\">.<\/p>\n<\/li>\n<li>\n<p><img decoding=\"async\" class=\"formula inline\" source=\"b~-\" alt=\"b~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/717\/30d\/23c\/71730d23ca72b6ba33a906813626882f.svg\">\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u0438\u0442 \u0432 \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u043e\u043c \u043a\u043b\u044e\u0447\u0435 <img class=\"formula inline\" source=\"K\" alt=\"K\">.<\/p>\n<\/li>\n<li>\n<p><img class=\"formula inline\" source=\"K~-\" alt=\"K~-\"> \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432 <img decoding=\"async\" class=\"formula inline\" source=\"b\" alt=\"b\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/62c\/11a\/c23\/62c11ac23aa27b4d79892990e5a31a5b.svg\"> \u0431\u0430\u0439\u0442: <img decoding=\"async\" class=\"formula inline\" source=\"K[0], K[1], ... , K[b-1]\" alt=\"K[0], K[1], ... , K[b-1]\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/27b\/b2e\/842\/27bb2e842e440fe08dc25debe5d3ab43.svg\">.<\/p>\n<\/li>\n<\/ul>\n<p>\u0427\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u044f\u0441\u043d\u043e, \u043e \u043a\u0430\u043a\u043e\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 \u0438\u0434\u0435\u043c \u0440\u0435\u0447\u044c \u043f\u0440\u0438\u043d\u044f\u0442\u043e \u043f\u0438\u0441\u0430\u0442\u044c <img decoding=\"async\" class=\"formula inline\" source=\"RC6\/w\/r\/b \" alt=\"RC6\/w\/r\/b \" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/128\/ff1\/1e5\/128ff11e545a5e57cddbd8d0ec621299.svg\">. <\/p>\n<h2>\u0421\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430<\/h2>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u0440\u0435\u0445 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u044d\u0442\u0430\u043f\u043e\u0432 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0434\u0432\u0435 \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b:<\/p>\n<h3>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442<\/h3>\n<p>\u0414\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e <img decoding=\"async\" class=\"formula inline\" source=\"w\" alt=\"w\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5a9\/22e\/37e\/5a922e37e08e16545ccb1129ffd6a26d.svg\"> \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u0434\u0432\u0435 \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u044b:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"P_w \\leftarrow Odd((e-2)2^w)\\\\Q_w \\leftarrow Odd((\\phi-1)2^w)\" alt=\"P_w \\leftarrow Odd((e-2)2^w)\\\\Q_w \\leftarrow Odd((\\phi-1)2^w)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e5e\/ae3\/658\/e5eae36584c60e71549a725875f76da9.svg\" width=\"732\" height=\"43\"><\/p>\n<p>\u0433\u0434\u0435 <img decoding=\"async\" class=\"formula inline\" source=\"e=2.71828...\" alt=\"e=2.71828...\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0ec\/116\/550\/0ec1165507dd484d8f28079d882f9516.svg\">(\u044d\u043a\u0441\u043f\u043e\u043d\u0435\u043d\u0442\u0430), <img decoding=\"async\" class=\"formula inline\" source=\"\\phi=1.61803...\" alt=\"\\phi=1.61803...\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/76a\/d4e\/770\/76ad4e770e1fc2b47a34b16ea3b15999.svg\"> (\u0437\u043e\u043b\u043e\u0442\u043e\u0435 \u0441\u0435\u0447\u0435\u043d\u0438\u0435). <img decoding=\"async\" class=\"formula inline\" source=\"Odd(\\cdot)~-\" alt=\"Odd(\\cdot)~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ce1\/666\/701\/ce1666701c1061d23a1ee9695184386c.svg\">\u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u043e\u043a\u0440\u0443\u0433\u043b\u0435\u043d\u0438\u044f \u0434\u043e \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0433\u043e \u043d\u0435\u0447\u0435\u0442\u043d\u043e\u0433\u043e \u0446\u0435\u043b\u043e\u0433\u043e.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0432\u0437\u044f\u0442\u044c <img decoding=\"async\" class=\"formula inline\" source=\"w = 32\" alt=\"w = 32\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ce2\/be8\/38a\/ce2be838a958c2e35728e38a7a8af1a5.svg\">, \u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0441\u044f \u0442\u0430\u043a\u0438\u0435:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"P32 = 10110111111000010101010101011 = b7e15163\\\\ Q32 = 10011110001101110110110111001 = 9e3779b9\" alt=\"P32 = 10110111111000010101010101011 = b7e15163\\\\ Q32 = 10011110001101110110110111001 = 9e3779b9\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/54a\/aeb\/938\/54aaeb938921a7ca35ae2d73851e19d8.svg\" width=\"732\" height=\"37\"><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u044d\u0442\u0430\u043f\u044b. \u0418\u0445 \u0442\u0440\u0438:<\/p>\n<h3>1 \u044d\u0442\u0430\u043f. \u041a\u043e\u043d\u0432\u0435\u0440\u0442\u0430\u0446\u0438\u044f \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430<\/h3>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0438\u0437 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<img decoding=\"async\" class=\"formula inline\" source=\"K[0...b-1]\" alt=\"K[0...b-1]\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/715\/6e6\/cb9\/7156e6cb9b9201c2703b1c427a3d4398.svg\">\u0432 \u043c\u0430\u0441\u0441\u0438\u0432 <img decoding=\"async\" class=\"formula inline\" source=\"L[0...c-1]\" alt=\"L[0...c-1]\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/577\/d35\/f00\/577d35f00bbe4f3028ec902c89adf378.svg\">, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 <img decoding=\"async\" class=\"formula inline\" source=\"c=b\/u\" alt=\"c=b\/u\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/50a\/042\/983\/50a042983d0ec35413949c7c2c4ccbe0.svg\"> \u0441\u043b\u043e\u0432, \u0433\u0434\u0435 <img decoding=\"async\" class=\"formula inline\" source=\"u=w\/8-\" alt=\"u=w\/8-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ca2\/428\/1df\/ca24281df63aba7addad1aa669ce2d0c.svg\">\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u0430\u0439\u0442 \u0432 \u0441\u043b\u043e\u0432\u0435. \u0415\u0441\u043b\u0438 <img decoding=\"async\" class=\"formula inline\" source=\"  b \" alt=\"  b \" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/347\/654\/80a\/34765480a99ff9a72242e66abfd8f63e.svg\">\u043d\u0435 \u043a\u0440\u0430\u0442\u0435\u043d <img decoding=\"async\" class=\"formula inline\" source=\"w \/ 8\" alt=\"w \/ 8\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fbb\/7f1\/450\/fbb7f14509c92a717c9637913f810fed.svg\">, \u0442\u043e <img decoding=\"async\" class=\"formula inline\" source=\"L\" alt=\"L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9d8\/001\/6fd\/9d80016fd8d722c115099986664cee44.svg\">\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0443\u043b\u0435\u0432\u044b\u043c\u0438 \u0431\u0438\u0442\u0430\u043c\u0438 \u0434\u043e \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u0435\u0433\u043e \u043a\u0440\u0430\u0442\u043d\u043e\u0433\u043e:<\/p>\n<pre><code class=\"bash\"># \u0437\u0434\u0435\u0441\u044c x&lt;&lt;&lt;y - \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u0434\u0432\u0438\u0433\u0430   c = [max(b, 1) \/ u] for b - 1 downto 0 do \tL[i\/u] = (L[i\/u]&lt;&lt;&lt;8) + K[i]<\/code><\/pre>\n<h3>2 \u044d\u0442\u0430\u043f. \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043a\u043b\u044e\u0447\u0435\u0439<\/h3>\n<p>\u041c\u0430\u0441\u0441\u0438\u0432 \u043a\u043b\u044e\u0447\u0435\u0439 <img decoding=\"async\" class=\"formula inline\" source=\"S\" alt=\"S\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2b5\/dd2\/a84\/2b5dd2a84888cdb26b7d437f1fc4e6c4.svg\"> \u0442\u0430\u043a \u0436\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 <em>\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u043a\u043b\u044e\u0447\u0435\u0439.<\/em> \u041e\u043d\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0435\u0445 \u0441\u0430\u043c\u044b\u0445 \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b\u0438 \u0440\u0430\u043d\u0435\u0435: <\/p>\n<pre><code class=\"bash\">S[0] = P_w  for i = 1 to 2r + 3 do \tS[i] = S[i - 1] + Q_w<\/code><\/pre>\n<h3>3 \u044d\u0442\u0430\u043f. \u041f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u042d\u0442\u043e\u0442 \u0448\u0430\u0433 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0430\u0442\u044c \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043c \u0434\u0430\u043b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c:<\/p>\n<pre><code class=\"bash\"># \u0412\u0445\u043e\u0434: \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u043a\u043b\u044e\u0447 \u0434\u043b\u0438\u043d\u043d\u043e\u0439 b \u0431\u0430\u0439\u0442, \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432 #\t\t\t \tL[0,...,c-1] #\t\t\t\t\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432 r  # \u0412\u044b\u0445\u043e\u0434: w-\u0431\u0438\u0442\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043a\u043b\u044e\u0447\u0435\u0439 S[0,...,2r+3]    A = B = i = j = 0  v = 3 * max(c, 2r + 4) for s = 1 to v do { \tA = S[i] = (S[i] + A + B)&lt;&lt;&lt;3   B = L[j] = (L[j] + A + B)&lt;&lt;&lt;(A + B)   i = (i + 1)mod(2r + 4)   j = (j + 1)mod(c) }<\/code><\/pre>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u0441\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u0430 \u0438 \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043a\u043e\u0440\u0435\u0435 \u0443\u0437\u043d\u0430\u0442\u044c, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u0430\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c RC6. \u041d\u043e \u043c\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0441\u043f\u0435\u0448\u0438\u0442\u044c \u0438 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043f\u0440\u043e\u0449\u0435 \u043f\u043e\u043d\u044f\u0442\u044c \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u044e \u0432\u0435\u0440\u0441\u0438\u044e <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f9a\/41f\/c32\/f9a41fc3274b02615be5f8f5c54372d4.svg\">RC5. \u0410 \u0442\u0430\u043a \u0436\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0448\u0430\u0433\u0438 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u0430 \u0420\u0438\u0432\u0435\u0441\u0442\u0430 \u043a \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c\u0443 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0443 \u0448\u0438\u0444\u0440\u0430 RC6:<\/p>\n<h2>\u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e RC5<\/h2>\n<p>RC5 <img class=\"formula inline\" source=\"-\" alt=\"-\">\u0431\u043b\u043e\u0447\u043d\u044b\u0439 \u0448\u0438\u0444\u0440, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0439 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u043e\u043c \u0420\u0438\u0432\u0435\u0441\u0442\u043e\u043c \u0432 1994 \u0433\u043e\u0434\u0443. \u041e\u0434\u043d\u043e \u0438\u0437 \u043e\u0442\u043b\u0438\u0447\u0438\u0439 \u043e\u0442 RC6 <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2c4\/674\/880\/2c4674880ee6cd3c22c93bb1bbdd0191.svg\">\u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u043e\u043d \u0438\u043c\u0435\u0435\u0442 \u0434\u0432\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043d\u0430 \u0432\u0445\u043e\u0434\u0435 \u0438 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0432\u043c\u0435\u0441\u0442\u043e \u0447\u0435\u0442\u044b\u0440\u0435\u0445. \u0412\u0442\u043e\u0440\u043e\u0435 <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/866\/dfd\/a44\/866dfda440e82131ffb753705d8a5e8b.svg\">\u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439. <\/p>\n<p>\u0420\u043e\u043d\u0430\u043b\u044c\u0434 \u0420\u0438\u0432\u0435\u0441\u0442 \u043f\u0438\u0441\u0430\u043b, \u0447\u0442\u043e \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u0430 \u043e\u043d \u043f\u0440\u0438\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u043b\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b:<\/p>\n<ul>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c <em>\u0431\u043b\u043e\u0447\u043d\u044b\u043c \u0448\u0438\u0444\u0440\u043e\u043c<\/em>. \u0422.\u0435. \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0438 \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0431\u043e\u0439 \u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 (\u0431\u043b\u043e\u043a\u0438) \u0438 \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0442\u0430\u043a \u0438 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438. <\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u043a \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u043c \u0441 \u0440\u0430\u0437\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u0441\u0442\u0430\u043d\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b 64-\u0431\u0438\u0442\u043d\u044b\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u044b, RC5 \u0441\u043c\u043e\u0436\u0435\u0442 \u043d\u0430 \u043d\u0438\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u044b\u043c. \u0422.\u0435. \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f\u043c\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0441 \u0446\u0435\u043b\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432. \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0433 \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u043c\u0435\u0436\u0434\u0443 \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0438 \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e. <\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043a\u043b\u044e\u0447 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b. \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0433 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0438\u043c\u0435\u0442\u044c \u043d\u0435\u0432\u044b\u0441\u043e\u043a\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043f\u0430\u043c\u044f\u0442\u0438. <\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435, \u043d\u043e \u043d\u0435\u043c\u0430\u043b\u043e\u0432\u0430\u0436\u043d\u043e\u0435 <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/67b\/2a4\/884\/67b2a48845bd6b7aea4768493d9562bc.svg\">RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0442\u044c \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430 \u0443 RC5 \u0442\u043e\u0447\u043d\u043e \u0442\u0430\u043a\u043e\u0439 \u0436\u0435, \u043a\u0430\u043a \u0438 \u0443 RC6. \u0410 \u0432\u043e\u0442 \u0441\u0430\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438 \u043f\u0440\u043e\u0449\u0435. C\u0445\u0435\u043c\u0430 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f RC5:<\/p>\n<figure class=\"float full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/1ee\/2a0\/922\/1ee2a09225c84f7d186ffbf1d440e6bb.png\" width=\"982\" height=\"2168\"><figcaption><\/figcaption><\/figure>\n<\/p>\n<p>\u0410 \u043f\u0441\u0435\u0432\u0434\u043e \u043a\u043e\u0434 \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043f\u044f\u0442\u0438 \u0441\u0442\u0440\u043e\u0447\u0435\u043a:<\/p>\n<pre><code class=\"bash\">A = A + S[0] B = B + S[1] for i = 1 to r do    A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   B = ((B xor A)&lt;&lt;&lt;A) + S[2i + 1]<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0437\u0430 <em>\u043e\u0434\u0438\u043d<\/em> \u0440\u0430\u0443\u043d\u0434 \u0432 RC5 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f <em>\u043e\u0431\u0435<\/em> \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435. <\/p>\n<h2>\u041f\u0443\u0442\u044c \u043e\u0442 RC5 \u043a RC6<\/h2>\n<p>\u0412\u043e\u0437\u044c\u043c\u0435\u043c \u043e\u0442 RC5 \u0432\u0441\u0435 \u0441\u0430\u043c\u043e\u0435 \u043b\u0443\u0447\u0448\u0435\u0435:<\/p>\n<ul>\n<li>\n<p>\u041f\u0440\u043e\u0441\u0442\u043e\u0442\u0443<\/p>\n<\/li>\n<li>\n<p>\u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c<\/p>\n<\/li>\n<li>\n<p>\u0425\u043e\u0440\u043e\u0448\u0443\u044e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c <\/p>\n<\/li>\n<\/ul>\n<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0448\u0430\u0433\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u0430 \u0420\u0438\u0432\u0435\u0441\u0442\u0430 \u043a \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c\u0443 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0443 RC6.<\/p>\n<\/p>\n<p>\u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u0431\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u0443-\u0440\u0430\u0443\u043d\u0434\u043e\u0432\u043e\u0433\u043e(\u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e) \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 RC5:<\/p>\n<pre><code class=\"bash\">for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   (A, B) = (B, A) }<\/code><\/pre>\n<p>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u0434\u0432\u0435 \u043a\u043e\u043f\u0438\u0438 RC5. \u041f\u0435\u0440\u0432\u0443\u044e \u043d\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0445 A \u0438 B, \u0430 \u0434\u0440\u0443\u0433\u0443\u044e \u043d\u0430 C \u0438 D:<\/p>\n<pre><code class=\"bash\">for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   C = ((C xor D)&lt;&lt;&lt;D) + S[2i + 1]   (A, B) = (B, A)   (C, D) = (D, C) }<\/code><\/pre>\n<p>\u0412\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043c\u0435\u043d\u044f\u0442\u044c \u043c\u0435\u0441\u0442\u0430\u043c\u0438 A \u043d\u0430 B \u0438 C \u043d\u0430 D, \u043f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b  (A, B, C, D) = (B, C, D, A). \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u043b\u043e\u043a\u0435 AB \u043f\u0435\u0440\u0435\u0448\u0430\u044e\u0442\u0441\u044f \u0441 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u043c\u0438 \u043d\u0430 \u0431\u043b\u043e\u043a\u0435 CD:<\/p>\n<pre><code class=\"bash\">for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   C = ((C xor D)&lt;&lt;&lt;D) + S[2i + 1]   (A, B, C, D) = (B, A, D, C) }<\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0435\u0449\u0435 \u0440\u0430\u0437 \u0441\u043c\u0435\u0448\u0430\u0435\u043c AB \u0438 CD \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0432\u0438\u0432 \u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0434\u0432\u0438\u0433\u0438:<\/p>\n<pre><code>for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;D) + S[2i]   C = ((C xor D)&lt;&lt;&lt;B) + S[2i + 1]   (A, B, C, D) = (B, A, D, C) }<\/code><\/pre>\n<p>\u0412\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u0434\u0432\u0438\u0433\u043e\u0432 B \u0438 D, \u043a\u0430\u043a \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u0432\u044b\u0448\u0435, \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u044d\u0442\u0438\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432. \u041f\u0440\u043e\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u0430 \u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u0434\u0432\u0438\u0433\u0430 \u0437\u0430\u0432\u0438\u0441\u0435\u043b\u0430 \u043e\u0442 \u0431\u0438\u0442\u043e\u0432 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430.<\/p>\n<p>\u0427\u0430\u0441\u0442\u043d\u044b\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/92a\/716\/801\/92a716801335742def668d36f575cb53.svg\">\u0444\u0443\u043d\u043a\u0446\u0438\u044f <img decoding=\"async\" class=\"formula inline\" source=\"f (x) = x (2x + 1) (mod~2^w)\" alt=\"f (x) = x (2x + 1) (mod~2^w)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cab\/e34\/783\/cabe34783510c4903e444a31740fcd65.svg\">, \u0437\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0441\u0434\u0432\u0438\u0433 \u0432\u043b\u0435\u0432\u043e \u043d\u0430 \u043f\u044f\u0442\u044c \u0431\u0438\u0442\u043e\u0432\u044b\u0445 \u043f\u043e\u0437\u0438\u0446\u0438\u0439:<\/p>\n<pre><code>for i = 1 to r do { \tt = (B * (2B + 1))&lt;&lt;&lt;5   u = (D * (2D + 1))&lt;&lt;&lt;5   A = ((A xor t)&lt;&lt;&lt;u) + S[2i]   C = ((C xor u)&lt;&lt;&lt;t) + S[2i + 1]   (A, B, C, D) = (B, C, D, A) }<\/code><\/pre>\n<p>\u0418 \u043d\u0430 \u0434\u0435\u0441\u0435\u0440\u0442 \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u043d\u0430 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u043c \u0448\u0430\u0433\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0440\u0430\u0443\u043d\u0434\u0430 \u0438 \u0437\u0430\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u0448\u0430\u0433\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u0430\u0443\u043d\u0434\u0430 \u043e\u0442\u043b\u0438\u0447\u0430\u043b\u0438\u0441\u044c \u043e\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u0432\u0441\u0435\u0445 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0443\u043d\u0434\u043e\u0432(\u0442\u0430\u043a\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f, \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f pre- \u0438 post-whitening):<\/p>\n<pre><code>B = B + S[0] D = D + S[1] for i = 1 to r do { \tt = (B * (2B + 1))&lt;&lt;&lt;5   u = (D * (2D + 1))&lt;&lt;&lt;5   A = ((A xor t)&lt;&lt;&lt;u) + S[2i]   C = ((C xor u)&lt;&lt;&lt;t) + S[2i + 1]   (A, B, C, D) = (B, C, D, A) } A = A + S[2r + 2] C = C + S[2r + 3]<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043c\u044b \u0442\u0443\u0442 \u0432\u0441\u0435 \u0437\u0430\u043c\u0438\u043a\u0441\u043e\u0432\u0430\u043b\u0438, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0435\u0449\u0435 \u0440\u0430\u0437 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0438\u043c\u0435\u0435\u043c:<\/p>\n<h2>\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h2>\n<p>\u0415\u0449\u0435 \u0440\u0430\u0437 \u043d\u0430\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e RC6 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0447\u0435\u0442\u044b\u0440\u044c\u043c\u044f <img decoding=\"async\" class=\"formula inline\" source=\"w~-\" alt=\"w~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/003\/579\/553\/00357955355f876ee83ef4eee2d0e38a.svg\">\u0431\u0438\u0442\u043d\u044b\u043c\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043c\u0438 A, B, C, D. \u041e\u043d\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0448\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442. \u041f\u0440\u0438\u0447\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u0431\u0430\u0439\u0442 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0438\u043b\u0438 \u0448\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442\u0430 \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 A, \u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0431\u0430\u0439\u0442 \u0432 \u0441\u0430\u043c\u044b\u0439 \u0441\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 D. \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u0434: <\/p>\n<pre><code class=\"bash\"># \u0412\u0445\u043e\u0434: \u041e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u0432 4-\u0445 w-\u0431\u0438\u0442\u043d\u044b\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0445 A, B, C, D #\t\t\t\t\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432 r #\t\t\t\tw-\u0431\u0438\u0442\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043a\u043b\u044e\u0447\u0435\u0439 S[0,...,2r+3]  # \u0412\u044b\u0445\u043e\u0434: \u0428\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442, \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u0439\u0441\u044f \u0432 A, B, C, D  B = B + S[0] D = D + S[1] for i = 1 to r do { \tt = (B * (2B + 1))&lt;&lt;&lt;lg(w)   u = (D * (2D + 1))&lt;&lt;&lt;lg(w)   A = ((A xor t)&lt;&lt;&lt;u) + S[2i]   C = ((C xor u)&lt;&lt;&lt;t) + S[2i + 1]   (A, B, C, D) = (B, C, D, A) } A = A + S[2r + 2] C = C + S[2r + 3]  # (A, B, C, D) = (B, C, D, A) \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u0438\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439.<\/code><\/pre>\n<p>\u0421\u0445\u0435\u043c\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0430\u0443\u043d\u0434\u0430 \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 RC6 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<figure class=\"bordered full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c63\/38a\/936\/c6338a936b6c759505febcc8cc068dab.png\" width=\"1298\" height=\"1680\"><figcaption><\/figcaption><\/figure>\n<h2>\u0414\u0435\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h2>\n<p>\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0442\u044b \u043a\u0430\u0440\u0442\u0438\u043d\u044b \u0435\u0449\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u0434\u0430 \u043f\u043e \u0434\u0435\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0435:<\/p>\n<pre><code class=\"bash\"># \u0412\u0445\u043e\u0434: \u0417\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u0432 4-\u0445 w-\u0431\u0438\u0442\u043d\u044b\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0445 A, B, C, D #\t\t\t\t\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432 r #\t\t\t\tw-\u0431\u0438\u0442\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043a\u043b\u044e\u0447\u0435\u0439 S[0,...,2r+3]  # \u0412\u044b\u0445\u043e\u0434: \u041e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442, \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u0439\u0441\u044f \u0432 A, B, C, D  C = C - S[2r + 3] A = A - S[2r +2]  for i = r downto 1 do { \t(A, B, C, D) = (D, A, B, C)   u = (D * (2D + 1))&lt;&lt;&lt;lg(w)   t = (B * (2B + 1)) &lt;&lt; lg(w)   C = ((C - S[2i + 1)&gt;&gt;&gt;t) xor u   A = ((A - S[2i])&gt;&gt;&gt;u) xor t } D = D - S[1] B = B - S[0]<\/code><\/pre>\n<h2>\u0427\u0442\u043e \u043f\u043e \u0430\u0442\u0430\u043a\u0430\u043c?<\/h2>\n<p>\u0414\u043b\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 RC6-128\/20\/b \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0430\u0442\u0430\u043a \u043d\u0435 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043e. \u0410\u0442\u0430\u043a\u0438 <s>\u0441\u043b\u0435\u0432\u0430<\/s> \u0431\u044b\u043b\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0441 \u0447\u0438\u0441\u043b\u043e\u043c \u0440\u0430\u0443\u043d\u0434\u043e\u0432 <img class=\"formula inline\" source=\"r<20\" alt=\"r<20\"><\/p>\n<p>\u041f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043b\u0443\u0447\u0448\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0430\u0442\u0430\u043a\u0438 \u043d\u0430 R\u04216 <img decoding=\"async\" class=\"formula inline\" source=\"-\" alt=\"-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2eb\/ace\/a7c\/2ebacea7c6db78ebfbad413d4abbfe49.svg\"> \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0431\u043e\u0440 <img decoding=\"async\" class=\"formula inline\" source=\"b~-\" alt=\"b~-\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d26\/07c\/4d1\/d2607c4d1134949e97447a800be5be7e.svg\">\u0431\u0430\u0439\u0442\u043e\u0432\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430. \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0414\u043b\u044f \u043d\u0435\u0433\u043e \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f <img decoding=\"async\" class=\"formula inline\" source=\"min(2^{8b}, 2^{1408})\" alt=\"min(2^{8b}, 2^{1408})\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d34\/a86\/6ab\/d34a866abfc857c8c2a908fb8bd18adb.svg\">\u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439. \u041e\u0434\u043d\u0430\u043a\u043e, \u0431\u044b\u043b\u043e \u0437\u0430\u043c\u0435\u0447\u0435\u043d\u043e, \u0447\u0442\u043e \u0437\u0430 \u0441\u0447\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u0442\u0430\u043a\u0443&nbsp;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%B2%D1%81%D1%82%D1%80%D0%B5%D1%87%D0%B8_%D0%BF%D0%BE%D1%81%D0%B5%D1%80%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5\" rel=\"noopener noreferrer nofollow\">\u0432\u0441\u0442\u0440\u0435\u0447\u0430 \u043f\u043e\u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435<\/a>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442 <img decoding=\"async\" class=\"formula inline\" source=\"min(2^{8b}, 2^{702})\" alt=\"min(2^{8b}, 2^{702})\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e93\/017\/160\/e93017160086232d7d7edba40aacc7bc.svg\"> \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439. \u0427\u0442\u043e \u0442\u043e\u0436\u0435 \u043e\u0447\u0435\u043d\u044c \u043c\u043d\u043e\u0433\u043e.<\/p>\n<p>\u0414\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u0442\u0438\u043f\u043e\u0432 \u0430\u0442\u0430\u043a, \u043a\u0430\u043a &nbsp;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%B8%D1%84%D1%84%D0%B5%D1%80%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7\" rel=\"noopener noreferrer nofollow\">\u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439<\/a>&nbsp;\u0438&nbsp;<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D1%8B%D0%B9_%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7\" rel=\"noopener noreferrer nofollow\">\u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0439<\/a>&nbsp;\u043a\u0440\u0438\u043f\u0442\u043e\u0430\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443:<\/p>\n<figure class=\"bordered full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/249\/ebe\/c29\/249ebec293e7528155c45878387fd6ef.png\" width=\"1778\" height=\"820\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0433\u043e\u0434\u043d\u044b\u0435 \u0446\u0438\u0444\u0440\u044b \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0430\u0442\u0430\u043a. \u0426\u0438\u0444\u0440\u044b \u0432 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0435 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0434\u0430\u043d\u043d\u044b\u043c \u0434\u043b\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 \u0430\u0442\u0430\u043a\u0438 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u044e\u0442 <img decoding=\"async\" class=\"formula inline\" source=\"2 ^ {128}\" alt=\"2 ^ {128}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b24\/39b\/460\/b2439b4609fa50a6eaececdc3b8b755d.svg\">\u043e\u0442 \u043e\u0431\u0449\u0435\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432. <\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043c \u043a \u0432\u044b\u0432\u043e\u0434\u0443, \u0447\u0442\u043e RC6 \u0441 20 \u0440\u0430\u0443\u043d\u0434\u0430\u043c\u0438 \u0437\u0430\u0449\u0438\u0449\u0435\u043d \u043e\u0442 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0438 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u043a\u0440\u0438\u043f\u0442\u043e\u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u0442\u0430\u043a.<\/p>\n<h2>\u0412\u044b\u0432\u043e\u0434\u044b<\/h2>\n<p>RC6 &#8212; \u044d\u0442\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439, \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u044b\u0439 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0431\u043b\u043e\u0447\u043d\u044b\u0439 \u0448\u0438\u0444\u0440. \u041e\u043d \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0445\u043e\u0440\u043e\u0448\u0443\u044e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u0432 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u0443\u0435\u0442\u0441\u044f: \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u043b\u044e\u0447\u0430 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0447\u0438\u0441\u043b\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432 \u0438 \u0440\u0430\u0437\u043c\u0435\u0440 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430. \u0423\u0447\u0438\u0442\u044b\u0432\u0430\u044f \u0432\u0441\u0435 \u044d\u0442\u043e, \u0448\u0438\u0444\u0440 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u043c. <\/p>\n<p>\u0422\u0430\u043a \u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 RC6, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a RC6_en, \u043d\u043e \u043e \u043d\u0435\u043c \u043a\u0430\u043a-\u043d\u0438\u0431\u0443\u0434\u044c \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u0440\u0430\u0437.<\/p>\n<h2>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438<\/h2>\n<ol>\n<li>\n<p>R.L. Rivest (1994) <a href=\"http:\/\/theory.lcs.mit.edu\/~rivest\/Rivest-rc5rev.pdf\" rel=\"noopener noreferrer nofollow\">The RC5 Encryption Algorithm<\/a><\/p>\n<\/li>\n<li>\n<p>R.L. Rivest, M.J.B. Robshaw, R.Sidney, and Y.L. Yin.&nbsp;(1998) <a href=\"https:\/\/web.archive.org\/web\/20070101014400\/http:\/\/theory.lcs.mit.edu\/~rivest\/rc6.pdf\" rel=\"noopener noreferrer nofollow\">The RC6 Block Cipher<\/a><\/p>\n<\/li>\n<li>\n<p>S. Contini, R.L. Rivest, M.J.B. Robshaw and Y.L. Yin. (1998) <a href=\"https:\/\/people.csail.mit.edu\/rivest\/ContiniRivestRobshawYin-TheSecurityOfTheRC6BlockCipher.pdf\" rel=\"noopener noreferrer nofollow\">The Security of the RC6<\/a> <\/p>\n<\/li>\n<\/ol>\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\/post\/534236\/\"> https:\/\/habr.com\/ru\/post\/534236\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<h2>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435 <\/h2>\n<ul>\n<li>\n<p>\u041a\u0442\u043e \u044d\u0442\u043e\u0442 \u0432\u0430\u0448 \u0431\u043b\u043e\u0447\u043d\u044b\u0439 \u0448\u0438\u0444\u0440.<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a\u0438\u0445 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 \u043f\u0440\u0438\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430.<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430.<\/p>\n<\/li>\n<li>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0418 \u043f\u0440\u0438\u0447\u0435\u043c \u0442\u0443\u0442 \u0432\u043e\u043e\u0431\u0449\u0435 RC5?<\/p>\n<\/li>\n<\/ul>\n<h2>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 RC6.<\/h2>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c RC6 (<em>Rivest\u2019s Cipher 6<\/em>) &#8212; <strong>\u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0439<\/strong> <strong>\u0431\u043b\u043e\u0447\u043d\u044b\u0439<\/strong> \u0448\u0438\u0444\u0440, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u0432\u043e\u0435\u0439 \u043e\u0441\u043d\u043e\u0432\u044b <strong>\u0441\u0435\u0442\u044c \u0424\u0435\u0441\u0442\u0435\u043b\u044f<\/strong>,<strong> <\/strong>\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0439 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u043e\u043c \u0420\u0438\u0432\u0435\u0441\u0442\u043e\u043c \u0432 1998 \u0433\u043e\u0434\u0443.<\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0441 \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u0435\u0439:<\/p>\n<h4>\u0427\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442 \u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0439?<\/h4>\n<p>\u0415\u0441\u0442\u044c \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 <s>\u043b\u044e\u0434\u0435\u0439<\/s> \u0448\u0438\u0444\u0440\u043e\u0432:<\/p>\n<ol>\n<li>\n<p>\u0421\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0435 (\u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e)<\/p>\n<\/li>\n<li>\n<p>\u0410\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u044b\u0435 (\u043a\u0430\u043a-\u043d\u0438\u0431\u0443\u0434\u044c \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u0440\u0430\u0437, \u0431\u0440\u043e)<\/p>\n<\/li>\n<\/ol>\n<p>\u0412 <em>\u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u043c<\/em> \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0438, \u0434\u043b\u044f \u0442\u043e\u0433\u043e \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f <em>\u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 <\/em>\u043a\u043b\u044e\u0447. \u041e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f <em>\u0432 \u0441\u0435\u043a\u0440\u0435\u0442\u0435<\/em>. \u0422.\u0435. \u043d\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u0435\u043b\u044c, \u043d\u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u043d\u0438\u043a\u043e\u043c\u0443 \u0435\u0433\u043e \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c. \u0418\u043d\u0430\u0447\u0435, \u0432\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0438\u0442\u044c\/\u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u043b\u0438 \u0435\u0449\u0435 \u0447\u0435\u0433\u043e \u043f\u043e\u0445\u0443\u0436\u0435. <\/p>\n<blockquote>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f:<\/p>\n<p>AES (Advanced Encryption Standard) <\/p>\n<p>3DES (Triple Data Encryption Algorithm ) <\/p>\n<p>RC4, RC5, RC6 (Rivest cipher)<\/p>\n<\/blockquote>\n<p>\u0412 <em>\u0430\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u043c<\/em> \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u0432\u0430 \u043a\u043b\u044e\u0447\u0430: \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0439. \u0418\u0437 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0439 \u044f\u0441\u043d\u043e, \u0447\u0442\u043e <em>\u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439<\/em> \u043a\u043b\u044e\u0447 \u043c\u043e\u0436\u0435\u0442 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u043e \u043a\u0430\u043d\u0430\u043b\u0430\u043c \u0441\u0432\u044f\u0437\u0438, \u0430 \u0432\u043e\u0442 <em>\u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0439<\/em> \u043a\u043b\u044e\u0447 \u043d\u0443\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432 \u0442\u0430\u0439\u043d\u0435.<\/p>\n<blockquote>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u0430\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f:<\/p>\n<p>RSA (Rivest-Shamir-Adleman) <\/p>\n<p>DSA (Digital Signature Algorithm), DSS (Digital Signature Standard) <\/p>\n<p>Diffie-Hellman<\/p>\n<\/blockquote>\n<h4>\u0427\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442 \u0431\u043b\u043e\u0447\u043d\u044b\u0439?<\/h4>\n<p><em>\u0411\u043b\u043e\u0447\u043d\u043e\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/em> \u044d\u0442\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u0432\u0438\u0434\u043e\u0432 \u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u043d \u0442\u0430\u043a, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0431\u043b\u043e\u043a\u0430\u043c\u0438: \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438 \u0431\u0438\u0442, \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b. <\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0441\u0442\u0430\u043b\u043e \u044f\u0441\u043d\u0435\u0435, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0434\u0438\u043d \u0438\u0437 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0431\u043b\u043e\u0447\u043d\u044b\u0445 \u0448\u0438\u0444\u0440\u043e\u0432: \u0441\u0435\u0442\u044c \u0424\u0435\u0441\u0442\u0435\u043b\u044f.<\/p>\n<h4>\u041a\u0430\u043a\u0430\u044f, \u043a\u0430\u043a\u0430\u044f \u0441\u0435\u0442\u044c?<\/h4>\n<p>\u0424\u0435\u0441\u0442\u0435\u043b\u044f. \u042d\u0442\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0438\u0437 \u044f\u0447\u0435\u0435\u043a. \u041d\u0430 \u0432\u0445\u043e\u0434 \u043a\u0430\u0436\u0434\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u044e\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043a\u043b\u044e\u0447. \u0410 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0437 \u043d\u0438\u0445 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0439 \u043a\u043b\u044e\u0447.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0435\u0435 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u044e\u0442 \u043d\u0430 \u0431\u043b\u043e\u043a\u0438 <em>\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b<\/em>. \u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0434\u043b\u0438\u043d\u0430 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0431\u043b\u043e\u043a\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f&nbsp;\u0441\u0442\u0435\u043f\u0435\u043d\u044c\u044e \u0434\u0432\u043e\u0439\u043a\u0438.<\/p>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f:<\/p>\n<ul>\n<li>\n<p>\u041a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u0431\u043b\u043e\u043a\u043e\u0432 \u0434\u0435\u043b\u0438\u0442\u0441\u044f \u043d\u0430 \u0434\u0432\u0430 <em>\u043f\u043e\u0434\u0431\u043b\u043e\u043a\u0430<\/em> \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430&nbsp;\u2014 \u043b\u0435\u0432\u044b\u0439 \u0438 \u043f\u0440\u0430\u0432\u044b\u0439.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0430\u0432\u044b\u0439 \u043f\u043e\u0434\u0431\u043b\u043e\u043a \u0441\u043a\u0430\u0440\u043c\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 . <\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e 2 (\u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f xor) \u0441 \u043b\u0435\u0432\u044b\u043c \u0431\u043b\u043e\u043a\u043e\u043c .<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0430\u0443\u043d\u0434\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0433\u0440\u0430\u0442\u044c \u0440\u043e\u043b\u044c <em>\u043f\u0440\u0430\u0432\u043e\u0433\u043e<\/em> \u043f\u043e\u0434\u0431\u043b\u043e\u043a\u0430.<\/p>\n<\/li>\n<li>\n<p>\u0410 \u043f\u0440\u0430\u0432\u044b\u0439 \u043f\u043e\u0434\u0431\u043b\u043e\u043a(\u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439) \u0432\u044b\u0441\u0442\u0443\u043f\u0438\u0442 \u0432 \u0440\u043e\u043b\u0438  <em>\u043b\u0435\u0432\u043e\u0433\u043e<\/em> \u043f\u043e\u0434\u0431\u043b\u043e\u043a\u0430.<\/p>\n<\/li>\n<\/ul>\n<p><em>\u0420\u0430\u0443\u043d\u0434\u043e\u043c<\/em> \u0432 <s>\u0431\u0430\u0442\u043b\u0435<\/s> \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0448\u0430\u0433\u043e\u0432(\u0446\u0438\u043a\u043b\u043e\u0432) \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 \u0431\u043b\u043e\u0447\u043d\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u043a\u043b\u044e\u0447 \u043d\u0430 &#8212; \u043e\u043c \u0440\u0430\u0443\u043d\u0434\u0435 (\u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u043e\u0437\u0436\u0435).<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u044e\u0442\u0441\u044f \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0434\u0430\u043d\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432.<\/p>\n<p><strong>\u0417\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u0435<\/strong><em>. \u0420\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430<\/em> \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0442\u0430\u043a \u0436\u0435, \u043a\u0430\u043a \u0438 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0441 \u0442\u0435\u043c \u043b\u0438\u0448\u044c \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c, \u0447\u0442\u043e&nbsp;\u043a\u043b\u044e\u0447\u0438&nbsp;\u0441\u043b\u0435\u0434\u0443\u044e\u0442 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435.<\/p>\n<p>\u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u044d\u0442\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<figure class=\"float full-width\"><figcaption><\/figcaption><\/figure>\n<h2>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 <\/h2>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0438\u0441\u044c \u0441 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u043c\u0438, \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043a\u043e\u043f\u043d\u0443\u0442\u044c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0433\u043b\u0443\u0431\u0436\u0435.<\/p>\n<p>RC6  <em>\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439<\/em> \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0447\u0430\u043b\u043e\u043c \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043f\u043e\u043d\u044f\u0442\u044c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 :<\/p>\n<p>\u0412\u0441\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u0438\u043c\u0435\u044e\u0442 \u0431\u0438\u0442\u043d\u044b\u0435 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/\u041c\u0430\u0448\u0438\u043d\u043d\u043e\u0435_\u0441\u043b\u043e\u0432\u043e\" rel=\"noopener noreferrer nofollow\">er nofollow&#187;>\u043c\u0430\u0448\u0438\u043d\u043d\u044b\u0435 \u0441\u043b\u043e\u0432\u0430<\/a> \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u0445\u043e\u0434\u0430 \u0438 \u0432\u044b\u0445\u043e\u0434\u0430. \u041a\u0430\u043a \u043c\u044b \u0443\u0436\u0435 \u0432\u044b\u044f\u0441\u043d\u0438\u043b\u0438, RC6 \u0431\u043b\u043e\u0447\u043d\u044b\u0439 \u0448\u0438\u0444\u0440. \u041f\u0440\u0438\u0447\u0435\u043c \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u0438 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0431\u043b\u043e\u043a \u0438\u043c\u0435\u044e\u0442 4 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A, B, C, D \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c \u043f\u043e \u0431\u0438\u0442. \u041e\u0431\u044b\u0447\u043d\u043e . \u0422\u043e\u0433\u0434\u0430 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u043b\u043e\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u0431\u0438\u0442.<\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c  \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0438\u043c \u0438\u0437 <em>\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432<\/em> \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c. \u0412\u044b\u043f\u0438\u0448\u0435\u043c \u0438\u0445 \u0432\u0441\u0435:<\/p>\n<ul>\n<li>\n<p>\u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u043b\u043e\u0432\u0430 \u0432 \u0431\u0438\u0442\u0430\u0445. \u041a\u0430\u0436\u0434\u043e\u0435 \u0441\u043b\u043e\u0432\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u043b\u043e\u0432 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445. \u0411\u043b\u043e\u043a\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0438 \u0448\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442\u0430 \u0438\u043c\u0435\u044e\u0442 \u0434\u043b\u0438\u043d\u0443 \u043f\u043e\u0431\u0438\u0442 (\u0442.\u043a. 4 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430).<\/p>\n<\/li>\n<li>\n<p>\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432. \u0422\u0430\u043a \u0436\u0435 \u0440\u0430\u0437\u043c\u0435\u0440 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043a\u043b\u044e\u0447\u0435\u0439\u0431\u0443\u0434\u0435\u0442 \u0438\u043c\u0435\u0442\u044c\u0441\u043b\u043e\u0432\u043e (\u043e\u0431 \u044d\u0442\u043e\u043c \u0434\u0430\u043b\u0435\u0435). \u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f .<\/p>\n<\/li>\n<li>\n<p>\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u0438\u0442 \u0432 \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u043e\u043c \u043a\u043b\u044e\u0447\u0435 .<\/p>\n<\/li>\n<li>\n<p> \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432  \u0431\u0430\u0439\u0442: .<\/p>\n<\/li>\n<\/ul>\n<p>\u0427\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u044f\u0441\u043d\u043e, \u043e \u043a\u0430\u043a\u043e\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 \u0438\u0434\u0435\u043c \u0440\u0435\u0447\u044c \u043f\u0440\u0438\u043d\u044f\u0442\u043e \u043f\u0438\u0441\u0430\u0442\u044c . <\/p>\n<h2>\u0421\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430<\/h2>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u0440\u0435\u0445 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u044d\u0442\u0430\u043f\u043e\u0432 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0434\u0432\u0435 \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b:<\/p>\n<h3>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442<\/h3>\n<p>\u0414\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e  \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u0434\u0432\u0435 \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u044b:<\/p>\n<p>\u0433\u0434\u0435 (\u044d\u043a\u0441\u043f\u043e\u043d\u0435\u043d\u0442\u0430),  (\u0437\u043e\u043b\u043e\u0442\u043e\u0435 \u0441\u0435\u0447\u0435\u043d\u0438\u0435). \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u043e\u043a\u0440\u0443\u0433\u043b\u0435\u043d\u0438\u044f \u0434\u043e \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0433\u043e \u043d\u0435\u0447\u0435\u0442\u043d\u043e\u0433\u043e \u0446\u0435\u043b\u043e\u0433\u043e.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0432\u0437\u044f\u0442\u044c , \u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0441\u044f \u0442\u0430\u043a\u0438\u0435:<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u044d\u0442\u0430\u043f\u044b. \u0418\u0445 \u0442\u0440\u0438:<\/p>\n<h3>1 \u044d\u0442\u0430\u043f. \u041a\u043e\u043d\u0432\u0435\u0440\u0442\u0430\u0446\u0438\u044f \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430<\/h3>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0438\u0437 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u0432 \u043c\u0430\u0441\u0441\u0438\u0432 , \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437  \u0441\u043b\u043e\u0432, \u0433\u0434\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u0430\u0439\u0442 \u0432 \u0441\u043b\u043e\u0432\u0435. \u0415\u0441\u043b\u0438 \u043d\u0435 \u043a\u0440\u0430\u0442\u0435\u043d , \u0442\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0443\u043b\u0435\u0432\u044b\u043c\u0438 \u0431\u0438\u0442\u0430\u043c\u0438 \u0434\u043e \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u0435\u0433\u043e \u043a\u0440\u0430\u0442\u043d\u043e\u0433\u043e:<\/p>\n<pre><code class=\"bash\"># \u0437\u0434\u0435\u0441\u044c x&lt;&lt;&lt;y - \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u0434\u0432\u0438\u0433\u0430   c = [max(b, 1) \/ u] for b - 1 downto 0 do \tL[i\/u] = (L[i\/u]&lt;&lt;&lt;8) + K[i]<\/code><\/pre>\n<h3>2 \u044d\u0442\u0430\u043f. \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043a\u043b\u044e\u0447\u0435\u0439<\/h3>\n<p>\u041c\u0430\u0441\u0441\u0438\u0432 \u043a\u043b\u044e\u0447\u0435\u0439  \u0442\u0430\u043a \u0436\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 <em>\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u043a\u043b\u044e\u0447\u0435\u0439.<\/em> \u041e\u043d\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0435\u0445 \u0441\u0430\u043c\u044b\u0445 \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b\u0438 \u0440\u0430\u043d\u0435\u0435: <\/p>\n<pre><code class=\"bash\">S[0] = P_w  for i = 1 to 2r + 3 do \tS[i] = S[i - 1] + Q_w<\/code><\/pre>\n<h3>3 \u044d\u0442\u0430\u043f. \u041f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u042d\u0442\u043e\u0442 \u0448\u0430\u0433 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0430\u0442\u044c \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043c \u0434\u0430\u043b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c:<\/p>\n<pre><code class=\"bash\"># \u0412\u0445\u043e\u0434: \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u043a\u043b\u044e\u0447 \u0434\u043b\u0438\u043d\u043d\u043e\u0439 b \u0431\u0430\u0439\u0442, \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432 #\t\t\t \tL[0,...,c-1] #\t\t\t\t\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432 r  # \u0412\u044b\u0445\u043e\u0434: w-\u0431\u0438\u0442\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043a\u043b\u044e\u0447\u0435\u0439 S[0,...,2r+3]    A = B = i = j = 0  v = 3 * max(c, 2r + 4) for s = 1 to v do { \tA = S[i] = (S[i] + A + B)&lt;&lt;&lt;3   B = L[j] = (L[j] + A + B)&lt;&lt;&lt;(A + B)   i = (i + 1)mod(2r + 4)   j = (j + 1)mod(c) }<\/code><\/pre>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u0441\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u0430 \u0438 \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043a\u043e\u0440\u0435\u0435 \u0443\u0437\u043d\u0430\u0442\u044c, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u0430\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c RC6. \u041d\u043e \u043c\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0441\u043f\u0435\u0448\u0438\u0442\u044c \u0438 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043f\u0440\u043e\u0449\u0435 \u043f\u043e\u043d\u044f\u0442\u044c \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u044e \u0432\u0435\u0440\u0441\u0438\u044e RC5. \u0410 \u0442\u0430\u043a \u0436\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0448\u0430\u0433\u0438 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u0430 \u0420\u0438\u0432\u0435\u0441\u0442\u0430 \u043a \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c\u0443 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0443 \u0448\u0438\u0444\u0440\u0430 RC6:<\/p>\n<h2>\u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e RC5<\/h2>\n<p>RC5 \u0431\u043b\u043e\u0447\u043d\u044b\u0439 \u0448\u0438\u0444\u0440, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0439 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u043e\u043c \u0420\u0438\u0432\u0435\u0441\u0442\u043e\u043c \u0432 1994 \u0433\u043e\u0434\u0443. \u041e\u0434\u043d\u043e \u0438\u0437 \u043e\u0442\u043b\u0438\u0447\u0438\u0439 \u043e\u0442 RC6 \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u043e\u043d \u0438\u043c\u0435\u0435\u0442 \u0434\u0432\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043d\u0430 \u0432\u0445\u043e\u0434\u0435 \u0438 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0432\u043c\u0435\u0441\u0442\u043e \u0447\u0435\u0442\u044b\u0440\u0435\u0445. \u0412\u0442\u043e\u0440\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439. <\/p>\n<p>\u0420\u043e\u043d\u0430\u043b\u044c\u0434 \u0420\u0438\u0432\u0435\u0441\u0442 \u043f\u0438\u0441\u0430\u043b, \u0447\u0442\u043e \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u0448\u0438\u0444\u0440\u0430 \u043e\u043d \u043f\u0440\u0438\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u043b\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b:<\/p>\n<ul>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c <em>\u0431\u043b\u043e\u0447\u043d\u044b\u043c \u0448\u0438\u0444\u0440\u043e\u043c<\/em>. \u0422.\u0435. \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0438 \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0431\u043e\u0439 \u0431\u0438\u0442\u043e\u0432\u044b\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 (\u0431\u043b\u043e\u043a\u0438) \u0438 \u0441\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0442\u0430\u043a \u0438 \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438. <\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u043a \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u043c \u0441 \u0440\u0430\u0437\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u0441\u0442\u0430\u043d\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b 64-\u0431\u0438\u0442\u043d\u044b\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u044b, RC5 \u0441\u043c\u043e\u0436\u0435\u0442 \u043d\u0430 \u043d\u0438\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u044b\u043c. \u0422.\u0435. \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f\u043c\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0441 \u0446\u0435\u043b\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432. \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0433 \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u043c\u0435\u0436\u0434\u0443 \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0438 \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e. <\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043a\u043b\u044e\u0447 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b. \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0433 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438.<\/p>\n<\/li>\n<li>\n<p>RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0438\u043c\u0435\u0442\u044c \u043d\u0435\u0432\u044b\u0441\u043e\u043a\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043f\u0430\u043c\u044f\u0442\u0438. <\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435, \u043d\u043e \u043d\u0435\u043c\u0430\u043b\u043e\u0432\u0430\u0436\u043d\u043e\u0435 RC5 \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0442\u044c \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a\u043b\u044e\u0447\u0430 \u0443 RC5 \u0442\u043e\u0447\u043d\u043e \u0442\u0430\u043a\u043e\u0439 \u0436\u0435, \u043a\u0430\u043a \u0438 \u0443 RC6. \u0410 \u0432\u043e\u0442 \u0441\u0430\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438 \u043f\u0440\u043e\u0449\u0435. C\u0445\u0435\u043c\u0430 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f RC5:<\/p>\n<figure class=\"float full-width\"><figcaption><\/figcaption><\/figure>\n<\/p>\n<p>\u0410 \u043f\u0441\u0435\u0432\u0434\u043e \u043a\u043e\u0434 \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043f\u044f\u0442\u0438 \u0441\u0442\u0440\u043e\u0447\u0435\u043a:<\/p>\n<pre><code class=\"bash\">A = A + S[0] B = B + S[1] for i = 1 to r do    A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   B = ((B xor A)&lt;&lt;&lt;A) + S[2i + 1]<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0437\u0430 <em>\u043e\u0434\u0438\u043d<\/em> \u0440\u0430\u0443\u043d\u0434 \u0432 RC5 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f <em>\u043e\u0431\u0435<\/em> \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435. <\/p>\n<h2>\u041f\u0443\u0442\u044c \u043e\u0442 RC5 \u043a RC6<\/h2>\n<p>\u0412\u043e\u0437\u044c\u043c\u0435\u043c \u043e\u0442 RC5 \u0432\u0441\u0435 \u0441\u0430\u043c\u043e\u0435 \u043b\u0443\u0447\u0448\u0435\u0435:<\/p>\n<ul>\n<li>\n<p>\u041f\u0440\u043e\u0441\u0442\u043e\u0442\u0443<\/p>\n<\/li>\n<li>\n<p>\u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c<\/p>\n<\/li>\n<li>\n<p>\u0425\u043e\u0440\u043e\u0448\u0443\u044e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c <\/p>\n<\/li>\n<\/ul>\n<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0448\u0430\u0433\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0432\u0435\u043b\u0438 \u0420\u043e\u043d\u0430\u043b\u044c\u0434\u0430 \u0420\u0438\u0432\u0435\u0441\u0442\u0430 \u043a \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c\u0443 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0443 RC6.<\/p>\n<\/p>\n<p>\u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u0431\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u0443-\u0440\u0430\u0443\u043d\u0434\u043e\u0432\u043e\u0433\u043e(\u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e) \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 RC5:<\/p>\n<pre><code class=\"bash\">for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   (A, B) = (B, A) }<\/code><\/pre>\n<p>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u0434\u0432\u0435 \u043a\u043e\u043f\u0438\u0438 RC5. \u041f\u0435\u0440\u0432\u0443\u044e \u043d\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0445 A \u0438 B, \u0430 \u0434\u0440\u0443\u0433\u0443\u044e \u043d\u0430 C \u0438 D:<\/p>\n<pre><code class=\"bash\">for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   C = ((C xor D)&lt;&lt;&lt;D) + S[2i + 1]   (A, B) = (B, A)   (C, D) = (D, C) }<\/code><\/pre>\n<p>\u0412\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043c\u0435\u043d\u044f\u0442\u044c \u043c\u0435\u0441\u0442\u0430\u043c\u0438 A \u043d\u0430 B \u0438 C \u043d\u0430 D, \u043f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b  (A, B, C, D) = (B, C, D, A). \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u043b\u043e\u043a\u0435 AB \u043f\u0435\u0440\u0435\u0448\u0430\u044e\u0442\u0441\u044f \u0441 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u043c\u0438 \u043d\u0430 \u0431\u043b\u043e\u043a\u0435 CD:<\/p>\n<pre><code class=\"bash\">for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;B) + S[2i]   C = ((C xor D)&lt;&lt;&lt;D) + S[2i + 1]   (A, B, C, D) = (B, A, D, C) }<\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0435\u0449\u0435 \u0440\u0430\u0437 \u0441\u043c\u0435\u0448\u0430\u0435\u043c AB \u0438 CD \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0432\u0438\u0432 \u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0434\u0432\u0438\u0433\u0438:<\/p>\n<pre><code>for i = 1 to r do  {   A = ((A xor B)&lt;&lt;&lt;D) + S[2i]   C = ((C xor D)&lt;&lt;&lt;B) + S[2i + 1]   (A, B, C, D) = (B, A, D, C) }<\/code><\/pre>\n<p>\u0412\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0441\u0434\u0432\u0438\u0433\u043e\u0432 B \u0438 D, \u043a\u0430\u043a \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u0432\u044b\u0448\u0435, \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u044d\u0442\u0438\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432. \u041f\u0440\u043e\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u0430 \u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u0434\u0432\u0438\u0433\u0430 \u0437\u0430\u0432\u0438\u0441\u0435\u043b\u0430 \u043e\u0442 \u0431\u0438\u0442\u043e\u0432 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430.<\/p>\n<p>\u0427\u0430\u0441\u0442\u043d\u044b\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f , \u0437\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0441\u0434\u0432\u0438\u0433 \u0432\u043b\u0435\u0432\u043e \u043d\u0430 \u043f\u044f\u0442\u044c \u0431\u0438\u0442\u043e\u0432\u044b\u0445 \u043f\u043e\u0437\u0438\u0446\u0438\u0439:<\/p>\n<pre><code>for i = 1 to r do { \tt = (B * (2B + 1))&lt;&lt;&lt;5   u = (D * (2D + 1))&lt;&lt;&lt;5   A = ((A xor t)&lt;&lt;&lt;u) + S[2i]   C = ((C xor u)&lt;&lt;&lt;t) + S[2i + 1]   (A, B, C, D) = (B, C, D, A) }<\/code><\/pre>\n<p>\u0418 \u043d\u0430 \u0434\u0435\u0441\u0435\u0440\u0442 \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u043d\u0430 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u043c \u0448\u0430\u0433\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0440\u0430\u0443\u043d\u0434\u0430 \u0438 \u0437\u0430\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u0448\u0430\u0433\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u0430\u0443\u043d\u0434\u0430 \u043e\u0442\u043b\u0438\u0447\u0430\u043b\u0438\u0441\u044c \u043e\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u0432\u0441\u0435\u0445 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0443\u043d\u0434\u043e\u0432(\u0442\u0430\u043a\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f, \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f pre- \u0438 post-whitening):<\/p>\n<pre><code>B = B + S[0] D = D + S[1] for i = 1 to r do { \tt = (B * (2B + 1))&lt;&lt;&lt;5   u = (D * (2D + 1))&lt;&lt;&lt;5   A = ((A xor t)&lt;&lt;&lt;u) + S[2i]   C = ((C xor u)&lt;&lt;&lt;t) + S[2i + 1]   (A, B, C, D) = (B, C, D, A) } A = A + S[2r + 2] C = C + S[2r + 3]<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043c\u044b \u0442\u0443\u0442 \u0432\u0441\u0435 \u0437\u0430\u043c\u0438\u043a\u0441\u043e\u0432\u0430\u043b\u0438, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0435\u0449\u0435 \u0440\u0430\u0437 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0438\u043c\u0435\u0435\u043c:<\/p>\n<h2>\u0428\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h2>\n<p>\u0415\u0449\u0435 \u0440\u0430\u0437 \u043d\u0430\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e RC6 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0447\u0435\u0442\u044b\u0440\u044c\u043c\u044f \u0431\u0438\u0442\u043d\u044b\u043c\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043c\u0438 A, B, C, D. \u041e\u043d\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0448\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442. \u041f\u0440\u0438\u0447\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u0431\u0430\u0439\u0442 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0438\u043b\u0438 \u0448\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442\u0430 \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 A, \u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0431\u0430\u0439\u0442 \u0432 \u0441\u0430\u043c\u044b\u0439 \u0441\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 D. \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u0434: <\/p>\n<pre><code class=\"bash\"># \u0412\u0445\u043e\u0434: \u041e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u0432 4-\u0445 w-\u0431\u0438\u0442\u043d\u044b\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0445 A, B, C, D #\t\t\t\t\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0443\u043d\u0434\u043e\u0432 r #\t\t\t\tw-\u0431\u0438\u0442\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043a\u043b\u044e\u0447\u0435\u0439 S[0,...,2r+3]  # \u0412\u044b\u0445\u043e\u0434: \u0428\u0438\u0444\u0440\u043e\u0442\u0435\u043a\u0441\u0442, \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u0439\u0441\u044f \u0432 A, B, C, D  B = B + S[0] D = D + S[1] for i = 1 to r do { \tt = (B * (2B + 1))&lt;&lt;&lt;lg(w)   u = (D * (2D + 1))&lt;&lt;&lt;lg(w)   A = ((A xor t)&lt;&lt;&lt;u) + S[2i]   C = ((C xor u)&lt;&lt;&lt;t) + S[2i + 1]   (A, B, C, D) = (B, C, D, A) } A = A + S[2r + 2] C = C + S[2r + 3]  # (A, B, C, D) = (B, C, D, A) \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u0438\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439.<\/code><\/pre>\n<p>\u0421\u0445\u0435\u043c\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0430\u0443\u043d\u0434\u0430 \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 RC6 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<figure class=\"bordered full-width\"><figcaption><\/figcaption><\/figure>\n<h2>\u0414\u0435\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h2>\n<p>\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0442\u044b<\/p>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-315259","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/315259","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=315259"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/315259\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=315259"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=315259"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=315259"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}