From b4e7d8cc9685591c2d2740759ee14ea5fcf6232c Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Sun, 11 Sep 2016 17:09:14 +0300 Subject: [PATCH] =?utf8?q?=D0=A0=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=B0=D1=86?= =?utf8?q?=D0=B8=D1=8F=20Balloon=20=D1=85=D1=8D=D1=88=D0=B8=D1=80=D0=BE?= =?utf8?q?=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=B8=20GoVPN=206.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Argon2 библиотеки написанные на Go в не очень хорошем состоянии. У одних старая (не Argon 1.3) реализация, у других только Argon2d режим, но не Argon2i. GoVPN всё время использовал Argon2d, а должен был Argon2i. Argon2i имеет потенциальные криптографические недостатки. И его реализация с нуля не самое простое дело. Решил поэтому реализовать Balloon хэширование и заменить им Argon2 в GoVPN. Balloon нравится тем что очень простой: его можно взять и реализовать, не шибко намного сложнее чем PBKDF2 какой-нибудь: https://git.cypherpunks.ru/cgit.cgi/balloon.git/ Из-за Go в нём легко релизовать параллельную обработку чтобы можно было усложнить задачу для многоядерных систем. Соответственно GoVPN теперь переходит на эту библиотеку и выпущен major (потому-что обратная несовместимость) релиз. -- 2.48.1