From: Paul Wolneykien <manowar@altlinux.org> To: oss-gost-crypto@lists.altlinux.org Subject: Re: [oss-gost-crypto] Расшифровка S/MIME Date: Fri, 13 Sep 2019 13:30:14 +0300 Message-ID: <adb8dc51-17aa-7953-d83a-700439bfc3d9@altlinux.org> (raw) In-Reply-To: <CALT56yMCNyyyjHULKYoOmYU1kLEuhkYvDpqrzJ6DDPdy1fHLbg@mail.gmail.com> 13.09.2019 13:13, Dmitry Eremin-Solenikov пишет: > пт, 13 сент. 2019 г. в 12:45, Paul Wolneykien <manowar@altlinux.org>: >> 13.09.2019 00:53, Dmitry Eremin-Solenikov пишет: >>> >>> Да, у меня не был дописан CryptoPro meshing для gost. Если нужен, давай обсудим >>> интерфейс и я его протолкну Вернеру. >> >> Может быть ты и gpgsm заодно протолкнёшь? :-) > > Если он будет нормально сделан, почему бы и нет. Я в свое время > засыпался на том, > что не удавалось нормально доделать libksba. На github.com/GostCrypt > должны и патчики > лежать для gpgsm с libksba. Наверное, я их уже использую. >> Интерфейс, я думаю, такой же как для установки S-box: >> >> gcry_cipher_ctl (hd, GCRYCTL_SET_KEYMESHING, buf, len) > > Да, это логично. Но в этот момент все становится весело. > Потому что hd — это gost28147 + cfb. И мешинг должен идти в cfb. Я посмотрел сейчас в gost_cipher_do_cfb() из openssl-gost-engine. Там gost_crypt_mesh() — это обёртка над gostcrypt(), функцией шифрования буфера, которая делает meshing когда надо (а когда не надо — не делает). На первый взгляд кажется, что если добавить счётчик в GOST28147_context и накручивать его в gost_encrypt_block(), то наверх в _gcry_cipher_cfb_encrypt() можно ничего не выносить. > У меня альтернативное предложение: сделать GCRY_CIPHER_MODE_CFB_MESH. > Вопрос, уложится ли это у тебя в gpgsm? Должно уложиться, если поправить > oids_gost28147 в cipher/gost28147.c. Можно и так. Но что от этого изменится во взаимоотношении между cipher/cipher-cfb.c (общей частью Libgcrypt) и нашей частью cipher/gost28147.c ? Что нам здесь даёт отдельный GCRY_CIPHER_MODE_CFB_MESH ? Вероятно, он даёт отдельный gcry_cipher_spec_t со своими функциями encrypt и decrypt. Но, как я написал выше, кажется можно использовать обёртки над теми gost_encrypt_block() и gost_decrypt_block(), которые определены сейчас в спеке _gcry_cipher_spec_gost28147. > > Отдельный вопрос: тебе IMIT и CNT нужны или нет? IMIT да. Я же CMAC считаю при передаче ключей. >> допустим. В OpenSSL тоже через gost_cipher_ctl() сделано, с аналогичным >> интерфейсом. В качестве аргумента *buf тоже, наверное, какая-то >> константа, вроде ..._CRYPTOPRO_KEYMESHING. Не знаю только, куда её в >> Libgcrypt засунуть: в enum или в define и в какой раздел? > > Учитывая, что 28147 медленно, но верно должен начать уходить, я бы не особо > морочился на эту тему. Это бы имело смысл, если бы были еще keymeshing. > Но их пока нет. А ACPKM проще тоже отдельной модой вводить. Тут ещё вопрос, кстати, а нужен ли нам вообще GCRY_CIPHER_MODE_CFB без _MESH ? И для чего тогда OIDs править? В том, что прилетает в CMS, значится просто "1.2.643.2.2.21". Следовательно, key meshing должен быть включен по умолчанию.
next prev parent reply other threads:[~2019-09-13 10:30 UTC|newest] Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-09-12 21:05 Paul Wolneykien 2019-09-12 21:53 ` Dmitry Eremin-Solenikov 2019-09-13 9:45 ` Paul Wolneykien 2019-09-13 10:13 ` Dmitry Eremin-Solenikov 2019-09-13 10:30 ` Paul Wolneykien [this message] 2019-09-13 11:30 ` Dmitry Eremin-Solenikov 2019-09-13 11:38 ` Paul Wolneykien 2019-09-13 11:55 ` Dmitry Eremin-Solenikov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=adb8dc51-17aa-7953-d83a-700439bfc3d9@altlinux.org \ --to=manowar@altlinux.org \ --cc=oss-gost-crypto@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Open-source aspects of GOST Cryptography This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/oss-gost-crypto/0 oss-gost-crypto/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 oss-gost-crypto oss-gost-crypto/ http://lore.altlinux.org/oss-gost-crypto \ oss-gost-crypto@lists.altlinux.org oss-gost-crypto@lists.altlinux.ru oss-gost-crypto@lists.altlinux.com public-inbox-index oss-gost-crypto Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.oss-gost-crypto AGPL code for this site: git clone https://public-inbox.org/public-inbox.git